<SEC-DOCUMENT>0001580905-23-000013.txt : 20230222
<SEC-HEADER>0001580905-23-000013.hdr.sgml : 20230222
<ACCEPTANCE-DATETIME>20230222161110
ACCESSION NUMBER:		0001580905-23-000013
CONFORMED SUBMISSION TYPE:	10-K
PUBLIC DOCUMENT COUNT:		124
CONFORMED PERIOD OF REPORT:	20221231
FILED AS OF DATE:		20230222
DATE AS OF CHANGE:		20230222

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			Installed Building Products, Inc.
		CENTRAL INDEX KEY:			0001580905
		STANDARD INDUSTRIAL CLASSIFICATION:	GEN BUILDING CONTRACTORS - RESIDENTIAL BUILDINGS [1520]
		IRS NUMBER:				453707650
		STATE OF INCORPORATION:			DE
		FISCAL YEAR END:			1231

	FILING VALUES:
		FORM TYPE:		10-K
		SEC ACT:		1934 Act
		SEC FILE NUMBER:	001-36307
		FILM NUMBER:		23653209

	BUSINESS ADDRESS:	
		STREET 1:		495 SOUTH HIGH STREET, SUITE 50
		CITY:			COLUMBUS
		STATE:			OH
		ZIP:			43215
		BUSINESS PHONE:		614-221-3399

	MAIL ADDRESS:	
		STREET 1:		495 SOUTH HIGH STREET, SUITE 50
		CITY:			COLUMBUS
		STATE:			OH
		ZIP:			43215
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-K
<SEQUENCE>1
<FILENAME>ibp-20221231.htm
<DESCRIPTION>10-K
<TEXT>
<XBRL>
<?xml version="1.0" ?><!--XBRL Document Created with Wdesk from Workiva--><!--Copyright 2023 Workiva--><!--r:a3e4206c-1cfd-4e6c-927f-ccbea40704ec,g:8e7b03d8-eedd-4de2-8abd-33b4866ed975,d:faaa61522ada4ef2b3459f1c02fd7df4--><html xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:ibp="http://installedbuildingproducts.com/20221231" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:dei="http://xbrl.sec.gov/dei/2022" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns="http://www.w3.org/1999/xhtml" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2020-02-12" xmlns:us-gaap="http://fasb.org/us-gaap/2022" xmlns:srt="http://fasb.org/srt/2022" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xbrli="http://www.xbrl.org/2003/instance" xml:lang="en-US"><head><meta http-equiv="Content-Type" content="text/html"/>


<title>ibp-20221231</title></head><body><div style="display:none"><ix:header><ix:hidden><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:AmendmentFlag" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF80L2ZyYWc6MTVlNWY1OTc3YmUyNGM5NDlmYWUxYzBiZThiOTM4ZTUvdGFibGU6MDc4NjNhZDY2ZTc5NGU3Nzg4NTZjZjRjNGE0MjJmMzMvdGFibGVyYW5nZTowNzg2M2FkNjZlNzk0ZTc3ODg1NmNmNGM0YTQyMmYzM18zLTEtMS0xLTEwMDAwMg_00d0b8b3-5b28-40e2-a0d3-c005ebb4a763">false</ix:nonNumeric><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:DocumentFiscalYearFocus" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF80L2ZyYWc6MTVlNWY1OTc3YmUyNGM5NDlmYWUxYzBiZThiOTM4ZTUvdGFibGU6MDc4NjNhZDY2ZTc5NGU3Nzg4NTZjZjRjNGE0MjJmMzMvdGFibGVyYW5nZTowNzg2M2FkNjZlNzk0ZTc3ODg1NmNmNGM0YTQyMmYzM181LTEtMS0xLTEwMDAwMg_91b5727a-2cce-4061-98a0-ee5b6fbc0f05">2022</ix:nonNumeric><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:DocumentFiscalPeriodFocus" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF80L2ZyYWc6MTVlNWY1OTc3YmUyNGM5NDlmYWUxYzBiZThiOTM4ZTUvdGFibGU6MDc4NjNhZDY2ZTc5NGU3Nzg4NTZjZjRjNGE0MjJmMzMvdGFibGVyYW5nZTowNzg2M2FkNjZlNzk0ZTc3ODg1NmNmNGM0YTQyMmYzM182LTEtMS0xLTEwMDAwMg_f1e89636-76b3-4785-9270-378a4d3871b1">FY</ix:nonNumeric><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:EntityCentralIndexKey" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF80L2ZyYWc6MTVlNWY1OTc3YmUyNGM5NDlmYWUxYzBiZThiOTM4ZTUvdGFibGU6MDc4NjNhZDY2ZTc5NGU3Nzg4NTZjZjRjNGE0MjJmMzMvdGFibGVyYW5nZTowNzg2M2FkNjZlNzk0ZTc3ODg1NmNmNGM0YTQyMmYzM183LTEtMS0xLTEwMDAwMg_f2fd6a7d-8da9-49aa-a452-e14558eb758a">0001580905</ix:nonNumeric><ix:nonNumeric contextRef="i2fc2877a408d43b0b604eda0b0ad28bf_D20220101-20221231" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTE2NTc_a977f052-cdfa-4287-b1c2-2c13ccbb2ec3">P3Y</ix:nonNumeric><ix:nonNumeric contextRef="i3d1fba4dcc5e403ab2591ae7b2073a49_D20220101-20221231" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTM1NTU_ef0ebe6a-c7b3-48eb-8f8b-5ddf39ff0efb">P8Y</ix:nonNumeric><ix:nonNumeric contextRef="i269869eef2b246658f7bc8df10e6a3a4_D20220101-20221231" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTM2MTQ_9876c3d1-52c9-4958-8348-18d296904de3">P1Y</ix:nonNumeric><ix:nonNumeric contextRef="i97e5361244a64090b001e8dfb2321e45_D20220101-20221231" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTM2NjU_f0c11354-8793-4523-b059-4ab1963f4cfb">P2Y</ix:nonNumeric><ix:nonNumeric contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" name="us-gaap:FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzUtMi0xLTEtMTAwMDAy_3f08309b-5457-499e-ae82-f8cdea3899fd">http://fasb.org/us-gaap/2022#PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization</ix:nonNumeric><ix:nonNumeric contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" name="us-gaap:FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzUtMi0xLTEtMTAwMDAy_b356578e-0cdd-4b5a-928c-9d4814d3c5ab">http://fasb.org/us-gaap/2022#PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization</ix:nonNumeric><ix:nonNumeric contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" name="us-gaap:DerivativeAssetStatementOfFinancialPositionExtensibleEnumeration" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzUtMC0xLTEtMTAwMDAy_2f118e6b-355c-4162-8970-b998a5ae5450">http://fasb.org/us-gaap/2022#OtherAssetsNoncurrent</ix:nonNumeric><ix:nonNumeric contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" name="us-gaap:DerivativeAssetStatementOfFinancialPositionExtensibleEnumeration" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzUtMC0xLTEtMTAwMDAy_70c840c6-6a79-4f97-a58a-b08f6f1bdbef">http://fasb.org/us-gaap/2022#OtherAssetsNoncurrent</ix:nonNumeric><ix:nonNumeric contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" name="us-gaap:DerivativeLiabilityStatementOfFinancialPositionExtensibleEnumeration" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzktMC0xLTEtMTAwMDAy_18ae74f0-19f1-4416-a30d-86ea73bdfe06">http://fasb.org/us-gaap/2022#OtherLiabilitiesCurrent</ix:nonNumeric><ix:nonNumeric contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" name="us-gaap:DerivativeLiabilityStatementOfFinancialPositionExtensibleEnumeration" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzktMC0xLTEtMTAwMDAy_c8d93f89-6621-4092-8404-217ee2466660">http://fasb.org/us-gaap/2022#OtherLiabilitiesCurrent</ix:nonNumeric><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:FairValueRecurringBasisUnobservableInputReconciliationLiabilityGainLossStatementOfIncomeExtensibleList" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90ZXh0cmVnaW9uOjcyYjQzMjQzZGRkOTQzNjM5MmNkZjNkYWE4NmRiMDQxXzE2NDkyNjc0NTIzMDk_23ad3ebf-7c72-49be-a046-37d9cc2eb568">http://fasb.org/us-gaap/2022#BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1</ix:nonNumeric><ix:nonNumeric contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" name="us-gaap:FairValueRecurringBasisUnobservableInputReconciliationLiabilityGainLossStatementOfIncomeExtensibleList" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90ZXh0cmVnaW9uOjcyYjQzMjQzZGRkOTQzNjM5MmNkZjNkYWE4NmRiMDQxXzE2NDkyNjc0NTIzMDk_639b19f3-3770-44c4-883d-81cef8dd0039">http://fasb.org/us-gaap/2022#BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1</ix:nonNumeric><ix:nonNumeric contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" name="us-gaap:OciCashFlowHedgeReclassificationForDiscontinuanceStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDUx_3580f4e1-9b51-444e-9a35-60d80703421b">http://fasb.org/us-gaap/2022#InterestExpense</ix:nonNumeric><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:OciCashFlowHedgeReclassificationForDiscontinuanceStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDUx_b0d386bd-7d5d-4b4d-b157-231830ca5700">http://fasb.org/us-gaap/2022#InterestExpense</ix:nonNumeric><ix:nonNumeric contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" name="us-gaap:OciCashFlowHedgeReclassificationForDiscontinuanceStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDUx_f2565731-dcbc-4849-afbc-408fac97be5e">http://fasb.org/us-gaap/2022#InterestExpense</ix:nonNumeric><ix:nonFraction unitRef="shares" contextRef="iae21facea61a423ca07b8cb5fe20ed53_D20220101-20221231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjQvZnJhZzowMDZlNTNjMmZhOTQ0YzhmODEzNjRjZjQ2ZGRjYTRlZS90ZXh0cmVnaW9uOjAwNmU1M2MyZmE5NDRjOGY4MTM2NGNmNDZkZGNhNGVlXzU2_bdadb99d-74e5-497b-801f-47d291af7fc2">7000</ix:nonFraction><ix:nonFraction unitRef="number" contextRef="i767a26947aae42d3a84a17877e69d97a_D20220101-20221231" decimals="4" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjQvZnJhZzowMDZlNTNjMmZhOTQ0YzhmODEzNjRjZjQ2ZGRjYTRlZS90ZXh0cmVnaW9uOjAwNmU1M2MyZmE5NDRjOGY4MTM2NGNmNDZkZGNhNGVlXzE1Ng_4bc6fce9-e0b7-4d6b-ba2b-95cdd686ef49">33.33</ix:nonFraction><ix:nonFraction unitRef="number" contextRef="i9c21c6f57bad4d83b34ec31f123eb288_D20220101-20221231" decimals="4" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjQvZnJhZzowMDZlNTNjMmZhOTQ0YzhmODEzNjRjZjQ2ZGRjYTRlZS90ZXh0cmVnaW9uOjAwNmU1M2MyZmE5NDRjOGY4MTM2NGNmNDZkZGNhNGVlXzE1Ng_ca5af2bc-2ec4-429b-811a-4f723fd59b95">33.33</ix:nonFraction><ix:nonFraction unitRef="number" contextRef="i96806cead05c4c1889c943be9ba62ad6_D20220101-20221231" decimals="4" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjQvZnJhZzowMDZlNTNjMmZhOTQ0YzhmODEzNjRjZjQ2ZGRjYTRlZS90ZXh0cmVnaW9uOjAwNmU1M2MyZmE5NDRjOGY4MTM2NGNmNDZkZGNhNGVlXzE1Ng_d01c4cec-e7c4-48e4-aeb7-5c9ee0980c64">33.33</ix:nonFraction><ix:nonFraction unitRef="number" contextRef="i6ad62bc7e19c4730a8d4b536ad2b8723_D20220101-20221231" decimals="4" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjQvZnJhZzowMDZlNTNjMmZhOTQ0YzhmODEzNjRjZjQ2ZGRjYTRlZS90ZXh0cmVnaW9uOjAwNmU1M2MyZmE5NDRjOGY4MTM2NGNmNDZkZGNhNGVlXzM2Nw_8b2c4f70-98c0-4345-a10f-462974a275f9">50</ix:nonFraction><ix:nonFraction unitRef="number" contextRef="i6f3fbcfa9cd94da4b243e391387ab369_D20220101-20221231" decimals="4" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjQvZnJhZzowMDZlNTNjMmZhOTQ0YzhmODEzNjRjZjQ2ZGRjYTRlZS90ZXh0cmVnaW9uOjAwNmU1M2MyZmE5NDRjOGY4MTM2NGNmNDZkZGNhNGVlXzM2Nw_cdf9b01d-8f5f-4378-ab30-a0860777eff0">50</ix:nonFraction><ix:nonFraction unitRef="shares" contextRef="i609df2d8a2f9497db040a73897c11531_D20220101-20221231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjQvZnJhZzowMDZlNTNjMmZhOTQ0YzhmODEzNjRjZjQ2ZGRjYTRlZS90ZXh0cmVnaW9uOjAwNmU1M2MyZmE5NDRjOGY4MTM2NGNmNDZkZGNhNGVlXzE2NDkyNjc0NDI0MjI_3d554a67-d4be-4e1c-bfa7-f3f603c26908">39000</ix:nonFraction><ix:nonFraction unitRef="shares" contextRef="ib99cdb720a78462288090d3e4f2f3fdf_D20210101-20211231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjQvZnJhZzowMDZlNTNjMmZhOTQ0YzhmODEzNjRjZjQ2ZGRjYTRlZS90ZXh0cmVnaW9uOjAwNmU1M2MyZmE5NDRjOGY4MTM2NGNmNDZkZGNhNGVlXzQ5OA_7310b8ef-e68b-4de7-a0bb-49cd5a2ae971">5000</ix:nonFraction><ix:nonFraction unitRef="shares" contextRef="i9efde658f2894b0eb085151d7f9a1867_D20200101-20201231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjQvZnJhZzowMDZlNTNjMmZhOTQ0YzhmODEzNjRjZjQ2ZGRjYTRlZS90ZXh0cmVnaW9uOjAwNmU1M2MyZmE5NDRjOGY4MTM2NGNmNDZkZGNhNGVlXzUwNA_20ed9430-77e1-4d21-912a-1ae9654466c8">7000</ix:nonFraction><ix:nonFraction unitRef="shares" contextRef="i7fd8869fa57b44ef89607df7096ea515_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjQvZnJhZzowMDZlNTNjMmZhOTQ0YzhmODEzNjRjZjQ2ZGRjYTRlZS90ZXh0cmVnaW9uOjAwNmU1M2MyZmE5NDRjOGY4MTM2NGNmNDZkZGNhNGVlXzE2NDkyNjc0NDI0Mzk_af868e12-0fc5-4e0e-a06b-b186dfc3d7de">17000</ix:nonFraction><ix:nonFraction unitRef="shares" contextRef="i4a03692444e142a0ba3374540a9914ce_D20210101-20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjQvZnJhZzowMDZlNTNjMmZhOTQ0YzhmODEzNjRjZjQ2ZGRjYTRlZS90ZXh0cmVnaW9uOjAwNmU1M2MyZmE5NDRjOGY4MTM2NGNmNDZkZGNhNGVlXzY1Nw_15986b16-e70f-490a-b8d8-34f94198cfad">8000</ix:nonFraction><ix:nonFraction unitRef="shares" contextRef="ic814b05a7ffa4520acd88aea1d50ac8f_D20200101-20201231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjQvZnJhZzowMDZlNTNjMmZhOTQ0YzhmODEzNjRjZjQ2ZGRjYTRlZS90ZXh0cmVnaW9uOjAwNmU1M2MyZmE5NDRjOGY4MTM2NGNmNDZkZGNhNGVlXzY2Mw_334d8a96-432c-4b97-965c-e1276114e5ad">14000</ix:nonFraction><ix:nonFraction unitRef="shares" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNDUvZnJhZzozZmM2Zjg5MGI0Y2M0ZDA0YjAxZWE2YmYyNjM5YjZmMy90ZXh0cmVnaW9uOjNmYzZmODkwYjRjYzRkMDRiMDFlYTZiZjI2MzliNmYzXzMz_c7e00001-96be-46c8-a208-221aa0cd6876">2000</ix:nonFraction></ix:hidden><ix:references xml:lang="en-US"><link:schemaRef xlink:type="simple" xlink:href="ibp-20221231.xsd"></link:schemaRef></ix:references><ix:resources><xbrli:context id="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="id9acdefd9f1a43fba69c41bb102d5560_I20220630"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2022-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="usd"><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unit><xbrli:context id="id2233e562f8d428397263474bb294e17_I20230215"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-02-15</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="shares"><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unit><xbrli:context id="ia4f683e648134f0da1371b6bd27ef351_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="id6e5cb30ac31451891723ddbe1f912e6_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i9aea8d337c2a4a158061feaff30010e0_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ibcda928914984dab908ead68148bca5e_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i2872a34b72cc428096e4c33cb0a3178f_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">ibp:IntangibleAssetsExcludingCustomerRelationshipsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic0d83bb8e2c1438bb57812b147ed1ed9_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">ibp:IntangibleAssetsExcludingCustomerRelationshipsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="usdPerShare"><xbrli:divide><xbrli:unitNumerator><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unitNumerator><xbrli:unitDenominator><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unitDenominator></xbrli:divide></xbrli:unit><xbrli:context id="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="icda2001dc0514113b0f97d8b8892f98e_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i7b992fbf285b4c508e644ecd8ace6054_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i9e6e275488144ae5aa9f04480329ba6e_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i060a31c733a24e318b6082e3ad2430c3_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i14b4ffb871e4403fb52831afe7cc8ee1_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iff4d4f6f690d4bce8ad0aafed6fdedd3_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ifaeaa8ace0d84dad85c82ae885b51ffc_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i958803dddf2c4619bdd48c5de25d23dd_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i4dbcfeb87c1740e4b4eb9f7c6741ec30_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i5f4eac237bf84dcbb0b113c245834860_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7fe08b3b47644acb83d3c2ab80777dc8_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i53839f2bf7bb48d5ae89fba9e9a5a697_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2f8775c2218e4ae5bc2f4a117bb88c76_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i4103608b5e134096893c20315b3e281b_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i872e33708c2141e89f9454313166eec2_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i825445c1c6e445188055b16a6a682a2b_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i707e16708e554448a4bb2c44e9f69b40_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iaba36a8be02c46d9bcf4b91147e9910d_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i61f3c1563a76427b8e6b9d432aa44d9a_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i132c5961f1cd4de1b11a825f82f2a62a_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i286eecc934a2497fbd8d1ec5b56d936f_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ibe9a3844ee4b41168f2d8f668b99a22a_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia178f6d7fa8c4ab7a1bd2e8fd0b05f84_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i8436bb8cb5154f6db94f80cd2c2dd32f_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7c971ca37f114e89bbfec6637ff4eec3_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i3ac93e97ac7648b1bb0460c9d9551edd_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ibc38b7b26e1547bf91f176fc1e65606d_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i48f9cc975cf6472593f2b9513fe3110e_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i14d567bc707548e88cc0cc3e66307316_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i0d45628d365d4f14a2de850269a85597_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia44b3bee1f934650ad552005b5f83f05_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i16676806e932479e97a656c76df77112_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0ddc26109e40483889e87ce66d92f8ec_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i3a6b9a20e4da4a9390822a15ead99b52_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i4f8822b909a74993b4e9610fa2d43554_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if0ab2703906c47e7a74df08dece46aa5_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="icf5f552de5ed49bd835bb72a19a828a4_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i07aff75a11ce4da89c613ba6c483bb6d_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i6c6f814c29be4e629a0656476f899878_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="location"><xbrli:measure>ibp:location</xbrli:measure></xbrli:unit><xbrli:unit id="segment"><xbrli:measure>ibp:segment</xbrli:measure></xbrli:unit><xbrli:context id="i04a97e90464f4f5e8db3563629410f38_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RevisionOfPriorPeriodReclassificationAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9bcccabeefe04ca69c63b738147b9793_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RevisionOfPriorPeriodReclassificationAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7030ce37fae04cf69695a4b0ca65329b_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i3a074bd43fbe424181ccfa73e65a0d18_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i916add5659e9483187a23c436172af58_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iac9bd348abd04098bc3566be7ec90b65_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i522dacc92fda49dca2761a231d5ffdf7_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i554c55111f144a58ad00025d79e13e9b_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i64d37377565942d7b62216f914464267_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:unit id="number"><xbrli:measure>xbrli:pure</xbrli:measure></xbrli:unit><xbrli:context id="ibb4eb8b80ae1409c879096369623731a_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i73dcc289e54247d5a9ee4500da7b929a_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="idcbfa766a726450d8033269af5072004_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i5119f1a3a77b4ab090de134cabf394ea_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="icd9e31da4b4f4f98bbdc2f789ded5c25_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0e330197b8cc466a87fd325ae1726f87_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:VehiclesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie678e6339f5846fb8e4681a3cc644073_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2fc2877a408d43b0b604eda0b0ad28bf_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i45802eccf5284f33b5a37c51a3ab3e77_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if32d292972dc421baf704f08cff66b78_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i3d1fba4dcc5e403ab2591ae7b2073a49_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie9cf8ce2ee8c464086e5b3058b55476c_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie4319ae880b543cbbcc6d05a87520cb6_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OrderOrProductionBacklogMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i8ab06223d33149249774cf08ad138b35_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OrderOrProductionBacklogMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i269869eef2b246658f7bc8df10e6a3a4_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ifbf801f2701b4b64a3a73f7d5f4ce37a_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i97e5361244a64090b001e8dfb2321e45_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i5ec1d9c191cb4a73b7803b756c514cbe_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic3ce87d770614921b8e95c96cbaef621_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:GuaranteedInsuranceContractTypeOfGuaranteeAxis">us-gaap:WorkersCompensationInsuranceMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia8f02ef2a4ed497f84af0c7912d9023c_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:GuaranteedInsuranceContractTypeOfGuaranteeAxis">ibp:GeneralLiabilityInsuranceProgramMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i32b91c3b49e24b33a71b7c34db3b11fa_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:GuaranteedInsuranceContractTypeOfGuaranteeAxis">ibp:VehiclesInsuranceMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="icc12c341ab264e4484bd54d854bbd417_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:SeniorSecuredCreditAgreementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="id889bbe23ec44abf91d92688cfe07f1d_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:SeniorSecuredCreditAgreementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i1342bf92766544b088ad18cf1e74bf7c_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:SeniorSecuredCreditAgreementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2a9e98edaba24b94abaf2f7ee50e6387_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:SeniorSecuredCreditAgreementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i38b7d0939c754d40b80be6633db7bbf4_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:ResidentialNewConstructionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iadb1e7802af343748059349466c2dffe_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:ResidentialNewConstructionMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie2e6621047f347e39d52e7402fb8d506_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:ResidentialNewConstructionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i16466f21bf074aa6bdb9dfd70ddd0297_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:ResidentialNewConstructionMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib6b83bc5b3a6460ab948f1bb1a8cbb8b_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:ResidentialNewConstructionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9b153aa63d404cfea815107eb5ac75e6_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:ResidentialNewConstructionMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iec7dfdafca094c3db95bd4bf49a07932_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:RepairAndRemodelMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i5daa27ede578476da641f9475dee3b87_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:RepairAndRemodelMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="id99f114512224c5a83108f9a2fe6363d_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:RepairAndRemodelMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i315c96619d474657ba97e7ee8029d62c_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:RepairAndRemodelMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i631438c6f7e14c21b55fb772328773fa_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:RepairAndRemodelMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ifc7d9bf487234961aa107f17881d18f9_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:RepairAndRemodelMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i42851b36db8a48a592a794c5761827cf_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:CommercialMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i26d5aef9667648568af196e8591e4691_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:CommercialMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ibc157f1ceb8c4ee3ab03127e0eaf33d1_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:CommercialMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i42d681ceeb5247058153ca9683ae758e_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:CommercialMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib6538b6b192c4428bd408a1ff5fdd0b0_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:CommercialMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="idf631fca7b484f4dad2d1d1eac09fe71_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:CommercialMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2dcec416818c48969db1a73c9648ef1f_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:CustomerInstallationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i8b010fa35ae74bc89d55a0084fd68f10_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:CustomerInstallationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iae38b25c26eb4db4b17c45442076a1b1_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:CustomerInstallationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i27b503aaebe24456ae400a653d2c4b49_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:CustomerInstallationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i811d106b47bb480db96b87daa9a67986_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:CustomerInstallationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iec5610518ace48b2ad4837afd8e5a92f_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:CustomerInstallationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2077ad7500b6435b9595c4f5c24e513c_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:OtherCustomerInstallationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i24d2df75193d4762b56086bf5022fe89_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:OtherCustomerInstallationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0685147c358f4206bdec20c4809180fa_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:OtherCustomerInstallationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic887923852d94537a7a1c20e3622dda4_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:OtherCustomerInstallationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i540141988e7242719e133d5431fc5bb5_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:OtherCustomerInstallationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i89ee79f637414a849b44e06dfbe18717_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:OtherCustomerInstallationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i19c676a390874ae4a24140482758dc15_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i5e211949b1a84d18bc32aed42b26a5ea_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic087b4978606431f8e0c7a5794915904_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i3002f2ff2c6749afbf88a83ed53b632b_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:InsulationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i831b540d2f8e47f889a534adfa41a137_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:InsulationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7f0f9c9c1cb148bc8ffc9b9c4d1cb3ae_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:InsulationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia6d99bdfef2e4afe81b42420edbdb4ad_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:InsulationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if0f0009cb4634f89adb4be8b61570156_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:InsulationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i00115601cc8c4042bd43ab8f01b73bb6_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:InsulationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ifb10bd8b8b764e0595f8e0ce3d7594fe_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:ShowerDoorsShelvingAndMirrorsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i721e4cbc587c48298ba896443a7d2a34_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:ShowerDoorsShelvingAndMirrorsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i33adb71f8ff94ca0a3af98c2736a7f6b_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:ShowerDoorsShelvingAndMirrorsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0ac77e101efc491c8cb0cad3a11c7504_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:ShowerDoorsShelvingAndMirrorsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="idebff648b7b445a69becf52762761086_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:ShowerDoorsShelvingAndMirrorsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i362583cc4e704d399a6f6a1f64e23000_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:ShowerDoorsShelvingAndMirrorsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iac222aed281f4d4fb765d77df79bd6f8_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:GarageDoorsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i8fa8b822eaf546ee8193ae6d06195bdc_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:GarageDoorsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if0f0a117014f46709ebd632e068c8545_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:GarageDoorsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="idd9694b536cf4359b63849ececc1051a_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:GarageDoorsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i5afae2b77b494812a7c281cfa743c50b_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:GarageDoorsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia6d0f6ced8d048a585748a46b9036043_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:GarageDoorsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i4af9336cf8644af4a2a54d63f458febd_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:WaterproofingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie68dee1b238247c8bcda473545d08d3c_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:WaterproofingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0b02a0e6e9304460bfa26721db27311e_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:WaterproofingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic796520033134acfbb5cc92697ab0940_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:WaterproofingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia5f935417e794e2687aa7772fa649538_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:WaterproofingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iac456e4d85334d1fa785dc56bb25d8ef_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:WaterproofingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ifbd2bcfa5cfd4b1791de98dd0dd0434c_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:RainGuttersMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0cad56f764494289bf4f2c006ba73045_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:RainGuttersMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i20ba381216004a9ab923d1069a5dfb1c_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:RainGuttersMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i539cb43050d34fc192acf5628e380dda_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:RainGuttersMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ibbe89c0040d246b0824189e23bb7c352_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:RainGuttersMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2e43f1472ff149b8995b7e90c7664e3a_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:RainGuttersMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7f31d5a0f769466eb8d01b8a18e6b3ec_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:FireproofingAndFirestoppingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic6778f5307c143028eadf8e698c38873_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:FireproofingAndFirestoppingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i15b0e10fba8f416dab5e5dc5b6fc32b5_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:FireproofingAndFirestoppingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9a158b469e8348eba5d70f3904827c6a_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:FireproofingAndFirestoppingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="icbc083716032440bb12d8c170a33e188_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:FireproofingAndFirestoppingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie5c1bccd5ca74442b64b86677f204b31_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:FireproofingAndFirestoppingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2387e609defe4bfbbd48129aacba1557_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:WindowBlindsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i6574fc1beb3b4269b75d343e412a7512_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:WindowBlindsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0450661597cd47d6acad7b0b043854c7_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:WindowBlindsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i577c77750b47425c8f33cdb1acbffaa0_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:WindowBlindsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i579058115d854962852a0c0c020b848e_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:WindowBlindsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iea170dfedd8342679726aaf6ee933209_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:WindowBlindsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i714c6a6e03a745a1960e415673ce94cc_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:OtherBuildingProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i553fae334b394ef9b1db3a9c8f3018c3_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:OtherBuildingProductsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7137fa9dac194edd89398633df6c11ee_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:OtherBuildingProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic5f159d9be6b4850bee5e384989093f6_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:OtherBuildingProductsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9f4f7decae0a447485fdbda25b367517_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:OtherBuildingProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iad72824efc0e468bbc47c1fbffa3bbdf_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:OtherBuildingProductsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2d35d588ac814750960fa44ccd8924c7_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:ProductInstallationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i640203d72028498cb58a2aada4477c30_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:ProductInstallationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i058aee33e1ae4e7ea7c4e001acd0fe23_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:ProductInstallationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i12474e1f662f42fbbedc8f3efd6efafe_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:ProductInstallationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="id2d41c8d41384eeeaf9ee426845b2878_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:ProductInstallationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia2a7cbed12734e45ae11bece11d00329_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:ProductInstallationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i154b4f910769468197d54dd62cf18926_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:OtherProductInstallationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i3199543710734f1ab38102916fc0efa3_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:OtherProductInstallationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2a0513d7c7cf474f830f5ebc3dd23679_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:OtherProductInstallationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="icb1e06985f2c497e9edb6973274e806d_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:OtherProductInstallationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7656c84a58b14f80b5f2e2b15f8f3885_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:OtherProductInstallationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ifeafca1fab0e4768bd944624db05cf9d_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:OtherProductInstallationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iae4047cbe4fd44928d016f399247a6f8_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i36ae3d68230b48ceac0beacdffde9a61_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i046acb42ec684d8292fb6a29219493bf_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib30aa65e28784187b4011d9ec85050da_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis"><us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2023-01-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i3271f5b5175c4fc9a105b687f91568d7_I20200101"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate201613Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-01-01</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="id8d95aa0fd3544948b8bd65b4bc2fce9_I20200101"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate201613Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-01-01</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i13c43fa46b9b49a2ac465da3f32b17f3_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate201613Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iacff88296ee841948f6f8833f5d738e3_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i4749b30589424316bd69b23b56a606fe_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia0c4b431699c4f82bca0c162ff7d9a38_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i456d6630deea4c90975e809b465df5af_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i33e19fcedb144007af8657125cb0236b_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i26ccc3d3ad794632b64823eceb0d2ada_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i4679fc005b5e412a993a89dd24a90b64_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ibe00fb2189aa4840b83da6f5086b247d_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ifa3dd9bfe2f8438fb1c83033e00c2112_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">ibp:VehiclesAndEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i2d43472522df43d295c3388a45db824c_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">ibp:VehiclesAndEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i7a6eb5745a4144d2ab6e5aac808bcfc0_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0a4200e47afe46c5b7d789f3f7974feb_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0c7f2b33da3b468daa7598e99d5f9d12_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i27ed6a1bdefe43098a08d48f9a6aa198_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i8e9434eca1eb4912bd5cabf256b1ce98_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0696558d634d43589761ef303baf8924_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:unit id="reporting_unit"><xbrli:measure>ibp:reporting_unit</xbrli:measure></xbrli:unit><xbrli:context id="ia6ae7ad5a2e645a4b11ebedc5bb8e766_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ibp:InstallationSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ibadf50e7a18740488f76ed7c7c099490_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ibp:OtherSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i7ee60c6c46b64377a7d9ef1866ddf1f4_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ibp:InstallationSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i57361177467942dca715f3205ca58976_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ibp:OtherSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i3aff0b2379704afda9dd0958ab04b016_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ibp:InstallationSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i6d1889ce16a04267a11cde2000035599_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ibp:OtherSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i063187198d8a4662a8e28042ad648f83_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:DenisonGlassAndMirrorMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i60423e26f6d04d42a31f9c74ec4957e6_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i4701e44d54f8416c94e658d31cdcbc11_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iff0aa331a39e4a78810397ce09d6f176_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i2681812c248c4d1ea8f72b1c19f5bf44_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i2914866a0a3e48cab7cccecb0342c88a_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OrderOrProductionBacklogMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i6f440aaf2b304fe89450e360641debc9_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OrderOrProductionBacklogMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if3685ad92b3748da94c030b96eb1db2c_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RestatementAdjustmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:DenisonGlassAndMirrorMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i34c4e4e26cd94add8200e3c231ad6e6f_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SeniorNotesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i13d232b775794fd09035702b88fc8efd_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SeniorNotesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i540d045957764edda6de786acb29f5ce_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:TermLoanAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:MediumTermNotesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i4a484ea7c8f345e0adf9c0b0c88da255_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:TermLoanAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:MediumTermNotesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i018182100c9b4faf8e0b0ca98b72dc09_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:VehicleAndEquipmentNotesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:NotesPayableOtherPayablesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i834063c3b1454e2f866fe8e743de57c7_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:VehicleAndEquipmentNotesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:NotesPayableOtherPayablesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i6a87d84186b04f3383be05898cb0dc9b_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:VehicleAndEquipmentNotesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:NotesPayableOtherPayablesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i737a44fc03054b2d8bc05385476ba2b7_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:VehicleAndEquipmentNotesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:NotesPayableOtherPayablesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i2beda86d04974e408bae431827dee988_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:NotesPayableOtherPayablesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i5936bc2238984dac8588a7283fd3bee5_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:NotesPayableOtherPayablesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iee545d8b2e7b474d9f3df5bba463a629_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:NotesPayableOtherPayablesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iffa4f907555945d5a29eed4b703ec3aa_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:NotesPayableOtherPayablesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if0144e02c38f4ce7ac717e9cd6b2c470_I20190930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SeniorNotesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i3d558231c934484486d62133717c8d67_D20190901-20190930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SeniorNotesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-09-01</xbrli:startDate><xbrli:endDate>2019-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7d6c36cf84a243a3bf41547086bb67bd_I20220228"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:TermLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-02-28</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia189161bf80746ea964b0f8fe835b158_I20220227"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:AblCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-02-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i86035a77f81d4b539b5f1ce46301da8c_I20220228"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:AblCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-02-28</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i9f001a3bfedc4b5ea368fad69dfc0f58_D20220201-20220228"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:AblCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-02-01</xbrli:startDate><xbrli:endDate>2022-02-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7a375fef08ab451da4952c1783e82102_D20220201-20220228"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:AblCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-02-01</xbrli:startDate><xbrli:endDate>2022-02-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i07c36a7930b34ab8a7ea6aad1a369ca5_D20220228-20220228"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:EurodollarMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:AblCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-02-28</xbrli:startDate><xbrli:endDate>2022-02-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib08adbc384934c028f3648ab9e362f6a_D20220228-20220228"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:EurodollarMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:AblCreditAgreementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-02-28</xbrli:startDate><xbrli:endDate>2022-02-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic9fa014a79fb43d9af456a0f7d86258b_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:AblCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ShortTermDebtTypeAxis">us-gaap:LetterOfCreditMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib76cd90aaa964f7e95f82ca5b9a26828_I20220228"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:AblCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">ibp:IncrementalRevolvingCreditFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-02-28</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i20d9bf47aa834d11bd9e0509d8abc5e6_I20220228"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:LetterOfCreditMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:AblCreditAgreementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-02-28</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ibdb3b0ff1645425b99b05dca86fabd3b_I20220228"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:AblCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">ibp:SwingLineLoansMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-02-28</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i8e6d104c5e894a44972d31f3c2a54c03_D20220201-20220228"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:AblCreditAgreementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-02-01</xbrli:startDate><xbrli:endDate>2022-02-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i3626fc639f194097808d6c94273ca71f_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:TermLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i348b56558ede44b8861dc95a4225ed0d_D20211201-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:TermLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-12-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i369ef29f670e409d93c3900ac15f872c_D20191217-20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:TermLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-17</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ibb2d42a7a0d04941bc3037db4d367073_D20191217-20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:LondonInterbankOfferedRateLIBORMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:TermLoanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-17</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9da17e90d5044db980df1ac538041b4e_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:TermLoanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">ibp:TermLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i1667b4619c3043ccb7ad8720ada33f65_D20211201-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:TermLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-12-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie7fc98e4645a435190e6c9695d751b2f_D20211201-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:TermLoanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-12-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i05826b04b32d488fa2a32dad9066cdeb_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">ibp:MasterLoanAgreementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib3d0c7e33c2948d7b16474ce673bdc63_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">ibp:VehicleAndEquipmentNotesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i5cee4ffe61be49c6ae7aacfc5b5b9775_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">ibp:VehicleAndEquipmentNotesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i44030115f3dc47f394d19aada0ec45cc_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">ibp:OperatingLeaseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9722915df0974c458f470a40cb51bcc3_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">ibp:OperatingLeaseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i23f641ea860741b4898eb88a1038ed66_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">ibp:OperatingLeaseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i08920745a8f5413683e3316127588e2a_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">ibp:FinanceLeaseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i25b223b5601449dca61b5ffe8caa493f_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis">ibp:RelatedPartyOperatingLeasesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i2a806add24c44945bfa06ae48dc2a5fb_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis">ibp:OtherPartyOperatingLeasesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i373c10e1730d46369af7a873abf1918a_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i7a34ba2de1b84650b248fe94476806f2_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib5c4594d67d3429582152cf3aeab11e4_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="id8b7a65da01c466384496dc24aeb67db_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i71c3fa225acf48de82e4fa30f1967289_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i338142ec4a614695bfabab290899055c_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i1ecef401d2d54e20b0a5fd6493a9fdee_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementBasisAxis">us-gaap:CarryingReportedAmountFairValueDisclosureMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib72425e5789e464eb55e91e39f29472a_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iee04fb3fcd05431d9f4a24a96a9218c6_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementBasisAxis">us-gaap:CarryingReportedAmountFairValueDisclosureMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i3033586cc36f48f0b3220b9deb8b4ed2_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ie4442c3f4fa34930817b0baa33f7126e_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:AllOtherSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2b3c149ccdaf411abf7c699fed56e802_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ibp:InstallationSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i25a7fdace7a84c2d9575a891f8027ac0_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:AllOtherSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i18b77c51bf3a4f958b8b0f2900724f08_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i8575354b2fbb4902ae0b5a815b512e19_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RestatementAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0a90c295d4394ee39a429acf25490e2c_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ibp:InstallationSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i553d5969138e460a9bf309e11f5f8a26_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:AllOtherSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia59f114338e14376874dfbd1aaebd2a7_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie5905ba0719040438b112fb99f9b953c_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RestatementAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic7e64d94fc2142a586ef4f2fe8cabba2_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ibp:InstallationSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i83b10d3c03c148f6843d6898a799af1b_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:AllOtherSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2a61f156f4a841368d04ac31fb199848_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie274fecd3dfd42dfbef01a03d192c162_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RestatementAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ibee1a74171604fea9600eff85349f6c6_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">ibp:InterestRateSwapOneEffectiveJuly202021Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ifabecb9e61e345918b677899e47caab9_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">ibp:InterestRateSwapTwoEffectiveDecember312021Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i3770042c69554337aa145a020b149bcd_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">ibp:InterestRateSwapThreeEffectiveDecember312021Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i1672765a5f964c51ab755b498631ad23_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">ibp:InterestRateSwapFourEffectiveDecember312025Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="idf0befe7ce8a45db81c1e364433b2346_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">ibp:InterestRateSwapFiveEffectiveDecember312025Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic2cf2e52ccd646ef9a9d36906001e517_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">ibp:InterestRateSwapOneEffectiveJuly202021Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i1301eb6a5fc549069945be411b5afa6b_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">ibp:InterestRateSwapTwoEffectiveDecember312021Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i553a93f70bb8496aa0ff5b74f2f9ea55_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">ibp:InterestRateSwapThreeEffectiveDecember312021Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iab01235b40dd45c6927bbad026dd9938_I20220708"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-07-08</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="instrument"><xbrli:measure>ibp:instrument</xbrli:measure></xbrli:unit><xbrli:context id="i442df108481d486093e987ae0ab7f3de_D20220708-20220708"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-08</xbrli:startDate><xbrli:endDate>2022-07-08</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib89a7646ef1240b0a5ab77c7f353f692_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i56181c5a7f2d4a8391dd92fea36879d4_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i3dc49179ed7c4a1baba5f2c76bfe1f2d_I20220728"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-07-28</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i0d2108f549d34ce5bfda96eeaa0b81bf_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if1142baf02ff4a46880be63e5f3a091c_I20200831"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2020-08-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="swap"><xbrli:measure>ibp:swap</xbrli:measure></xbrli:unit><xbrli:context id="ia81262dad5e84fed93f6a279d84424fe_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic91a6a4159b341b193c39b699641e966_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iefd77e98cbe14c7a925d42dfe158f974_D20210801-20210831"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-08-01</xbrli:startDate><xbrli:endDate>2021-08-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0a10819a03884112b683b41306168549_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i22b861620ef3464eb72be526ade264aa_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iff2e5d359b374823988dd0110d4470cf_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if24349dd43b048f68bf4cc030d2889da_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic7d96b76684448ca8dc8d5eb2af2aa51_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iddedffc4e5144507a507008593a6873b_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib6ac4b7d2a984343a2a2675dcd2e6938_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i8f1fc2a7afff401a89603047426d6933_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i181ad4bd7adf4caa9f759ca2b9c63e8b_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib71212c1449342498cafafbd95744e94_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7333bb6e9aa345eaae9049c458a08bcb_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i100c14fc5dac409cbdb1dacc3ea4f5a3_I20220224"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2022-02-24</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iaf7f2985f94c4c49bd394258ac3e1c59_I20230222"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-02-22</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ibad6e2952377482580495fbdda46fff0_D20220224-20220224"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DividendsAxis">ibp:DividendsDeclaredAndPaid1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-02-24</xbrli:startDate><xbrli:endDate>2022-02-24</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i91f16aadcc6b49d0b234caa9ff3ae064_D20220331-20220331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DividendsAxis">ibp:DividendsDeclaredAndPaid1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-03-31</xbrli:startDate><xbrli:endDate>2022-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7d1abcbaf16c4b7491e7966bcb70758b_D20220224-20220224"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DividendsAxis">ibp:DividendsDeclaredAndPaid2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-02-24</xbrli:startDate><xbrli:endDate>2022-02-24</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i8c4cbfe2e6e5412389b32c2d875dbef1_D20220331-20220331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DividendsAxis">ibp:DividendsDeclaredAndPaid2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-03-31</xbrli:startDate><xbrli:endDate>2022-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iaf611f307b9f4c12a8b97cc19c405d84_D20220505-20220505"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2022-05-05</xbrli:startDate><xbrli:endDate>2022-05-05</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i3f9b1494308e4b9c86f4c790c4f4979e_D20220630-20220630"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2022-06-30</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i807ff5d59f0d4cfeaaf38ac7f266c7f2_D20220804-20220804"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2022-08-04</xbrli:startDate><xbrli:endDate>2022-08-04</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i646b446c5cb0405f89d818e82b8c2c31_D20220930-20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2022-09-30</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i4d70c0967219428891e9b6845905a960_D20221103-20221103"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-03</xbrli:startDate><xbrli:endDate>2022-11-03</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i045defb974cc4bd585a4fe22efdd9936_D20221231-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2022-12-31</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="id5dd847f8b58461a84949fa4421e07fb_D20210223-20210223"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2021-02-23</xbrli:startDate><xbrli:endDate>2021-02-23</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i5b9da0853c824ac59047f949e36385ca_D20210331-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2021-03-31</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i991fdb41c8934ebfac0241c7e461a7f8_D20210505-20210505"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2021-05-05</xbrli:startDate><xbrli:endDate>2021-05-05</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i29115886eaa9444a96a996b8cd9e65c0_D20210630-20210630"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2021-06-30</xbrli:startDate><xbrli:endDate>2021-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ifff31870d771421ea1aa10e55657fe72_D20210805-20210805"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2021-08-05</xbrli:startDate><xbrli:endDate>2021-08-05</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i56fc48d2ef2843d6a309770db2666814_D20210930-20210930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2021-09-30</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i1dc79196e8854f7ab0466692c93a3e7c_D20211104-20211104"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2021-11-04</xbrli:startDate><xbrli:endDate>2021-11-04</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i21088968d2e44ef7b27c7fb852ac6ae3_D20211231-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2021-12-31</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i33d015c2b9c5400cb809209f62f9398e_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i37aa17ee923446b1bfe336a10f721ba8_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:DefinedBenefitPostretirementHealthCoverageMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i8668cb4ddb8b4ece9852cd75fc2a112d_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:DefinedBenefitPostretirementHealthCoverageMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i84d46d07e8fc436e811a36c787935fce_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib14c282b4f2f48aebb9e830c414e6b39_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i16ed968772804a798c3c3d83320afabe_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i34caeff1771e4360b540831f5a821888_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:DefinedBenefitPostretirementHealthCoverageMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iff062208e3f64e0f991049b0d03b5a0e_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:DefinedBenefitPostretirementHealthCoverageMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7b2c037eb25246e2991f1d1397390f87_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:DefinedBenefitPostretirementHealthCoverageMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie7bd015f778946acae59540104706b42_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:DirectorMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i757eef749bac4f2293e773f93a167e4f_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:DirectorMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib9ef86a33c5c43bdbac9dadc13b78f6f_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:DirectorMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:unit id="installment"><xbrli:measure>ibp:installment</xbrli:measure></xbrli:unit><xbrli:context id="i964a800227db4746b75656990ba9877b_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedAwardsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:OfficerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7fd8869fa57b44ef89607df7096ea515_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedRestrictedStockUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i311beb28dee1454fa46dacf81c0daab9_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:CommonStockAwardsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i1d20a8c5c0044c2b905ac0fd361ed035_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedAwardsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib959d9a931e74a09bbfb204ed6489cb4_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedStockUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i7b1daf5c317949f8b45bc9e3692eccda_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:CommonStockAwardsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i8336d9bd9d7e4ca8a36e5d674412d2ba_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedAwardsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic417962ed93249ada8257fa6ee36342e_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedStockUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic83e19ff3ed8464b82cff42a06460329_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:CommonStockAwardsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i742f1074f99d44938c1adea16c83563d_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedAwardsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i4b661dbcee504056ab5f33633cd24870_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedStockUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i649b9d4497df46ed9b1a6f3021b6d668_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:CommonStockAwardsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2ce667884711486896711601e0d7744e_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:CommonStockAwardsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i4304e324a56f4de0b1d80453e03b2437_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:CommonStockAwardsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i70a43a7f84554c1fada56f420f4a3692_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:GranteeStatusAxis">us-gaap:ShareBasedPaymentArrangementNonemployeeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:CommonStockAwardsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i5538cc20e3be4bb29b233ad59bf792e4_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:GranteeStatusAxis">us-gaap:ShareBasedPaymentArrangementNonemployeeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:CommonStockAwardsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i5a8f51ff7034417b959f2c0ac1fb3778_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:GranteeStatusAxis">us-gaap:ShareBasedPaymentArrangementNonemployeeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:CommonStockAwardsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0684e2d242a048a7b3b272be57da339c_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedAwardsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i1d61284a7ad44ff2b803dfe09bd346aa_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedAwardsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iec022876581b4c4a929322821ee287ad_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedAwardsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9a21ad0b0a5347f2a0a96a450c9cb43b_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:LiabilityPerformanceBasedStockAwardsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ida28457a08b6472d93cc3ef911e3aabf_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:LiabilityPerformanceBasedStockAwardsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i949037a6d9844183b5ee9656da9438a8_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:LiabilityPerformanceBasedStockAwardsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i26413bdd4d944498a9cb24385ea2bba5_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedRestrictedStockUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i8bffe94a0d174cf0895d36c924b78e11_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedRestrictedStockUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0d80387483384372a7b55be16104656a_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedRestrictedStockUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i3f1013f46e884aa88d94776dc7259876_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib1c3019a8253424588b74711b0099a7d_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2043d7b952f344cab1ed7372bd7e3966_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia919de0e1499476e871a395c2d14d460_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i5ab90870455340b398aee4bfaaea2615_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i3e0e0ad83f304043a202a9a47bb9391e_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9b1b1e6dc9f04cbebf0af1df1e3336ee_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie81373567f534c27a073ed483e7064c4_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9f6e77b454314e42a56975bd433a11b0_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i10f2addff94d4415b05d34bb939ab3b5_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedRestrictedStockUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i7b47a8b9fe314f3ea1319317721195b0_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iae21facea61a423ca07b8cb5fe20ed53_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:LiabilityPerformanceBasedStockAwardsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i767a26947aae42d3a84a17877e69d97a_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheOneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9c21c6f57bad4d83b34ec31f123eb288_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheThreeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i96806cead05c4c1889c943be9ba62ad6_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheTwoMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i6ad62bc7e19c4730a8d4b536ad2b8723_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheOneMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedAwardsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:OfficerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i6f3fbcfa9cd94da4b243e391387ab369_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedAwardsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheTwoMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:OfficerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i609df2d8a2f9497db040a73897c11531_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedAwardsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">ibp:CertainEmployeesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib99cdb720a78462288090d3e4f2f3fdf_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedAwardsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">ibp:CertainEmployeesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9efde658f2894b0eb085151d7f9a1867_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedAwardsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">ibp:CertainEmployeesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i4a03692444e142a0ba3374540a9914ce_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedRestrictedStockUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic814b05a7ffa4520acd88aea1d50ac8f_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedRestrictedStockUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i5fc8eaf38d8c4adcbf4acbfb0bca794c_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">ibp:DeferredIncomeTaxLiabilitiesNetMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="id9c60ffd7a984d989effbfdbf1ab8bef_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">ibp:DeferredIncomeTaxLiabilitiesNetMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic1c6c2e6226b4b8f9eb0dd8fbad9d4f4_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:AffiliatedEntityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie33db4efa4914592a1448b3059cd6744_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:AffiliatedEntityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="id44a6b0dd5ec43d28543683a24ec6e10_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:AffiliatedEntityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i058b6ccaa07643c7a3b721296a456c74_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:AffiliatedEntityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i8dfa63c25f1641888218961240b7361e_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:AffiliatedEntityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i740af50718654e1aab1a54a820f2469b_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:TrustForBenefitOfEmployeesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i1f0f486b895040c1b1d766df54348319_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ScheduleOfMalpracticeInsuranceTypeAndTierIdentifierAxis">us-gaap:GeneralLiabilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if6323e71637b49a185b9d3f6a1940c53_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ScheduleOfMalpracticeInsuranceTypeAndTierIdentifierAxis">us-gaap:GeneralLiabilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="business"><xbrli:measure>ibp:business</xbrli:measure></xbrli:unit><xbrli:context id="ie6eb768e720b4c85b65f110f827cc1c4_D20220411-20220411"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:CentralAluminumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-04-11</xbrli:startDate><xbrli:endDate>2022-04-11</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i1892b348668840409ac2b29a9b4efe0a_D20221219-20221219"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:ABSMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-12-19</xbrli:startDate><xbrli:endDate>2022-12-19</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iea7705e474d24beea8cfced5133c968c_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:OtherAcquisitionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i06c08f43586341e0919a0d465259db64_D20210301-20210301"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:IWMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-03-01</xbrli:startDate><xbrli:endDate>2021-03-01</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie5deb12bfd9740e49eff8493415dce66_D20210913-20210913"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:FiveStarMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-09-13</xbrli:startDate><xbrli:endDate>2021-09-13</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i48c7fbbb47c54999a359c177c6085728_D20211212-20211212"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:AMDMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-12-12</xbrli:startDate><xbrli:endDate>2021-12-12</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i19488ffc40d7436687f44b5b09748ede_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:OtherAcquisitionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i02c2ac93900744dfabba50ee8183f826_D20201013-20201013"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:NorkoteMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-10-13</xbrli:startDate><xbrli:endDate>2020-10-13</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i5a1d37cf66e64283aea0cb97c7d46f4a_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:OtherAcquisitionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i4ea0b889e5434d22b1941f98869bcd38_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:CentralAluminumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i6799a626e2724e80b54d415eebad9174_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:ABSMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic3c81c2eb9544b3892643cc586b11a5b_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:OtherAcquisitionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i1b1456749c4141e8935d5eff49c409fb_I20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:TwoThousandTwentyTwoAcquisitionsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i17e40893dd0a4213a1a40822606dfbc2_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:CentralAluminumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i1b396f3cac964335a636f6f33458525c_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:ABSMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i276eed2b955047a5a439cf9a1c6de1cd_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:TwoThousandTwentyTwoAcquisitionsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i37461516afa443f88fce8a7675608fdd_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:IWMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i3f72dbb0d5fd4dcb9005c5f0671dda91_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:FiveStarMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ief0682dd5a7e47179c4aa045d07dca78_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:AMDMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i1fea681f0af84e9cb42e995810f12b15_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:OtherAcquisitionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i54c7aecd583b422db1836ea36b1df9ac_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:TwoThousandTwentyOneAcquisitionsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i446e65df412f490680b00003d7cc2e37_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:IWMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia4cc34e117bf4229a839843df1c735d9_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:FiveStarMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i14747cce30c4466097ad2e71ba78d40d_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:AMDMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i924b337b12024dc6bb6ab4744d528582_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:TwoThousandTwentyOneAcquisitionsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i37b53970c4384c8d8b5815957a2a9908_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:NorkoteMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if857301956214edda788d832c3f07c01_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:OtherAcquisitionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia387d8d0753347c3b9d9976f60eb571f_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:TwoThousandTwentyAcquisitionsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i84a0099b25b7437fa82470d966b55b3f_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:NorkoteMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i00fded2e14994d2da83d37845bb5950c_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:TwoThousandTwentyAcquisitionsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i43ab2840190646a9a29f626d4ea9f201_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RestatementAdjustmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:DenisonGlassAndMirrorMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iae67bb7820424a05bb9980c0a54a1be7_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib8eafb787d87447f819d6c22e636a252_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i29b07b75dec34c58bfd17b6c91f7699f_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i4666e95abc2946b4bcffd2713db1b4eb_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i655e00359db74a0498a6260a1e2b37b2_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i225a38d9cb004a13806bd49986908185_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="id3522748cf874adaa26e4fb5a429c9a7_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i92ce7e4cb80b43d4a197299a3a96c2db_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="id8808320f1eb4843a0b744cc1b5d15a8_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic32ff90b2ecd4ade9ebb1b86f0d45e7b_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OrderOrProductionBacklogMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib0e8ef84dde647a1a1daba7531646eaa_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OrderOrProductionBacklogMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2ad67bbb20fb45b2bb2af956fbc5b0f9_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OrderOrProductionBacklogMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="id0be1243c38b48029fee5ea0f354d284_D20220101-20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i50702d9644604ef6b8e4664d366e408c_D20210101-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i31829ad5db3b4aaaa72e5507f7df28a5_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ida4bc7c180464dc792325f41bd379c82_I20230222"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ScenarioForecastMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-02-22</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i9a33ed4e39e141a1ae28eae3d8b26778_I20230315"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001580905</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ScenarioForecastMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-03-15</xbrli:instant></xbrli:period></xbrli:context></ix:resources></ix:header></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_1"></div><div style="min-height:31.5pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:16pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:98.900%"></td><td style="width:0.1%"></td></tr><tr style="height:3pt"><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td></tr></table></div><div style="margin-top:11pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:16pt;font-weight:700;line-height:120%">UNITED STATES</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:16pt;font-weight:700;line-height:120%">SECURITIES AND EXCHANGE COMMISSION</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:16pt;font-weight:700;line-height:120%">Washington, D.C. 20549</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:120%"> </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">___________________________</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:16.5pt;font-weight:700;line-height:120%">FORM <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:DocumentType" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGV4dHJlZ2lvbjo5ZTJmMDg2N2Y3YTk0MWFkOGYzY2MzNDZhN2VkYTBiNl8zMzQ2_ee84641e-2010-453f-8587-8b82404524a1">10-K</ix:nonNumeric></span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:2.650%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:95.150%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Wingdings',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:DocumentAnnualReport" format="ixt-sec:boolballotbox" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGFibGU6NjY0NzI5ZjcyOGNkNDFlZmIwZjA2NTgxNGU5MWY5ZmQvdGFibGVyYW5nZTo2NjQ3MjlmNzI4Y2Q0MWVmYjBmMDY1ODE0ZTkxZjlmZF8wLTAtMS0xLTEwMDAwMg_4da599a0-6cb4-4f03-bd00-e3676b753d86">&#9746;</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">ANNUAL REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE&#160;ACT OF 1934</span></td></tr></table></div><div><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">For the Fiscal Year Ended <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:DocumentPeriodEndDate" format="ixt:date-monthname-day-year-en" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGV4dHJlZ2lvbjo5ZTJmMDg2N2Y3YTk0MWFkOGYzY2MzNDZhN2VkYTBiNl8xNzU_ae010b3c-b1be-426a-a771-6353ab409b08"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:CurrentFiscalYearEndDate" format="ixt:date-monthname-day-en" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGV4dHJlZ2lvbjo5ZTJmMDg2N2Y3YTk0MWFkOGYzY2MzNDZhN2VkYTBiNl8xNzU_d14d7b0c-31c1-4763-9a2e-df74b4fd4a1c">December&#160;31</ix:nonNumeric>, 2022</ix:nonNumeric></span></div><div style="margin-top:6pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">OR</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:2.650%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:95.150%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Wingdings',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:DocumentTransitionReport" format="ixt-sec:boolballotbox" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGFibGU6OWFlZDQ2ODNmZDlhNDg2M2EzNzM4ZGE3OGU3N2FlODQvdGFibGVyYW5nZTo5YWVkNDY4M2ZkOWE0ODYzYTM3MzhkYTc4ZTc3YWU4NF8wLTAtMS0xLTEwMDAwMg_974f02bb-4c76-44bd-b11b-4f2b8e7392a9">&#9744;</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">TRANSITION REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES&#160;EXCHANGE ACT OF 1934</span></td></tr></table></div><div><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">For the Transition Period From                To </span></div><div style="margin-top:6pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Commission File Number: <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:EntityFileNumber" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGV4dHJlZ2lvbjo5ZTJmMDg2N2Y3YTk0MWFkOGYzY2MzNDZhN2VkYTBiNl8zMzQ0_3c073784-3b00-44fb-bd51-e3947dceeb26">001-36307</ix:nonNumeric></span></div><div style="margin-top:6pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">___________________________</span></div><div style="margin-top:4pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:20pt;font-weight:700;line-height:120%"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:EntityRegistrantName" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGV4dHJlZ2lvbjo5ZTJmMDg2N2Y3YTk0MWFkOGYzY2MzNDZhN2VkYTBiNl8zMzQ1_ea6d8a67-2246-44a7-8774-d5838898617f">Installed Building Products, Inc.</ix:nonNumeric></span></div><div style="margin-top:1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(Exact name of registrant as specified in its charter)</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">___________________________</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:23.761%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:23.761%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:48.484%"></td><td style="width:0.1%"></td></tr><tr><td colspan="6" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:EntityIncorporationStateCountryCode" format="ixt-sec:stateprovnameen" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGFibGU6NDUxMWVjNDI3ODQzNDk4NDhmOGM4ODg1MTZhY2I0OGYvdGFibGVyYW5nZTo0NTExZWM0Mjc4NDM0OTg0OGY4Yzg4ODUxNmFjYjQ4Zl8wLTAtMS0xLTEwMDAwMg_34718ada-0e36-4849-8155-d501d7ac4dad">Delaware</ix:nonNumeric></span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:EntityTaxIdentificationNumber" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGFibGU6NDUxMWVjNDI3ODQzNDk4NDhmOGM4ODg1MTZhY2I0OGYvdGFibGVyYW5nZTo0NTExZWM0Mjc4NDM0OTg0OGY4Yzg4ODUxNmFjYjQ4Zl8wLTMtMS0xLTEwMDAwMg_4262d240-a4b3-46d6-9d62-7dbfe115fcb9">45-3707650</ix:nonNumeric></span></td></tr><tr><td colspan="6" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(State or other jurisdiction of<br/>incorporation or organization)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(I.R.S. Employer<br/>Identification No.)</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="6" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:EntityAddressAddressLine1" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGFibGU6NDUxMWVjNDI3ODQzNDk4NDhmOGM4ODg1MTZhY2I0OGYvdGFibGVyYW5nZTo0NTExZWM0Mjc4NDM0OTg0OGY4Yzg4ODUxNmFjYjQ4Zl8zLTAtMS0xLTEwMDAwMi90ZXh0cmVnaW9uOmZhZDczM2UxNGMyNDQ4NGZiZmU1YjA0M2VjNDM3NmEyXzQ_12676de6-4dab-41ff-822a-3ed1aa1ec5a2">495 South High Street</ix:nonNumeric>, <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:EntityAddressAddressLine2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGFibGU6NDUxMWVjNDI3ODQzNDk4NDhmOGM4ODg1MTZhY2I0OGYvdGFibGVyYW5nZTo0NTExZWM0Mjc4NDM0OTg0OGY4Yzg4ODUxNmFjYjQ4Zl8zLTAtMS0xLTEwMDAwMi90ZXh0cmVnaW9uOmZhZDczM2UxNGMyNDQ4NGZiZmU1YjA0M2VjNDM3NmEyXzg_1f6fbe63-a7f1-407d-9257-8d4d45c86530">Suite 50</ix:nonNumeric></span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="6" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:EntityAddressCityOrTown" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGFibGU6NDUxMWVjNDI3ODQzNDk4NDhmOGM4ODg1MTZhY2I0OGYvdGFibGVyYW5nZTo0NTExZWM0Mjc4NDM0OTg0OGY4Yzg4ODUxNmFjYjQ4Zl80LTAtMS0xLTEwMDAwMi90ZXh0cmVnaW9uOjJhY2Y3ZTE1ZjQ5YjQ2NWJiY2ZmMzdhNDQ5OTVlMjBmXzQ_f62d3039-de01-45ad-8987-3bee16c88123">Columbus</ix:nonNumeric>, <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:EntityAddressStateOrProvince" format="ixt-sec:stateprovnameen" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGFibGU6NDUxMWVjNDI3ODQzNDk4NDhmOGM4ODg1MTZhY2I0OGYvdGFibGVyYW5nZTo0NTExZWM0Mjc4NDM0OTg0OGY4Yzg4ODUxNmFjYjQ4Zl80LTAtMS0xLTEwMDAwMi90ZXh0cmVnaW9uOjJhY2Y3ZTE1ZjQ5YjQ2NWJiY2ZmMzdhNDQ5OTVlMjBmXzg_9efe23ae-31ec-400a-8241-74542c505677">Ohio</ix:nonNumeric></span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:EntityAddressPostalZipCode" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGFibGU6NDUxMWVjNDI3ODQzNDk4NDhmOGM4ODg1MTZhY2I0OGYvdGFibGVyYW5nZTo0NTExZWM0Mjc4NDM0OTg0OGY4Yzg4ODUxNmFjYjQ4Zl80LTMtMS0xLTEwMDAwMg_dc4db70d-ab13-43fe-86f7-ddef4f689e1a">43215</ix:nonNumeric></span></td></tr><tr><td colspan="6" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(Address of principal executive offices)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(Zip Code)</span></td></tr></table></div><div><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:CityAreaCode" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGV4dHJlZ2lvbjo5ZTJmMDg2N2Y3YTk0MWFkOGYzY2MzNDZhN2VkYTBiNl8zMzM1_841e3659-d90a-4fff-bc97-164d4f8a3502">(614)</ix:nonNumeric> <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:LocalPhoneNumber" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGV4dHJlZ2lvbjo5ZTJmMDg2N2Y3YTk0MWFkOGYzY2MzNDZhN2VkYTBiNl8zMzM2_cb61cf9e-b667-44f0-806a-c272b9e4cd52">221-3399</ix:nonNumeric></span></div><div style="margin-top:1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(Registrant&#8217;s telephone number, including area code)</span></div><div style="margin-top:6pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Securities registered pursuant to Section 12(b) of the Act:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:15.983%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:21.677%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.650%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:38.902%"></td><td style="width:0.1%"></td></tr><tr><td colspan="6" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Title of each class</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Trading Symbol(s)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Name of each exchange on which registered</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:Security12bTitle" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGFibGU6NWY4NWUxYjhmZjU5NDlkOWI3M2I4ZjljMmVmNTc0MWUvdGFibGVyYW5nZTo1Zjg1ZTFiOGZmNTk0OWQ5YjczYjhmOWMyZWY1NzQxZV8xLTAtMS0xLTEwMDAwMg_cb66652e-0b37-413e-b8b0-0ed088295ef9">Common Stock,</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$0.01 par value per share</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:TradingSymbol" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGFibGU6NWY4NWUxYjhmZjU5NDlkOWI3M2I4ZjljMmVmNTc0MWUvdGFibGVyYW5nZTo1Zjg1ZTFiOGZmNTk0OWQ5YjczYjhmOWMyZWY1NzQxZV8xLTMtMS0xLTEwMDAwMg_0230959e-6a9b-43ea-b61d-f2a927253cc4">IBP</ix:nonNumeric></span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:SecurityExchangeName" format="ixt-sec:exchnameen" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGFibGU6NWY4NWUxYjhmZjU5NDlkOWI3M2I4ZjljMmVmNTc0MWUvdGFibGVyYW5nZTo1Zjg1ZTFiOGZmNTk0OWQ5YjczYjhmOWMyZWY1NzQxZV8xLTUtMS0xLTEwMDAwMg_7ada87ea-0390-49fb-9208-63a556ada47a">The New York Stock Exchange</ix:nonNumeric></span></td></tr></table></div><div style="margin-top:7pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Securities registered pursuant to Section 12(g) of the Act: None</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">___________________________</span></div><div style="margin-top:4pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Indicate by check mark if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act.   <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:EntityWellKnownSeasonedIssuer" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGV4dHJlZ2lvbjo5ZTJmMDg2N2Y3YTk0MWFkOGYzY2MzNDZhN2VkYTBiNl8zMzM3_ca734a91-60c0-4c3e-ac93-1c2b49af5176">Yes</ix:nonNumeric> </span><span style="color:#000000;font-family:'Wingdings',sans-serif;font-size:10pt;font-weight:400;line-height:120%">x</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;No </span><span style="color:#000000;font-family:'Wingdings',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#168;</span></div><div style="margin-top:4pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Indicate by check mark if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the  Act.   Yes </span><span style="color:#000000;font-family:'Wingdings',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#168;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:EntityVoluntaryFilers" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGV4dHJlZ2lvbjo5ZTJmMDg2N2Y3YTk0MWFkOGYzY2MzNDZhN2VkYTBiNl8zMzM5_0abfabf5-83a3-4caa-b26f-82bb85254b89">No</ix:nonNumeric> </span><span style="color:#000000;font-family:'Wingdings',sans-serif;font-size:10pt;font-weight:400;line-height:120%">x</span></div><div style="margin-top:4pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Indicate by check mark whether the registrant (1) has filed all reports required to be filed by Section 13 or 15(d) of the Securities</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Exchange Act of 1934 during the preceding 12 months (or for such shorter period that the registrant was required to file such reports), and (2) has been subject to such filing requirements for the past 90 days.   <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:EntityCurrentReportingStatus" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGV4dHJlZ2lvbjo5ZTJmMDg2N2Y3YTk0MWFkOGYzY2MzNDZhN2VkYTBiNl8zMzQw_160e5063-d57a-4407-b5d3-53b95da95246">Yes</ix:nonNumeric> </span><span style="color:#000000;font-family:'Wingdings',sans-serif;font-size:10pt;font-weight:400;line-height:120%">x</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;No </span><span style="color:#000000;font-family:'Wingdings',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#168;</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Indicate by check mark whether the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T (&#167;232.405 of this chapter) during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).   <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:EntityInteractiveDataCurrent" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGV4dHJlZ2lvbjo5ZTJmMDg2N2Y3YTk0MWFkOGYzY2MzNDZhN2VkYTBiNl8zMzQx_474ae7bd-9a0b-4cd3-8474-f974cff4d145">Yes</ix:nonNumeric> </span><span style="color:#000000;font-family:'Wingdings',sans-serif;font-size:10pt;font-weight:400;line-height:120%">x</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;No </span><span style="color:#000000;font-family:'Wingdings',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#168;</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, 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></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:18.761%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:51.261%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:21.261%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:4.317%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:EntityFilerCategory" format="ixt-sec:entityfilercategoryen" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGFibGU6NTRjYWY4NGFjMGVmNDE4NWE5ZGY0MjRlM2NjMWJiNDgvdGFibGVyYW5nZTo1NGNhZjg0YWMwZWY0MTg1YTlkZjQyNGUzY2MxYmI0OF8wLTAtMS0xLTEwMDAwMg_0a86e38c-5f43-47b3-a738-a9e0a3e09e99">Large accelerated filer</ix:nonNumeric>&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-top:6pt"><span style="color:#000000;font-family:'Wingdings',sans-serif;font-size:11pt;font-weight:400;line-height:100%">&#9746;</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accelerated&#160;filer</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-top:6pt"><span style="color:#000000;font-family:'Wingdings',sans-serif;font-size:11pt;font-weight:400;line-height:100%">&#9744;</span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-accelerated filer</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-top:6pt"><span style="color:#000000;font-family:'Wingdings',sans-serif;font-size:11pt;font-weight:400;line-height:100%">&#9744;</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Smaller&#160;reporting&#160;company</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-top:6pt"><span style="color:#000000;font-family:'Wingdings',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:EntitySmallBusiness" format="ixt-sec:boolballotbox" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGFibGU6NTRjYWY4NGFjMGVmNDE4NWE5ZGY0MjRlM2NjMWJiNDgvdGFibGVyYW5nZTo1NGNhZjg0YWMwZWY0MTg1YTlkZjQyNGUzY2MxYmI0OF8xLTMtMS0xLTEwMDAwMg_95083c36-c12f-4bde-a1b4-77dc2305eae5">&#9744;</ix:nonNumeric></span></div></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Emerging growth company</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-top:6pt"><span style="color:#000000;font-family:'Wingdings',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:EntityEmergingGrowthCompany" format="ixt-sec:boolballotbox" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGFibGU6NTRjYWY4NGFjMGVmNDE4NWE5ZGY0MjRlM2NjMWJiNDgvdGFibGVyYW5nZTo1NGNhZjg0YWMwZWY0MTg1YTlkZjQyNGUzY2MxYmI0OF8yLTMtMS0xLTEwMDAwMg_77abb1b1-cf35-4d0e-afde-ab84a3998e91">&#9744;</ix:nonNumeric></span></div></td></tr></table></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">If an emerging growth company, indicate by check mark if the registrant has elected not to use the extended transition period for complying with any new or revised financial accounting standards provided pursuant to Section 13(a) of the Exchange Act. </span><span style="color:#000000;font-family:'Wingdings',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#168;</span></div><div style="margin-top:6pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Indicate by check mark whether the registrant has filed a report on and attestation to its management&#8217;s assessment of the effectiveness of its internal control over financial reporting under Section 404(b) of the Sarbanes-Oxley Act (15 U.S.C. 7262(b)) by the registered public accounting firm that prepared or issued its audit report.   </span><span style="color:#000000;font-family:'Wingdings',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:IcfrAuditorAttestationFlag" format="ixt:fixed-true" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGV4dHJlZ2lvbjo5ZTJmMDg2N2Y3YTk0MWFkOGYzY2MzNDZhN2VkYTBiNl8zMzQy_794c0ed3-1d88-4dc2-a9a5-bc4837110b81">&#9746;</ix:nonNumeric></span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">If securities are registered pursuant to Section 12(b) of the Act, indicate by check mark whether the financial statements of the registrant included in the filing reflect the correction of an error to previously issued financial statements. &#9744;</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Indicate by check mark whether any of those error corrections are restatements that required a recovery analysis of incentive-based compensation received by any of the registrant&#8217;s executive officers during the relevant recovery period pursuant to &#167;240.10D-1(b). &#9744;</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Indicate by check mark whether the registrant is a shell company (as defined in Rule 12b-2 of the Act).    Yes </span><span style="color:#000000;font-family:'Wingdings',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:EntityShellCompany" format="ixt:fixed-false" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGV4dHJlZ2lvbjo5ZTJmMDg2N2Y3YTk0MWFkOGYzY2MzNDZhN2VkYTBiNl8zMzQ3_81c30324-b89f-46a7-8e17-7661c95df79e">&#168;</ix:nonNumeric></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;No </span><span style="color:#000000;font-family:'Wingdings',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#9746;</span></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The aggregate market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold on June 30, 2022 was $<ix:nonFraction unitRef="usd" contextRef="id9acdefd9f1a43fba69c41bb102d5560_I20220630" decimals="0" name="dei:EntityPublicFloat" format="ixt:num-dot-decimal" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGV4dHJlZ2lvbjo5ZTJmMDg2N2Y3YTk0MWFkOGYzY2MzNDZhN2VkYTBiNl8zMzQ4_4b2a6a09-8a85-47f3-8b2f-5f1122a7e09c">1,955,334,261</ix:nonFraction>.</span></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On </span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">February 15, 2023</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, the registrant had <ix:nonFraction unitRef="shares" contextRef="id2233e562f8d428397263474bb294e17_I20230215" decimals="INF" name="dei:EntityCommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGV4dHJlZ2lvbjo5ZTJmMDg2N2Y3YTk0MWFkOGYzY2MzNDZhN2VkYTBiNl8yODcw_cf4b0cdd-bc2e-4cc2-b53e-4fc329fc4be1">28,306,393</ix:nonFraction> shares of common stock, par value $0.01 per share, outstanding.</span></div><div style="margin-top:7pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">DOCUMENTS INCORPORATED BY REFERENCE</span></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:DocumentsIncorporatedByReferenceTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGV4dHJlZ2lvbjo5ZTJmMDg2N2Y3YTk0MWFkOGYzY2MzNDZhN2VkYTBiNl8zMzM4_2d4cafa9-ec74-431b-88a2-1091282f34ea" escape="true">Portions of the registrant&#8217;s Definitive Proxy Statement relating to the 2023 Annual Meeting of Stockholders are incorporated by reference into Part III of this Annual Report on Form 10-K where indicated. Such Definitive Proxy Statement will be filed with the Securities and Exchange Commission within 120 days after the end of the registrant&#8217;s fiscal year ended December&#160;31, 2022.</ix:nonNumeric></span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:98.900%"></td><td style="width:0.1%"></td></tr><tr style="height:3pt"><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td></tr></table></div><div><span><br/></span></div><div style="height:18pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><span><br/></span></div></div></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_7"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:8pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">TABLE OF CONTENTS</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:9.426%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:80.771%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:6.503%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">PART I</span></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-top:3pt;padding-left:2.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 1.</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_16">Business</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:2.25pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:none" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_16">1</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-top:3pt;padding-left:2.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 1A.</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-top:3pt"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_19">Risk Factors</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:2.25pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:none" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_19">11</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-top:3pt;padding-left:2.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 1B.</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-top:3pt"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_22">Unresolved Staff Comments</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:2.25pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:none" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_22">29</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-top:3pt;padding-left:2.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 2. </span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-top:3pt"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_25">Properties</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:2.25pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:none" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_25">30</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-top:3pt;padding-left:2.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 3.</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-top:3pt"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_28">Legal Proceedings</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:2.25pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:none" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_28">30</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-top:3pt;padding-left:2.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 4.</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-top:3pt"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_31">Mine Safety Disclosures</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:2.25pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:none" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_31">30</a></span></div></td></tr><tr style="height:14pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-top:3pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">PART II</span></div></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:2.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Item 5.</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_37">Market for Registrant&#8217;s Common Equity, Related Stockholder Matters and Issuer Purchases of Equity Securities</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:2.25pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:none" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_37">31</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:2.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Item 6.</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_40">[Reserved]</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:2.25pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:none" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_40">32</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:2.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Item 7.</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_46">Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:2.25pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:none" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_46">33</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:2.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Item 7A.</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_61">Quantitative and Qualitative Disclosures about Market Risk</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:2.25pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:none" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_61">46</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:2.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Item 8.</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_64">Financial Statements and Supplementary Data</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:2.25pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:none" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_64">47</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:2.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Item 9.</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_151">Changes in and Disagreements with Accountants on Accounting and Financial Disclosure</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:2.25pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:none" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_151">88</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:2.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Item 9A.</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_154">Controls and Procedures</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:2.25pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:none" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_154">88</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:2.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Item 9B.</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_157">Other Information</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:2.25pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:none" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_157">89</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Item 9C.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_160">Disclosure Regarding Foreign Jurisdictions that Prevent Inspections</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:2.25pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:none" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_160">89</a></span></div></td></tr><tr style="height:14pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">PART III</span></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:2.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Item 10.</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_169">Directors, Executive Officers and Corporate Governance</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:2.25pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:none" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_169">92</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:2.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Item 11.</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_172">Executive Compensation</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:2.25pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:none" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_172">92</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:2.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Item 12.</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_175">Security Ownership of Certain Beneficial Owners and Management and Related Stockholder Matters</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:2.25pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:none" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_175">92</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:2.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Item 13.</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_178">Certain Relationships and Related Transactions, and Director Independence</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:2.25pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:none" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_178">92</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:2.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Item 14.</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_181">Principal Accounting Fees and Services</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:2.25pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:none" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_181">92</a></span></div></td></tr><tr style="height:14pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">PART IV</span></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:2.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Item 15.</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_187">Exhibits and Financial Statement Schedule</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:2.25pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:none" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_187">93</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:2.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Item 16.</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_190">Form 10-K Summary</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:2.25pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:none" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_190">95</a></span></div></td></tr><tr><td colspan="6" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-top:7pt"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:none" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_193">SIGNATURES</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:2.25pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:none" href="#ifaaa61522ada4ef2b3459f1c02fd7df4_193">96</a></span></div></td></tr></table></div><div><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">i</span></div></div></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_10"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Information Regarding Forward-Looking Statements and Risk Factors Summary</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">This Annual Report on Form 10-K (&#8220;Form 10-K&#8221;) contains forward-looking statements within the meaning of the federal securities laws, including with respect to the housing market and the commercial market, industry and economic conditions, our financial and business model, payment of dividends, the potential impact of the ongoing COVID-19 pandemic, our efforts to navigate the material pricing environment, our ability to increase selling prices, supply chain and material constraints, our material and labor costs, demand for our services and product offerings, expansion of our national footprint and diversification, our ability to grow and strengthen our market position, our ability to pursue and integrate value-enhancing acquisitions, our ability to improve sales and profitability and expectations for demand for our services and our earnings in 2023. Forward-looking statements may generally be identified by the use of words such as &#8220;anticipate,&#8221; &#8220;believe,&#8221; &#8220;estimate,&#8221; &#8220;project,&#8221; &#8220;predict,&#8221; &#8220;possible,&#8221; &#8220;forecast,&#8221; &#8220;may,&#8221; &#8220;could,&#8221; &#8220;would,&#8221; &#8220;should,&#8221; &#8220;expect,&#8221; &#8220;intends,&#8221; &#8220;plan,&#8221; and &#8220;will&#8221; or, in each case, their negative, or other variations or comparable terminology. These forward-looking statements include all matters that are not historical facts. By their nature, forward-looking statements involve risks and uncertainties because they relate to events and depend on circumstances that may or may not occur in the future. Any forward-looking statements that we make herein and in any future reports and statements are not guarantees of future performance, and actual results may differ materially from those expressed in or suggested by such forward-looking statements as a result of various factors, including, without limitation, the adverse impact of the ongoing COVID-19 pandemic; general economic and industry conditions; increases in mortgage interest rates and rising home prices; inflation and interest rates; the material price and supply environment; the timing of increases in our selling prices; as well as the factors discussed in the &#8220;Risk Factors&#8221; section of this Form 10-K, as the same may be updated from time to time in our subsequent filings with the Securities and Exchange Commission ("SEC"). Any forward-looking statement made by the Company in this report speaks only as of the date hereof. New risks and uncertainties arise from time to time and it is impossible for the Company to predict these events or how they may affect it. The Company has no obligation, and does not intend, to update any forward-looking statements after the date hereof, except as required by federal securities laws.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Important factors that could cause our results to vary from expectations include, but are not limited to:</span></div><div style="margin-top:5pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">our dependence on the economy, the housing market, the level of new residential and commercial construction activity and the credit markets;</span></div><div style="margin-top:2pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">the cyclical and seasonal nature of our business;</span></div><div style="margin-top:2pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">declines in the economy or slowing of the housing market recovery that could lead to significant impairment charges;</span></div><div style="margin-top:2pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">the highly fragmented and competitive nature of our industry;</span></div><div style="margin-top:2pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">product shortages or the loss of key suppliers;</span></div><div style="margin-top:2pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">changes in the costs and availability of products;</span></div><div style="margin-top:2pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">our reliance on key personnel;</span></div><div style="margin-top:2pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">our ability to attract, train and retain qualified employees while controlling labor costs;</span></div><div style="margin-top:2pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">scrutiny and expectations from stakeholders regarding our environmental, social and governance ("ESG") practices;</span></div><div style="margin-top:2pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">a major pandemic or other public health issue and its effect on our business;</span></div><div style="margin-top:2pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">our exposure to severe weather conditions;</span></div><div style="margin-top:2pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">disruptions in our information technology systems, including cybersecurity incidents;</span></div><div style="margin-top:2pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">inability to continue to successfully expand into new products or geographic markets;</span></div><div style="margin-top:2pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">inability to successfully acquire and integrate other businesses;</span></div><div style="margin-top:2pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">inability to successfully expand into the commercial construction market or other lines of business, including our distribution businesses;</span></div><div style="margin-top:2pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">our exposure to claims arising from our operations;</span></div><div style="margin-top:2pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">changes in employment and/or immigration laws or failure to properly verify the employment eligibility of our employees;</span></div><div style="margin-top:2pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">our exposure to product liability, workmanship warranty, casualty, construction defect and other claims and legal proceedings;</span></div><div style="margin-top:2pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">changes in, or failure to comply with, federal, state, local and other laws, regulations or rules;</span></div><div style="margin-top:2pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">our ability to implement and maintain effective internal control over financial reporting; </span></div><div style="margin-top:2pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">our indebtedness and the restrictions imposed on us by its terms and our exposure to interest rate changes; </span></div><div style="margin-top:2pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">the reduction, suspension or elimination of dividend payments; </span></div><div style="margin-top:2pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">additional factors discussed under Item 1, Business; Item 1A, Risk Factors; and Part II, Item 7, Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations, of this Form 10-K; and</span></div><div style="margin-top:2pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">other factors that the Company may not have currently identified or quantified.</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">ii</span></div></div></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_13"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">PART I</span></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_16"></div><div style="margin-top:18pt;padding-left:54pt;text-indent:-54pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 1.&#160;&#160;&#160;&#160;Business </span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">OUR COMPANY</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Installed Building Products, Inc. (&#8220;IBP&#8221;) and its wholly-owned subsidiaries (collectively referred to as the &#8220;Company&#8221; and &#8220;we,&#8221; &#8220;us&#8221; and &#8220;our&#8221;) primarily install insulation for residential and commercial builders located in the continental United States. We are also a diversified installer of complementary building products including waterproofing, fire-stopping, fireproofing, garage doors, rain gutters, window blinds, shower doors, closet shelving and mirrors and other products. We offer our portfolio of services from our national network of over 230 branch locations serving all 48 continental states and the District of Columbia. In addition, two recently-acquired regional distribution operations serve the Midwest, Mountain West, Northeast and Mid-Atlantic regions of the United States, and we operate a cellulose manufacturing facility.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">IBP was formed as a Delaware corporation on October 28, 2011, however our business began in 1977 with one location in Columbus, Ohio. In the late 1990s, we began our acquisition strategy with the goal of creating a national platform and have grown to become one of the nation's largest installers of insulation in the residential new construction market. Since 1999, we have successfully completed and integrated over 180 acquisitions, which has allowed us to generate significant scale and to diversify our product offerings while expanding into some of the most attractive new construction markets in the United States. For a further discussion of our industry and trends affecting our industry, please refer to Item 7, Management&#8217;s Discussion and Analysis of Financial Condition, "Key Factors Affecting our Operating Results" of this Form 10-K.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">OUR OPERATIONS</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline">Segment Overview</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In early 2022, we realigned our operating segments to reflect recent changes in our business. All prior period amounts related to the segment changes have been retrospectively recast throughout this Annual Report on Form 10-K to conform to the new presentation. We have three operating segments consisting of our Installation, Distribution and Manufacturing operations. The Installation operating segment represents the majority of our net revenue and gross profit and forms our one reportable segment. See Note 11, Information on Segments, in Part II, Item 8, Financial Statements and Supplementary Data, of this Form 10-K for further information.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Installation Operating Segment</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Overview</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Substantially all of our Installation segment sales are derived from the service-based installation of various products in the residential new construction, repair and remodel and commercial construction end markets from our national network of branch locations. We estimate we have the number one or two market position for new single-family insulation installation in more than half of the markets in which we operate based on permits issued in those markets. We are committed to delivering quality installation with a commitment to safety, corporate social responsibility and total customer satisfaction.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We manage all aspects of the installation process for our customers, from our direct purchase and receipt of materials from national manufacturers to our timely supply of materials to job sites and quality installation. Installation of insulation is a critical phase in the construction process, as certain interior work cannot begin until the insulation phase passes inspection.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our business model is differentiated and creates value by streamlining the typical value chain. In a typical building products value chain, manufacturers rely on multiple distributors to purchase product. Distributors serve multiple wholesale and retail accounts who in turn sell to local contractors that perform the installation. We buy most of the products that we use in our business direct from manufacturers which are delivered to our local installation operations.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Insulation</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We are a provider of energy efficiency solutions to our customers through our primary line of business of installing insulation. Insulation installation comprised approximately 61% of our net revenue of $2.7 billion, $2.0 billion and $1.7 billion for the years ended December&#160;31, 2022, 2021 and 2020, respectively. We handle every stage of the installation process, including </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">1</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">material procurement, project scheduling and logistics, multi-phase professional installation, quality inspection, waste management and recycling.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Insulation Materials</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We offer a wide range of insulation materials consisting of:</span></div><div style="margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Fiberglass and Cellulose Insulation &#8211; Fiberglass insulation is made of fibrous glass that is held together by a thermoset resin creating insulating air pockets. It is typically comprised of an average of 50% recycled material, with some products containing up to 80% recycled material. It is primarily available in two forms: batts (also referred to as blankets) and loosefill (also referred to as blown in). Fiberglass is the most widely used residential insulation material in the United States. Cellulose insulation is made primarily of waste paper and cardboard and has a composition of at least 75% recycled content. Cellulose is only available in loosefill form and is blown into the structure with specialized equipment. Fiberglass and cellulose insulation accounted for approximately 83% of our insulation sales for the year ended December&#160;31, 2022.</span></div><div style="margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Spray Foam Insulation &#8211; Spray foam insulation, which is generally a polyurethane foam, is applied at a job site by mixing two chemical components together in specialized application equipment. While typically having the highest insulating value per inch and sealing effectiveness of all insulation materials that we offer, spray foam is also typically the most expensive on an installed basis. Spray foam insulation accounted for approximately 17% of our insulation sales for the year ended December&#160;31, 2022.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Insulation Installation Applications</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Local building codes typically require the installation of insulation in multiple areas of a structure. Each of these areas is frequently referred to as a phase of the insulation installation process and requires a separate trip to the job site by our installers at different points in the construction of a structure. Building practice and the inspection process differ geographically and require our involvement at different times during the construction process. We assist the builders with coordinating inspections. We install insulation and sealant materials in many areas of a structure, including:</span></div><div style="margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Basement and Crawl Space &#8211; These spaces often account for the second most energy loss in a residential structure.</span></div><div style="margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Building Envelope &#8211; We insulate the exterior walls of both residential and commercial structures by applying insulation on the wall or between the studs.</span></div><div style="margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Attic &#8211; We insulate the attics of new and existing residential structures. The attic is the area where the most energy may be lost in a home.</span></div><div style="margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Acoustical &#8211; Many builder or architect specifications call for acoustical insulation for sound reduction purposes in both residential and commercial structures. This product is generally installed in the interior walls to minimize sound transmission.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In each of these applications, we typically use fiberglass batts, except in attic installations where we typically install loosefill fiberglass or cellulose. We also install a wide variety of advanced caulk and sealant products that control air infiltration in residential and commercial buildings to enhance energy efficiency, improve comfort and meet increasingly stringent energy code requirements.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Waterproofing</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Some of our locations install waterproofing, caulking and moisture protection systems for commercial and industrial construction projects. We offer a variety of waterproofing options, including, but not limited to, sheet and hot applied waterproofing membranes, deck coating systems, bentonite systems and air &amp; vapor systems. The installation and service of waterproofing comprised approximately 5% of our net revenue for the year ended December&#160;31, 2022.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Shower Doors, Closet Shelving and Mirrors</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Some of our locations install a variety of shower enclosures, ranging from basic sliding door designs to complex custom designs. We have the ability to meet our customers&#8217; diverse needs by customizing shower enclosures by size and style according to their specifications, including framing, hardware and glass options. We design and install closet shelving systems </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">in select markets utilizing some of the highest quality products available from national brands. We also offer standard and custom designed mirrors for our customers. Shower doors, closet shelving and mirror installations comprised approximately 7% of our net revenue for the year ended December&#160;31, 2022.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Garage Doors</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Some of our locations install and service garage doors and openers for new residential construction builders, homeowners and commercial customers. We offer a variety of options from some of the best-known garage door brands. We offer steel, aluminum, wood and vinyl garage doors as well as opener systems. Unlike the other products we install, the garage door business has an ongoing aftermarket service component, which represented approximately one-quarter of the net revenue resulting from garage doors for the year ended December&#160;31, 2022. The installation and service of garage doors comprised approximately 6% of our net revenue for the year ended December&#160;31, 2022.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Rain Gutters</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Some of our locations install a wide range of rain gutters, which direct water from a home&#8217;s roof away from the structure and foundation. Rain gutters are typically constructed from aluminum or copper and are available in a wide variety of colors, shapes and widths. They are generally assembled on the job site using specialized equipment. The installation of rain gutters comprised approximately 4% of our net revenue for the year ended December&#160;31, 2022.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Fire-stopping and Fireproofing</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Some of our locations install fire-stopping systems, including fire-rated joint assemblies, perimeter fire containment, and smoke and fire containment systems. Fire-stopping is a passive fire protection approach that relies on compartmentalization of various building components, including fire-rated walls, joints, and floors. The installation of these products collectively comprised approximately 2% of our net revenue for the year ended December&#160;31, 2022.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Window Blinds</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Some of our locations install different types of window blinds, including cordless blinds, shades and shutters. The installation of window blinds comprised approximately 2% of our net revenue for the year ended December&#160;31, 2022.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Other Building Products</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Some of our locations install other complementary building products, none of which is an individually significant percentage of net revenue. Installation of other building products comprised approximately 7% of our net revenue for the year ended December&#160;31, 2022.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Distribution Operating Segment</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We recently acquired two businesses to create a new distribution platform. AMD Distribution, Inc. ("AMD") is headquartered in Spring Valley, Minnesota and has eight locations which includes distribution centers and bonded warehouses. These locations service several states throughout the Midwest and Mountain West. AMD distributes products and materials purchased wholesale from manufacturers such as spray foam insulation, metal building insulation, residential insulation, and mechanical and fabricated Styrofoam insulation. AMD sells to a diverse group of independent contractors of various sizes working on projects in the residential, commercial and agricultural markets. AMD is also a distributor of accessories and equipment used throughout the insulation installation process. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Central Aluminum Supply Corporation and Central Aluminum Supply of North Jersey, LLC (&#8220;CAS&#8221;) is a distributor of gutter supplies and accessories headquartered in Trenton, New Jersey. CAS has three locations which primarily sell to high-volume gutter installers and independent contractors in residential, multi-family and commercial markets. The products are primarily used in existing or retrofit construction projects across the Northeast and Mid-Atlantic regions. CAS purchases the majority of its finished painted aluminum from one supplier and is subject to the commodity pricing of aluminum metal.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our Distribution segment comprised approximately 5% of our net revenue for the year ended December&#160;31, 2022.</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">3</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Manufacturing Operating Segment</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our small manufacturing operation, Advanced Fiber Technology ("AFT"), operates in Bucyrus, Ohio producing cellulose insulation and specialty industrial fibers. Prior to 2022, this segment was previously combined with our Installation operating segment. AFT's primary product, cellulose insulation, is made of primarily wastepaper and helps reduce greenhouse emissions by reducing the wastepaper decomposing in landfills which releases methane and carbon dioxide gases. AFT sells its products to a wide range of customers including distributors, retailers and insulation contractors. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">This segment comprised approximately 1% of our net revenue for the year ended December&#160;31, 2022.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline">Sales and Marketing</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We seek to attract and retain customers through exceptional customer service, superior installation quality, broad service offerings and competitive pricing. Our strategy is centered on building and maintaining strong customer relationships. We also capitalize on cross-selling opportunities from existing customer relationships and identifying situations where customers may benefit from more than one of our installation service offerings. By executing this strategy, we believe we can continue to generate incremental sales volumes with new and existing customers.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Experienced sales and service professionals are important to our customer growth and increasing our profitability. Retaining and motivating local employees has been an important component of our acquisition and operating strategies. As of December&#160;31, 2022, we employed approximately 700 sales professionals and our sales force has spent an average of approximately ten years with our operations. The local sales staff, which is generally led by the branch manager, is responsible for maintaining relationships with our customers. These local teams work diligently to increase sales by supporting our existing customers with excellent service and value while also pursuing new customers with competitive offerings. In addition to the efforts of our sales staff, we market our product and service offerings on the internet, in the local yellow pages, on the radio and through advertisements in trade journals. We primarily conduct our marketing using local trademarks and trade names.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">COMPETITIVE ADVANTAGES</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We seek to differentiate ourselves in areas where we believe we have a competitive advantage, including:</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">National scale with a strong local presence. </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our national scale gives us access to the best products, training and innovation available, while our local teams provide best in class training and installation services and outstanding customer service. Our customers generally select their building products installer based on quality and timeliness of service, knowledge of local building codes, product application expertise, pricing, relationships and reputation in the market. For these reasons, we emphasize the importance of developing and maintaining strong customer relationships at the local level based on the knowledge and experience of our branch management and staff.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Diversified product lines, end markets and geographies. </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Diversifying our product line offerings provides us opportunity to increase sales to end customers and leverage our branch costs to improve profitability. We continue to generate revenue synergies by taking advantage of cross-selling opportunities with our existing customers in markets where we install multiple products. We have successfully diversified our product offering from the year ended December 31, 2013, when insulation installation comprised approximately 74% of revenues, to the year ended December&#160;31, 2022, when it comprised 61% of revenues. We service the residential new construction and repair and remodel markets, both of which consist of single-family and multi-family dwellings, as well as the commercial construction market. The multi-family subset of the residential end market can offset decreasing single-family demand during economic downturns. We have diversified our end customer demographic from the year ended December 31, 2013, when revenue from the commercial end market comprised approximately 11% of revenues, to the year ended December&#160;31, 2022 when it comprised 14% of revenues. Our exposure to commercial end markets diversifies our customer base and makes our business less dependent on residential new construction. Commercial construction is also driven by longer term projects which tends to provide greater revenue visibility. In periods of declining insulation installation volumes, our sales force is able to leverage our diversity of products and reduce the impact of lost insulation sales by growing sales of complementary building products, further enhancing our ability to perform. Distribution sales can also help offset decreasing sales in our installation segment. Our national geographic footprint provides us a balanced business not concentrated in any single region.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Engaged employees. </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We offer competitive benefits to our employees to ensure an engaged workforce. In addition to offering certain benefits to most employees, including medical insurance, 401k and paid time off, we also offer longevity stock awards, financial wellness training and savings matching in order to recruit and retain employees. Our retention efforts have reduced our employee turnover to a level below industry averages. Opportunity for professional growth, training and advancement are </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">4</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">strongly encouraged. We focus on the well-being of our employees through our Positive Production Program. This micro-video program is designed to help employees thrive in all aspects of life through learning and practicing research-backed physical, intellectual and emotional skills. Engaged, long-tenured employees benefit our business by being highly skilled and efficient, which drives profitability and encourages repeat business and customer loyalty. Higher employee retention also benefits our business through lower recruitment and training expense. We also consider safety and risk management to be a core business objective. Significant staffing, funding and other resources are allocated to our management systems that enhance safety and quality for our employees and our customers. Our branch managers are held accountable for the safety of employees and quality of workmanship at their locations. We provide our employees with ongoing training and development programs necessary to improve safety performance and work quality. Our regional managers, local branch managers and sales force have significant experience in the industry and have spent an average of more than 11 years with our operations. We also created the Installed Building Products Foundation in 2019 as a separate, not-for-profit organization to help support our employees for their education, financial and philanthropic needs. Our foundation also administers our employee financial assistance program to support our employees who experience financial hardship resulting from an unexpected emergency or disaster. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Financial strength, variable cost structure and strong free cash flow. </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We believe that we are among the most financially sound companies in our industry. We place an emphasis on having a strong balance sheet which allows us to focus on our strategic initiatives and pursue growth opportunities, drive profitability and generate cash. We have a highly variable cost structure with a significant portion of operating expenses directly linked to volume. Our largest expenses are materials and labor and most of our installation employees are paid by completed job. Our minimal capital expenditure requirements support the generation of strong free cash flow.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Execution excellence. </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We believe that our ability to consistently complete our installations within a customer&#8217;s production schedule is recognized by our customers and is a key component of our high level of service. We have a proven track record of customer satisfaction in managing all aspects of the installation process for our customers. Throughout the construction process, our branch sales and supervisory staff and installation teams make frequent site visits to ensure timely and proper installation and to provide general service support. We believe a high level of service is valued by our customers and generates customer loyalty.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Broad and stable customer base. </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We benefit from a diverse customer base that includes production and custom homebuilders, multi-family, commercial and agricultural construction firms, homeowners and residential repair and remodeling contractors. We continue to enhance our long-standing relationships with some of the largest builders in the country. While we serve many national and regional builders across multiple markets, we compete for business at the local level. Given our emphasis on quality service, customer turnover is extremely low.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Well established relationships with suppliers. </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have strong long-standing relationships with many of the manufacturers of the materials we use in our business, including the largest manufacturers of fiberglass and spray foam. The fiberglass insulation manufacturing market is highly consolidated and primarily served by four major manufacturers. We buy significant volume from all four manufacturers and have relationships with each company spanning more than two decades. Our national scale allows us to purchase volumes that account for a meaningful portion of the production for these suppliers allowing them to better plan their production schedules. Our relationships and purchasing power often allow us to negotiate preferred material supply terms and to keep purchases through distribution and retail to a minimum, giving us an advantage over our competitors. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Highly experienced and incentivized management team. </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our senior management team (Chief Executive Officer, Chief Financial Officer and Chief Operating Officer) have been directing our strategy for over two decades. This team has led us through multiple housing industry cycles, providing valuable continuity and a demonstrated ability to improve operations and grow our business both organically and through acquisitions.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">BUSINESS STRATEGY</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We believe our geographic footprint, long-standing relationships with national insulation manufacturers, streamlined value chain and proven track record of successful acquisitions provides us with opportunities for continued growth in our existing markets and expansion into new markets. We believe our continued emphasis on expanding our product offering, further expansion into the commercial construction market and other lines of business, and targeting geographies where we look to grow market share will reduce potential future cyclicality of our operations. Our current strategic objectives include:</span></div><div style="margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">capitalize on the new residential and large commercial construction markets;</span></div><div style="margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">continue to strengthen our market share position by working with the best customers. We seek to work with the most profitable and efficient builders and commercial general contractors in our markets;</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">5</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">recruit, develop and retain an exceptional workforce by investing in our employees and our communities and promoting a family-oriented culture;</span></div><div style="margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">capitalize on our ability to cross-sell products through existing markets as well as new markets entered as a result of organic expansion and acquisitions. In addition to insulation and air infiltration products, we install garage doors, rain gutters, mirrors and shower doors, waterproofing, fireproofing and fire-stopping, window blinds and various other products;</span></div><div style="margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">enhance profitability from our operating leverage and national scale;</span></div><div style="margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">continue expansion in the multibillion-dollar commercial end market. This strategy includes acquiring more locations to serve the large commercial market and increasing overall commercial sales at our existing new residential locations;</span></div><div style="margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">pursue value enhancing acquisitions in markets we currently serve as well as markets that are new to us by continuing our disciplined approach to valuations and pricing. We will continue to be selective in identifying acquisition targets at attractive multiples. We target profitable markets and companies with strong reputations and customer bases. As part of our acquisition strategy, we seek to maintain the management teams of the companies we acquire as well as retain their local branding, which further reduces associated risk; and</span></div><div style="margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">we integrate new acquisitions quickly and seamlessly into our corporate infrastructure, including our accounting and employee systems. In addition, we utilize our internal software technology, jobCORE, to integrate most acquired operations and provide in-depth branch-level operational and financial performance data. We realize near term margin enhancement and revenue growth at acquired branches by applying our national buying power and leveraging relationships with large national homebuilders.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">One of our key areas of focus has been diversifying our product and service offerings, customer base, and end markets. We have accomplished this through organic growth as well as acquisitions. We believe the benefits of this diversification include:</span></div><div style="margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Margin enhancement by leveraging branch costs across multiple products</span></div><div style="margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Diversified end-market exposure</span></div><div style="margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">A more diverse customer base</span></div><div style="margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Stronger established local relationships</span></div><div style="margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Reduced cyclicality</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Product and end market diversification has been a primary strategic initiative throughout our history. In addition to acquisition and local market share growth, we typically experience an increased rate of product and end market diversification during periods of reduced demand growth rates in the residential end market. As such, our oldest and most established branches tend to exhibit the greatest diversity of service and product offerings. This diversity in turn contributes to enhanced profitability as compared to branches in our newer, less developed markets.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Given the current economic uncertainty and inflationary environment, we can provide no assurance that the positive trends reflected in our recent financial and operating results will continue in 2023.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">TRENDS IN THE MARKETPLACE</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our business relies on various market factors, one of which is residential housing demand. Following the late 2000s recession in the U.S. economy, housing starts dropped well below historical averages. Rates returned to early 2000s levels in 2021 and 2022 as each year had 1.6 million non-seasonally adjusted starts. However, housing starts peaked in the first half of 2022 and overall fell by 3% in 2022 as compared to 2021. Starts are forecasted to fall to 1.3 million starts in 2023 according to Wolters Kluwer&#8217;s Blue Chip Economic Indicators January 2023 forecast which would be the fewest starts since 2018. High inflation, economic uncertainty and rising interest rates are the primary drivers behind the overall decrease in demand for new single-family homes forecasted in 2023. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">While we anticipate the decline in housing starts will impact our business negatively in 2023, we expect to benefit from our growing multi-family business in 2023 thanks to an extended backlog in this end market as well as housing shortages in some of the markets that we service. Commercial demand saw the least amount of growth of the end markets we serve in 2022 due to continued impacts from the COVID-19 pandemic ("COVID-19"). Construction cycle times continue to be lengthened due to </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">6</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">supply chain delays and disruptions, and the commercial sector is predicted to see a 3% decline in starts in 2023 over 2022, according to Dodge Data &amp; Analytics.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inflation can adversely affect us by increasing the costs of materials, labor and interest rates which, in turn, can have a negative impact on housing affordability, impacting consumer sentiment and increasing market uncertainty. Per the Bureau of Labor Statistics, inflation in the United States averaged 8.0% in 2022 as measured by the consumer price index. While this average rate is the highest annual rate since 1981, inflation rates showed signs of moderating in late 2022. The fast recovery in residential housing from the pandemic caused a strong demand surge in building materials that was unanticipated. When combined with the general inflationary environment, materials we buy and sell saw multiple increases in the last few years. However, we were able to mitigate most of these increases through selling price increase to our customers as evidenced by our increased gross margin. The increase in demand also caused significant shortages of many of the materials we install and sell. We expect pressures on material suppliers experienced in the last few years to alleviate in 2023 as home sales slow, allowing production cycle times to revert back to historic norms. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Federal Reserve aims to moderate and stabilize inflation as it has raised the federal funds rate multiple times in 2022 and has signaled plans to continue raising this rate throughout 2022 and into 2023. This caused the average mortgage rate in the United States to more than double since the end of 2021. Rising interest rates began to curtail housing demand in the second half 2022, reducing mortgage financing affordability. While we believe the demand for our installation services remains high due to the extended single family and multi-family construction industry backlog of both units under construction and units not started, we are seeing signs of a slowdown in homebuilding demand resulting from these risks as we head into 2023. </span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">SAFETY AND QUALITY CONTROL </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our quality control process starts with the initial proposal. Our sales staff and managers are knowledgeable about our service offerings and scope of work. They are trained on manufacturers&#8217; guidelines as well as state and local building codes. Our quality control programs emphasize onsite inspections, training by manufacturers and various certification programs.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We consider safety and risk management to be a core business objective and require our installers to wear personal protective equipment in the process of completing their work. Each year, we allocate significant staffing, funding and resources to our management systems that directly impact safety. We have strong workplace safety measures, including Safety Wanted 365, an initiative focused on creating a safer working environment to reduce job site injuries for both our employees and other jobsite personnel through year-round education and training. Additionally, our branch managers are held accountable for the safety of employees and quality of workmanship at their locations.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We track all incidents that occur on our job sites that could result in injury, including minor incidents that may not require first aid or medical treatment. We use this incident information to continually refine and develop our safety training programs for new hires and the continual training and safety knowledge throughout employment at IBP. We believe these programs are having a benefit on the safety and physical well-being of our employees. Total hours worked increased 10% from 2021 to 2022, while OSHA-defined incidents decreased by 15% during the same period, resulting in a decline in incident rate per hours worked of 22%. We also reported a 27% decrease in severe incidents from 2021 to 2022 as we had only 8 severe incidents in 2022. We had zero fatalities in 2020, 2021 and 2022, and are continually finding ways to improve our practices throughout the organization in order to improve the health and safety of our workforce.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">CUSTOMERS</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We serve a broad group of national, regional and local homebuilders, multi-family and commercial construction firms, individual homeowners and repair and remodeling contractors. Our top ten customers, which are primarily a combination of national and regional builders, accounted for approximately 16% of net revenue for the year ended December&#160;31, 2022. We install a variety of products in multiple markets for our largest customers, further diversifying our relationship with them. For example, our largest customer is independently serviced by 78 different IBP branches nationwide despite representing approximately 5% of net revenue for the year ended December&#160;31, 2022. While our largest customers are homebuilders, our customer base is also diverse. We work on a range of commercial projects including office buildings, airports, sports complexes, museums, hospitals, hotels and educational facilities. Of our top 20 customers, 19 represent homebuilders and one represents a commercial customer. We have long-term relationships with many of our customers and have served each of our top ten customers at least a decade.</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">7</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">BACKLOG</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For contracts that are not complete at the reporting date, we recognize revenue over time utilizing a cost-to-cost input method. When this method is used, we estimate the costs to complete individual contracts and record as revenue that portion of the total contract price that is considered complete based on the relationship of costs incurred to date to total anticipated costs. The costs of earned revenue include all direct material and labor costs and those indirect costs related to contract performance, such as indirect labor, supplies, tools and repairs. Backlog represents the transaction price for contracts for which work has not been performed and excludes unexercised contract options and potential modifications. Backlog is not a guarantee of future revenues as contractual commitments may change. There can be no assurance that backlog will result in revenues within the expected timeframe, if at all. We estimate backlog was $162.3 million as of December&#160;31, 2022 and we estimated it to be $143.2 million as of December&#160;31, 2021.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">SUPPLIERS</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have long-term relationships with many of our suppliers, and we purchase from manufacturers whenever possible to streamline the typical supply chain. As one of the largest purchasers of insulation in the United States, we believe that we maintain particularly strong relationships with the largest manufacturers of the products we use in our business. The proximity of certain of our branch locations to insulation manufacturers&#8217; facilities provides additional mutual benefits, including opportunities for cost savings and joint planning regarding future production. Due to the limited number of large fiberglass insulation manufacturers, our three largest suppliers in the aggregate accounted for approximately 33% of all material purchases for the year ended December&#160;31, 2022. We also believe that we maintain good relationships with suppliers of the non-insulation products we install. We have found that using multiple suppliers ensures a stable source of materials and favorable purchasing terms as suppliers compete to gain and maintain our business. In addition, our national purchasing volumes provide leverage with suppliers as we pursue additional purchasing synergies. In recent years, the industry experienced manufacturer supply constraints for some of the materials we purchase due to an unanticipated increase in demand as well as global supply chain bottlenecks caused by manufacturing curtailments due to COVID-19. We continue to face these challenges however we anticipate these impacts to lessen in 2023. See Part II, Item 7, Management's Discussion and Analysis of Financial Condition and Results of Operations, "Key Factors Affecting our Operating Results" of this Form 10-K for more information.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">SEASONALITY</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We typically have higher sales during the second half of the year as our homebuilder customers complete construction of homes placed under contract for sale in the traditionally stronger spring selling season. In addition, some of our larger branches operate in states impacted by winter weather and, as such, experience a slowdown in construction activity during the first quarter of the calendar year. This winter slowdown contributes to traditionally lower sales and profitability in our first quarter. As a result of this seasonal activity, our quarterly results of operations and financial position for any particular quarter are not necessarily representative of the results seen over a full fiscal year.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The composition and level of our working capital typically change during periods of increasing sales as we carry more inventory and receivables, although these changes are generally offset in part by higher trade payables to our suppliers. Working capital levels increase in the summer and fall seasons due to higher sales during the peak of residential construction activity. Typically, the subsequent collection of receivables and reduction in inventory levels during the winter months has positively impacted cash flow. In the past, we have from time to time utilized our borrowing availability under our credit facilities to cover short-term working capital needs.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">COMPETITION</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We believe that competition in our industry is based on quality and timeliness of service, knowledge of local building codes, pricing, relationships and reputation in the market. The building products installation industry is highly fragmented. The markets for our non-insulation installation services are even more fragmented than the markets for insulation installation services. Our competitors for our installation services include one other large national contractor, several large regional contractors and numerous local contractors, and our competitors for our distribution services include other distributors of building products, manufacturers of certain products we sell and select retail outlets. We expect to continue to effectively compete in our local markets given our long-standing customer relationships, access to capital, tenure and quality of local staff, quality installation reputation and competitive pricing.</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">8</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">HUMAN CAPITAL RESOURCES</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2022, we had approximately 10,300 employees, consisting of approximately 7,200 installers, approximately 700 sales professionals, approximately 700 production personnel and approximately 1,700 administrative and management personnel. Less than 4% of our employees are covered under collective bargaining agreements. We have never experienced a work stoppage or strike, and we believe that we have good relationships with our employees. We monitor certain financial and operational statistics related to our workforce. For example, we utilize sales per installer per business day to ensure we maintain the proper level of staffing to complete our jobs. We were successful in achieving higher productivity in 2022 as compared to 2021 as evidenced by our annual sales per average employee per business day increasing to approximately $1,400 from $1,200. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our employees are critical to our continued success and are our most important resource. We focus on attracting and retaining talented and experienced individuals to manage and support our operations. We consider retaining skilled employees to be a competitive advantage and employ various strategies to improve turnover metrics. Our turnover rate is typically better than industry averages. For example, across our installer base, we experienced average monthly turnover of 3.4% in 2022 compared with 4.4% for the U.S. construction industry, according to the U.S. Bureau of Labor Statistics. In addition, we offer many benefits and resources to most employees, some of which are above and beyond what others in our industry offer. See "Competitive Advantages, Engaged employees&#8221; above for further details on the benefits we offer. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As described in the Competitive Advantages section above, the Installed Building Products Foundation was formed by us in 2019 primarily to benefit our employees and their families and the communities in which they live and work. In 2022, the foundation and the Company awarded 256 grants and made contributions totaling $3.0 million in the form of scholarships and financial assistance to our employees as well as donations and matching gifts to various charities supported by our employees. This is an increase from 2019 when the foundation and the Company awarded 94 grants totaling $1.2 million.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our management team supports the development of our existing workforce by establishing a culture of employee engagement, employee appreciation and the opportunity for promotion from within for many leadership positions. We believe this provides increased retention and promotes a long-term focus to our operations.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We respect and support the diversity of all people within our workforce. We are committed to diversity, equity and inclusion ("DE&amp;I") practices and maintaining workplaces free from discrimination and harassment on the basis of race, color, age, religion, sex, national origin, ancestry, gender, sexual orientation, gender identification, disability, military status, veteran status, or any other status protected by law. We are proud of our strong and diverse workforce. Our Hispanic/Latino diversity outpaces the construction industry average, according to the Bureau of Labor Statistics, and our workforce as a whole is comprised of over 50% ethnic minorities. In addition, based on gender, racial, ethnic and orientation diversity, 44% of our board of directors is diverse, which helps drive our strategies for an inclusive workplace. We are committed in policy and practice to providing equal employment opportunities for all applicants and employees based upon their training, experience, and overall qualifications. Employees across all our branches are invited to participate in our regional and national DE&amp;I committees to determine the standards for how employees should interact with one another and their communities. We do not tolerate inappropriate behavior or harassment. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The health and safety of our employees is of primary importance. See &#8220;Safety and Quality Control&#8221; above for details on our policies and practices. Our policy is designed to protect against accidents, injuries, and illnesses, in compliance with applicable safety and health laws and regulations. In response to the COVID-19 pandemic, we continue to enhance and evolve our safety protocols to protect our employees&#8217; health and well-being, and to comply with regulations from federal, state and local government agencies. </span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">INFORMATION TECHNOLOGY</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">JobCORE is our web-enabled internal software technology used by the majority of our branches. The system is designed to operate our business in a highly efficient manner and manage our operations. The jobCORE software provides in-depth real-time job-level operational and financial performance data from each branch to the corporate office. JobCORE provides us, our branch managers and our sales personnel with an important operational tool for monitoring branch level performance. It assists management in assessing important business questions, including customer analysis, sales staff analysis, branch analysis and other operating activities.</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">9</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">INTELLECTUAL PROPERTY</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We possess intellectual property rights, including trademarks, trade names and know-how and other proprietary rights that are important to our business. In particular, we maintain registered trademarks and trade names, some of which are the trademarks and trade names under which many of our local branches operate and we own or have licensed rights to use jobCORE and other software used in the operation of our business. While we do not believe our business is dependent on any one of our trademarks or trade names, we believe that our trademarks and trade names are important to the development and conduct of our business as well as to the local marketing of our services. We also maintain domain name registrations for each of our local branch websites. We make efforts to protect our intellectual property rights, although the actions we take may be inadequate to prevent others from using similar intellectual property. In addition, third parties may assert claims against our use of intellectual property and we may be unable to successfully resolve such claims.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ENVIRONMENTAL, SOCIAL AND REGULATORY MATTERS</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As part of our commitment to socially responsible corporate practices, we have released our annual ESG report since 2021. This ESG report outlines our sustainability targets and objectives and can be found on our corporate website at https://installedbuildingproducts.com/sustainability. The contents of our website are not incorporated by reference in, or otherwise made a part of, this Form 10-K or in any other report or document we file with the SEC, and any references to our website are intended to be inactive textual references only.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Insulation is a critical component in reducing energy usage and greenhouse gas emissions. The Department of Energy, or DOE, states that over half of the energy used in the average American home is for heating and cooling due to many homes not having proper insulation. Per an insulation fact sheet provided by the DOE, inadequate insulation and air leakage are leading causes of energy waste in most homes. Through insulating homes and commercial structures, our industry promotes energy efficiency. Our loose-fill cellulose insulation is manufactured from recycled waste paper and our fiberglass insulation is made from recycled glass which helps reuse resources and reduce our global carbon footprint.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We are committed to socially responsible corporate practices. Through the Installed Building Products Foundation and other volunteer opportunities, we give back to the communities we serve. We also provide longevity stock awards and financial wellness training to our employees. We are subject to various federal, state and local laws and regulations applicable in the jurisdictions in which we operate, including laws and regulations relating to our relationships with our employees, public health and safety, workplace safety, transportation, zoning and fire codes. We strive to operate in accordance with applicable laws, codes and regulations.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We are responsible for adhering to several federal, state and local regulations covering building codes, compliance with COVID-19 restrictions, labor-related regulations covering minimum wage and employee safety, and transportation procedures. Our transportation operations are subject to the regulatory jurisdiction of the U.S. Department of Transportation, or DOT, which has broad administrative powers. We are also subject to safety requirements governing interstate operations prescribed by the DOT. In addition, vehicle dimension and weight and driver hours of service are subject to both federal and state regulation. Our operations are also subject to the regulatory jurisdiction of the U.S. Department of Labor&#8217;s Occupational Safety and Health Administration, or OSHA, which has broad administrative powers regarding workplace and jobsite safety.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our operations and properties are subject to federal, state and local laws and regulations relating to the use, storage, handling, generation, transportation, treatment, emission, release, discharge and disposal of hazardous or toxic materials, substances, waste and petroleum products and the investigation, remediation, removal and monitoring of the presence or release of such materials, substances, waste and petroleum products, including at currently or formerly owned or occupied premises and off-site disposal locations. We have not previously incurred material costs to comply with environmental laws and regulations. However, we could be subject to material costs, liabilities or claims relating to environmental compliance in the future, especially in the event of changes in existing laws and regulations or in their interpretation or enforcement.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As the nature of our business involves the use or handling of certain potentially hazardous or toxic substances, including spray foam applications and lead-based paint, we may be held liable for claims alleging injury or damage resulting from the release of or exposure to such substances, as well as claims relating to the presence of mold, fungal growth and moisture intrusion alleged in connection with our business activities. In addition, as owners and lessees of real property, we may be held liable for, among other things, releases of hazardous or toxic substances or petroleum products on, at, under or emanating from currently or formerly owned or operated properties, or any off-site disposal locations, or for any known or newly discovered environmental conditions at or relating to any of our properties, including those arising from activities conducted by previous occupants or at adjoining properties, without regard to whether we knew of or were responsible for such release. We may be required to investigate, remove, remediate or monitor the presence or release of such hazardous or toxic substances or petroleum products </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">10</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">and may be held liable by a governmental entity for fines and penalties or to any third parties for damages, including for bodily injury, property damage and natural resource damage in connection with the presence or release of hazardous or toxic substances or petroleum products.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">To date, costs to comply with applicable laws and regulations relating to pollution or the protection of human health and safety, the environment and natural resources have not had a material adverse effect on our financial condition or operating results, and we do not anticipate incurring material expenditures to comply with such laws and regulations in the current fiscal year.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In conjunction with our lease agreements and other transactions, we often provide reasonable and customary indemnities relating to various matters, including environmental issues. To date, we have not had to pay a material amount pursuant to any such indemnification obligations.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In addition, our suppliers are subject to various laws and regulations, including environmental laws and regulations. With our purchase of a cellulose manufacturer in November 2018, we are subject to similar laws and regulations that apply to our suppliers.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">CORPORATE AND AVAILABLE INFORMATION</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Installed Building Products, Inc. is a holding company that derives all of its operating income from its subsidiaries. Our principal executive offices are located at 495 South High Street, Suite 50, Columbus, Ohio 43215. Our main telephone number is (614) 221-3399. Our common stock is listed on the New York Stock Exchange, or NYSE, under the symbol &#8220;IBP.&#8221;</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We are subject to the reporting requirements of the Securities Exchange Act of 1934, as amended, or the Exchange Act, and file annual, quarterly and current reports, proxy statements and other information with the SEC. These filings are available to the public on the SEC&#8217;s website at http://www.sec.gov. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our corporate website is located at http://www.installedbuildingproducts.com, or http://www.ibp.com, and our investor relations website is located at http://investors.installedbuildingproducts.com. Copies of our Form 10-K, Quarterly Reports on Form 10-Q, Current Reports on Form 8-K, and amendments to these reports filed or furnished pursuant to Section 13(a) or 15(d) of the Exchange Act are available, free of charge, on our investor relations website as soon as reasonably practicable after we file such material with or furnish it electronically to the SEC.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We webcast our earnings calls and post the materials used in meetings with members of the investment community on our investor relations website. Additionally, we provide notifications of news or announcements regarding our financial performance, including SEC filings, investor events and press and earnings releases on our investor relations website. We have used, and intend to continue to use, our investor relations website as a means of disclosing material non-public information and for complying with disclosure obligations under Regulation FD. Further corporate governance information, including our certificate of incorporation, bylaws, governance guidelines, board committee charters and code of business conduct and ethics, is also available on our investor relations website under the heading &#8220;Corporate Governance.&#8221; The contents of our website are not incorporated by reference in, or otherwise made a part of, this Form 10-K or in any other report or document we file with the SEC, and any references to our website are intended to be inactive textual references only.</span></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_19"></div><div style="margin-top:18pt;padding-left:54pt;text-indent:-54pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 1A.&#160;&#160;&#160;&#160;Risk Factors</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There are a number of business risks and uncertainties that affect our business. These risks and uncertainties could cause our actual results to differ from past performance or expected results. We consider the following risks and uncertainties to be most relevant to our business activities. Additional risks and uncertainties not presently known to us, or that we currently believe to be immaterial, may also adversely impact our business, financial condition and results of operations. We urge investors to consider carefully the risk factors described below in evaluating the information contained in this report. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For a summary of the following risks, please see "Information Regarding Forward-Looking Statements and Risk Factors Summary" which appears immediately prior to Item 1, Business, of this Form 10-K.</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">11</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">RISKS RELATED TO OUR BUSINESS AND INDUSTRY</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Our business and the industry in which we operate are highly dependent on general and local economic conditions, the housing market, the level of new residential and commercial construction activity and other important factors, all of which are beyond our control.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our business is cyclical, seasonal and highly sensitive to economic and housing market conditions over which we have no control, including:</span></div><div style="margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">the number of new home and commercial building construction starts;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">short- and long-term interest rates;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">inflation;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">employment levels and job and personal income growth;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">housing demand from population growth, household formation and other demographic changes;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">housing affordability;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">rental housing demand;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">availability and cost of labor;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">availability and cost of land;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">changes in material prices;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">local zoning and permitting processes, including the length of building cycles from permit to completion, based on local economic or environmental factors;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">federal, state and local energy efficiency programs, regulations, codes and standards;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">availability and pricing of mortgage financing for homebuyers and commercial financing for developers of multi-family homes and commercial projects;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">foreclosure rates;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">consumer confidence generally and the confidence of potential homebuyers in particular;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">U.S. and global financial system and credit market stability;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">federal government economic, trade, and spending laws and policies;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">private party and government mortgage loan programs and federal and state regulation, oversight and legal action regarding lending, appraisal, foreclosure and short sale practices;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">federal and state personal income tax rates and provisions, including provisions for the deduction of mortgage loan interest payments, state and local income and real estate taxes and other expenses;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">general economic conditions, including in the markets in which we compete; and</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">pandemics, natural disasters, war, acts of terrorism and response to these events.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Unfavorable changes in any of the above conditions could adversely affect consumer spending, result in decreased demand for homes and adversely affect our business generally or be more prevalent or concentrated in particular markets in which we operate. Any deterioration in economic or housing market conditions or continuation of uncertain economic or housing market conditions could have a material adverse effect on our business, financial condition, results of operations and prospects.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">A continued downturn in the housing market could materially and adversely affect our business and financial results.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2022, the U.S. Census Bureau reported an estimated 1.55 million non-seasonally adjusted total housing starts, down from 1.60 million starts in 2021. Starts began decreasing in the second half of 2022 as the Federal Reserve began raising interest rates significantly throughout the year in an effort to slow increasing inflation rates, which ended 2022 averaging 8.0% according to the Bureau of Labor Statistics. This resulted in higher mortgage interest rates in the second half of 2022 and a lower estimate of housing starts for 2023 of 1.29 million, according to Blue Chip Economic Indicators. As a result, we began seeing a moderation in housing demand at the end of 2022 and into 2023. </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">12</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Any continued decline in new home construction may result in lower demand for our services and products and may materially adversely affect our business, financial condition, liquidity, results of operations and cash flows. In particular, continued increases in mortgage interest rates, rising home prices, sustained periods of inflation, or other economic factors can reduce home affordability and may lead to a continued decline in the home construction market. The demand for new home construction could be negatively impacted if the number of renting households increases or if a shortage in the supply of affordable housing occurs, either of which could result in lower home ownership rates. Demand can also be negatively impacted by changing consumer tastes and demographic changes. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Other factors that might impact growth in the homebuilding industry include: uncertainty in financial, credit and consumer lending markets amid slow growth or recessionary conditions; levels of mortgage repayment; limited credit availability; federal and state personal income tax rates and changes to the deductibility of certain state and local taxes; Federal Reserve policy changes; shortages of suitable building lots in many regions; shortages of experienced labor; soft housing demand in certain markets; and rising materials prices. Given these factors, we can provide no assurance that present growth trends will continue, whether overall or in our markets. The economic downturn in 2007-2010 severely affected our business. Another reduction in housing demand in the future could have a similar effect on our business.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Our business relies on commercial construction activity, which has faced significant challenges and is dependent on business investment.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A portion of the products we install and sell are for the commercial construction market. If this market does not grow in the future, the growth potential of our business, and our financial condition, results of operations and cash flows could be adversely affected. The commercial construction market, as measured by investment dollars, increased 7% in 2022 from 2021 per the U.S. Census Bureau but is still suffering from some inefficiencies and project delays stemming from the pandemic.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">According to Dodge Data &amp; Analytics, commercial building starts in 2023, measured by investment dollars, are expected to decrease 3% from 2022 while institutional building starts (a subset of the nonresidential construction market in which we participate) are expected to increase 1% from 2022.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The strength of the commercial construction market depends on business investment which is a function of many national, regional and local economic conditions beyond our control, including capital and credit availability for commercial construction projects, material costs, interest rates, employment rates, demand for office space due to COVID-19-related changes in employment practices, vacancy rates, labor and healthcare costs, fuel and other energy costs and changes in tax laws affecting the real estate industry. Adverse changes or continued uncertainty regarding these and other economic conditions could result in a decline or postponement in spending on commercial construction projects, which could adversely affect our financial condition, results of operations and cash flows.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Weakness in the commercial construction market would have a material adverse effect on our business, financial condition and operating results. Continued uncertainty about current economic conditions will continue to pose a risk to our businesses that serve the non-residential markets. If participants in these industries postpone spending in response to tighter credit, negative financial news and declines in income or asset values or other factors such as unfavorable news surrounding the COVID-19 pandemic, this could have a material negative effect on the demand for our products and services and on our business, financial condition and results of operations.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">A decline in the economy, a deterioration in expectations regarding the housing market or the commercial construction market, a failure to integrate acquisitions, especially within our distribution operations, and/or a general decline in operations or financial results of any of our segments could cause us to record significant non-cash impairment charges, which could negatively affect our earnings and reduce stockholders&#8217; equity.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We review the goodwill maintained in each of our three reporting units for impairment annually during the fourth quarter. We also review our goodwill and other intangible assets when events or changes in circumstances indicate the carrying value may not be recoverable. In doing so, we either assess qualitative factors or perform a detailed analysis to determine if it is more likely than not that the fair value of a reporting unit is less than its carrying amount. We did not record any goodwill impairment charges in 2022, 2021, or 2020; however, a decline in the expectation of our future performance, a decline in our market capitalization, sustained periods of economic inflation, a significant rise in interest rates, deterioration in expectations regarding the general economy and/or the timing and the extent of new home construction, home improvement and commercial construction activity may cause us to recognize non-cash, pre-tax impairment charges for goodwill or other long-lived assets, which are not determinable at this time. In addition, as a result of our acquisition strategy, we have recorded goodwill and may incur impairment charges in connection with prior and future acquisitions. Our recent distribution business acquisitions maintain significant goodwill balances in a separate reporting unit from our traditional installation business. If we are unable to successfully integrate this new platform into our business model and compete effectively, we may be required to recognize </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">13</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">impairment charges on our goodwill and other intangible assets within this reporting unit. If the value of goodwill or other intangible assets in this or other reporting units is impaired, our earnings and stockholders&#8217; equity would be adversely affected. As of December&#160;31, 2022, we had goodwill and other intangible assets in an aggregate amount of $657.0 million, or approximately 37% of our total assets, which is in excess of our stockholders&#8217; equity. </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Our industry is highly fragmented and competitive, and increased competitive pressure may adversely affect our business, financial condition, results of operations and cash flows.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The building products installation industry is highly fragmented and competitive. We face significant competition from other national, regional and local companies. Any of these competitors may: (i) foresee the course of market development more accurately than we do; (ii) offer services that are deemed superior to ours; (iii) sell building products and services at a lower cost; (iv) develop stronger relationships with homebuilders and suppliers; (v) adapt more quickly to new technologies, new installation techniques or evolving customer requirements; or (vi) have access to financing on more favorable terms than we can obtain in the market. As a result, we may not be able to compete successfully with them. If we are unable to compete effectively, our business, financial condition, results of operations and cash flows may be adversely affected.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In the event that increased demand leads to higher prices for the products we use in our business, we may have limited, if any, ability to pass on price increases in a timely manner or at all due to the fragmented and competitive nature of our industry. Residential homebuilders have, in the past, placed pressure on their suppliers to keep prices low, also contributing to the possibility of not being able to pass on price increases.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Product shortages or the loss of key suppliers could affect our business, financial condition, results of operations and cash flows.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our ability to offer a wide variety of products to our customers depends on our ability to obtain adequate product supply from manufacturers. We do not typically enter into long-term agreements with our suppliers but have done so from time to time. We currently have one short-term agreement with a supplier and may enter into other short- or long-term supply agreements at any time. We have certain agreements that do not qualify as supply agreements due to a lack of a fixed price and/or lack of a fixed and determinable purchase quantity, but nonetheless may require us to purchase certain of our products from certain vendors, depending on the specific circumstances. Generally, our products are available from various sources and in sufficient quantities to meet our operating needs. However, the loss of, or a substantial decrease in the availability of, products from our suppliers or the loss of key supplier arrangements could adversely impact our business, financial condition, results of operations and cash flows. Historically, unexpected events, such as incapacitation of supplier facilities due to extreme weather or fire, have temporarily reduced manufacturing capacity and production. During 2021 and 2022, we experienced multiple supply chain disruptions for certain materials we use in our business due to changing demand as well as the effects of the COVID-19 pandemic on the global supply chain. We expect these challenges to persist in 2023 but to a lesser degree. In addition, during prior economic downturns in the housing industry, manufacturers have reduced capacity by closing plants and production lines within plants. Even if such capacity reductions are not permanent, there may be a delay in manufacturers&#8217; ability to increase capacity in times of rising demand. If the demand for products from manufacturers and other suppliers exceeds the available supply, we may be unable to source additional products in sufficient quantity or quality in a timely manner and the prices for the products that we use in our business could rise. These developments could affect our ability to take advantage of market opportunities and limit our growth prospects. We continually evaluate our supplier relationships and at any given time may move some or all of our purchases from one or more of our suppliers. There can be no assurance that any such action would have its intended effect.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Failure by our suppliers to continue to provide us with products on commercially favorable terms, or at all, could have a material adverse effect on our operating margins, financial condition, operating results and/or cash flows. Our inability to source materials in a timely manner could also damage our relationships with our customers.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Changes in the costs of the products we use in our business, an inability to increase our selling prices or a delay in the timing of such increases can decrease our profit margins.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The principal building products we use in our business have been subject to price changes in the past, some of which have been significant. For example, sudden increased demand in our industry in 2021 and 2022 resulted in insulation material allocation throughout the industry and, as a result, increased market pricing which impacted our results of operations during that time. Increased market pricing, regardless of the catalyst, could impact our results of operations in the future to the extent that price increases cannot be passed on to our customers. We will continue to work with our customers to adjust selling prices to offset the aforementioned higher costs whenever prices rise, but there can be no assurance that any such action would have its intended effect. In addition, our results of operations for individual quarterly periods can be, and have been, adversely affected </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">14</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">by a delay between when building product cost increases are implemented and when we are able to increase prices for our products and services, if at all. Our supplier purchase prices often depend on volume requirements. If we do not meet these volume requirements, our costs could increase and our margins may be adversely affected. In addition, while we have been able to achieve cost savings through volume purchasing and our relationships with suppliers, we may not be able to continue to receive advantageous pricing for the products that we use in our business, which could have a material adverse effect on our financial condition, results of operations and cash flows.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Our success depends on our key personnel.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our business results depend largely upon the continued contributions of our senior management team. We do not have employment agreements with any of our executive officers other than Jeff Edwards, our Chairman, President and Chief Executive Officer. Although Mr. Edwards&#8217; employment agreement requires him to devote the amount of time necessary to conduct our business and affairs, he is also permitted to engage in other business activities that do not create a conflict of interest or substantially interfere with his service to us, including non-competitive operational activities for his real estate development business. If we lose members of our management team, our business, financial condition and results of operations, as well as the market price of our securities, could be adversely affected.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our business results also depend upon our branch managers and sales personnel, including those of companies recently acquired. While we customarily sign non-competition agreements, which typically continue for two years following the termination of employment, with our branch managers and sales personnel in order to maintain key customer relationships in our markets, such agreements do not protect us fully against competition from former employees. In addition, in January 2023, the Federal Trade Commission proposed a new rule that would prohibit non-competition agreements in most cases. If this rule, or a similar rule, were to become effective, it could have a material adverse effect on our retention of key employees and our customer relationships.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">We are dependent on attracting, training and retaining qualified employees while controlling labor costs.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The labor market for the construction industry is competitive, including within the sector in which we operate. We must attract, train and retain a large number of qualified employees to install our products while controlling related labor costs. We face significant competition for these employees from our industry as well as from other industries. Tighter labor markets may make it even more difficult for us to hire and retain installers and control labor costs. Our ability to attract qualified employees and control labor costs is subject to numerous external factors, including competitive wage rates and health and other insurance and benefit costs. Additionally, periods of economic inflation can cause wage expectations to increase and we may have difficulty retaining employees if we do not, or cannot, meet these expectations. A significant increase in competition, minimum wage or overtime rates in localities where we have employees could have a significant impact on our operating costs and may require that we take steps to mitigate such increases, all of which may cause us to incur additional costs, expend resources responding to such increases and lower our margins.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Higher labor and health care costs could adversely affect our business.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our labor costs have increased in recent years and may continue to increase as a result of competition, health and other insurance and benefit costs. In addition, health care coverage requirements, changes in workplace regulations and any future legislation could cause us to experience higher health care and labor costs in the future. Periods of economic inflation can cause these costs to rise more quickly and we may not be able to pass along these increased costs to our customers. Increased labor, health care and insurance costs could have an adverse effect on our business, financial condition and results of operations.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Variability in self-insurance liability estimates could adversely impact our results of operations.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We carry insurance for risks including, but not limited to, workers&#8217; compensation, general liability, vehicle liability, property and our obligation for employee-related health care benefits. In most cases, these risks are insured under high deductible and/or high-retention programs that require us to carry highly subjective liability reserves on our balance sheet. We estimate these insurance liabilities by considering historical claims experience, including frequency, severity, demographic factors and other actuarial assumptions, and periodically analyzing our historical trends with the assistance of external actuarial consultants. Our accruals for insurance reserves reflect these estimates and other management judgments, which are subject to variability. If our claim experience differs significantly from historical trends and actuarial assumptions and we then need to increase our reserves, our financial condition and results of operations could be adversely affected.</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">15</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Increases in union organizing activity and/or work stoppages could delay or reduce availability of products that we use in our business and increase our costs.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Currently, less than 4% percent of our employees are covered by collective bargaining or other similar labor agreements. However, if a larger number of our employees were to unionize, including in the wake of any future legislation that makes it easier for employees to unionize, or if we acquire an entity with a unionized workforce in the future, our business could be negatively affected. Any inability by us to negotiate collective bargaining arrangements could cause strikes or other work stoppages, and new contracts could result in increased operating costs. If any such strikes or other work stoppages occur, or if other employees become represented by a union, we could experience a disruption of our operations and higher labor costs.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We participate in various multiemployer pension plans under collective bargaining agreements in Washington, Oregon, California and Illinois with other companies in the construction industry. We also participate in various multiemployer health and welfare plans that cover both active and retired participants. These plans cover most of our union-represented employees. If a participating employer stops contributing to the multiemployer plan, the unfunded obligations of the plan may be borne by the remaining participating employers. In addition, if a participating employer chooses to stop participating in these multiemployer plans, the employer may be required to pay those plans a withdrawal liability based upon the underfunded status of the plan. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In addition, certain of our suppliers have unionized workforces and certain of our products are transported by unionized truckers. Strikes or work stoppages could result in slowdowns or closures of facilities where the products that we use in our business are manufactured or could affect the ability of our suppliers to deliver such products to us. Any interruption in the production or delivery of these products could delay or reduce availability of these products and increase our costs.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Increases in fuel costs could adversely affect our results of operations.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The price of oil has fluctuated over the last few years, creating volatility in our fuel costs. We do not currently hedge our fuel costs. Increases in fuel costs can negatively impact our cost to deliver our products to our customers and thus increase our cost of sales. If we are unable to increase the selling price of our products to our customers to cover any increases in fuel costs, net income may be adversely affected.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Because we operate our business through highly dispersed locations across the United States, our operations may be materially adversely affected by inconsistent practices and the operating results of individual branches may vary.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We operate our business through a network of highly dispersed locations throughout the United States, supported by executives and services at our corporate office, with local branch management retaining responsibility for day-to-day operations and adherence to applicable local laws. Our operating structure can make it difficult for us to coordinate procedures across our operations in a timely manner or at all. In addition, our branches may require significant oversight and coordination from our corporate office to support their growth. Inconsistent implementation of corporate strategy and policies at the local level could materially and adversely affect our overall profitability, business, results of operations, financial condition and prospects.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In addition, the operating results of an individual branch may differ from those of another branch for a variety of reasons, including market size, management practices, competitive landscape, regulatory requirements, state and local taxes and local economic conditions. As a result, certain of our branches may experience higher or lower levels of growth than other branches. Therefore, our overall financial performance and results of operations may not be indicative of the performance and results of operations of any individual branch.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">In the ordinary course of business, we are required to obtain performance bonds and licensing bonds, the unavailability of which could adversely affect our business, financial condition, results of operations and/or cash flows.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We are often required to obtain performance bonds and licensing bonds to secure our performance under certain contracts and other arrangements. In addition, the commercial construction end market also requires higher levels of performance bonding.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our ability to obtain performance bonds and licensing bonds primarily depends on our credit rating, capitalization, working capital, past performance, management expertise and certain external factors, including the overall capacity of the surety market and the underwriting practices of surety bond issuers. The ability to obtain performance bonds and licensing bonds can also be impacted by the willingness of insurance companies to issue performance bonds and licensing bonds. If we are unable to obtain performance bonds and licensing bonds when required, our business, financial condition, results of operations and/or cash flows could be adversely impacted.</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">16</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Increasing scrutiny and changing expectations from stakeholders regarding our ESG practices may impose additional costs on us or expose us to new or additional risks.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Investor advocacy groups, certain institutional investors, investment funds, lenders and other market participants, shareholders, and customers have focused increasingly on the ESG or &#8220;sustainability&#8221; practices of companies and have placed increasing importance on the social cost of their investments. If our ESG practices do not meet investor, lender, or other industry stakeholder expectations and standards, which continue to evolve, our access to capital may be negatively impacted based on an assessment of our ESG practices. These limitations, in both the debt and equity markets, may negatively affect our ability to manage our liquidity, our ability to refinance existing debt, grow our businesses, implement our strategies, our results of operations, and the price of our common stock.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have released our ESG report annually since 2021. The report includes our policies and practices on a variety of social and environmental matters, including, diversity and inclusion initiatives, training and development programs, and employee health and safety practices as well as other sustainable business practices and environmental targets. It is possible that stakeholders may not be satisfied with our ESG practices or the speed of their adoption. We could also incur additional costs and require additional resources to monitor, report, and comply with various ESG practices. Also, our failure, or perceived failure, to meet the standards or targets set forth in the sustainability report could negatively impact our reputation and stock price, employee retention, and the willingness of our customers and suppliers to do business with us.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">RISKS TO OUR BUSINESS FROM EXTERNAL THREATS</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">A major pandemic or other public health issue could adversely impact the U.S. economy as well as our business, financial condition, operating results and cash flows.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The United States has experienced, and may experience again in the future, outbreaks of contagious diseases that affect public health and public perception of health. For example, the COVID-19 pandemic continues to affect the global economy causing significant volatility, uncertainty and supply chain disruption. The industry in which we operate continues to experience effects of the COVID-19 pandemic such as manufacturer supply constraints for many of the materials we use in our business and tightness in the labor markets. These factors affected our ability to complete installation work for certain customers and also required us to source many of the materials we install from distributors and retail outlets at a premium. These higher costs had an adverse impact on our financial condition, operating results and cash flows in the previous three fiscal years. For example, we estimate our cost of sales for the year ended December 31, 2022 were approximately $4.8&#160;million higher than they would have been if we purchased these materials through regular channels. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Commercial projects could decline in the future if consumer behaviors change in the wake of COVID-19 or other public health disruptions to the economy and changes to our general ways of life. For example, reduced demand for office buildings, decreased airport traffic or decreased usage of sports arenas could continue to impact our commercial end market. The COVID-19 pandemic has amplified existing risks or introduced new risks that could adversely affect our business, including, but not limited to, internal controls and cybersecurity risks.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Considerable uncertainty still surrounds COVID-19 and its variants and its duration and potential effects, as well as the extent of, and effectiveness of, any responses taken on a local, national and global level. While we expect the COVID-19 pandemic and related events may have a negative effect on us in the future, the full extent and scope of the impact on our business and industry, as well as national, regional and global markets and economies, depends on numerous evolving factors that we may not be able to accurately predict, including the duration and scope of the pandemic, additional government actions taken in response to the pandemic, the impact on construction activity and demand for homes (based on employment levels, consumer spending and consumer confidence). Accordingly, our ability to conduct our business in the manner previously or currently expected could be materially and negatively affected, any of which could have a material adverse impact on our business, financial condition, operating results and cash flows.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Our business is seasonal and may be affected by adverse weather conditions, climate change, natural disasters or other catastrophic events.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We tend to have higher sales during the second half of the year as our homebuilder customers complete construction of homes placed under contract for sale in the traditionally stronger spring selling season. In addition, some of our larger branches operate in states impacted by winter weather and, as such, experience a slowdown in construction activity during inclement months. This winter slowdown contributes to traditionally lower sales and profitability in our first quarter.</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">17</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In addition, climate change and/or adverse weather conditions, such as unusually prolonged cold conditions, rain, blizzards, hurricanes, earthquakes, fires, other natural disasters, epidemics or other catastrophic events could accelerate, delay or halt construction or installation activity or impact our suppliers. The impacts of climate change may subject us to increased costs, regulations, reporting requirements, standards or expectations regarding the environmental impacts of our business. Most, if not all, of our locations may be vulnerable to the adverse effects of climate change. Changing market dynamics, global policy developments and increasing frequency and impact of extreme weather events on the U.S. and elsewhere have the potential to disrupt our business. The impact of these types of events on our business may adversely impact quarterly or annual net revenue, cash flows from operations and results of operations. Weather is one of the main reasons for annual seasonality cycles of our business, and any adverse weather conditions can enhance this seasonality.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">We may be adversely affected by disruptions in our information technology systems.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our operations are dependent upon our information technology systems, including our web-enabled internal software technology, jobCORE. The jobCORE software provides in-depth operational and financial performance data from individual branch locations to the corporate office. We rely upon such information technology systems to manage customer orders on a timely basis, coordinate our sales and installation activities across locations and manage invoicing. As a result, the proper functioning of our information technology systems is critical to the successful operation of our business. Although our information technology systems are protected through physical and software safeguards, our information technology systems are still vulnerable to natural disasters, power losses, unauthorized access, delays and outages in our service, system capacity limits from unexpected increases in our volume of business, telecommunication failures, computer viruses and other problems. A substantial disruption in our information technology systems for any prolonged time period could result in delays in receiving inventory and supplies or installing our products on a timely basis for our customers, which could adversely affect our reputation and customer relationships.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">In the event of a cybersecurity incident, we could experience operational interruptions, incur substantial additional costs, become subject to legal or regulatory proceedings or suffer damage to our reputation.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In addition to the disruptions that may occur in our information technology systems, cybersecurity threats and sophisticated and targeted cyberattacks pose a risk to our information technology systems. We have established security policies, processes and defenses designed to help identify and protect against intentional and unintentional misappropriation or corruption of our information technology systems and information and disruption of our operations. Despite these efforts, our information technology systems, including but not limited to jobCORE or other operational systems, financial systems, Human Resource and payroll systems, fleet management software, and risk management systems may be damaged, disrupted or shut down due to attacks by unauthorized access, malicious software, computer viruses, undetected intrusion, hardware failures or other events, and in these circumstances our disaster recovery plans may be ineffective or inadequate. These breaches or intrusions could lead to business interruption, exposure of proprietary or confidential information, data corruption, damage to our reputation, exposure to legal and regulatory proceedings and other costs. Such events could have a material adverse impact on our financial condition, results of operations and cash flows. In addition, we could be adversely affected if any of our significant customers or suppliers experiences any similar events that disrupt their business operations or damage their reputation.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As cyberattacks become more sophisticated generally, we may be required to incur significant costs to strengthen our systems to protect against outside intrusions and/or continue to maintain insurance coverage related to the threat of such attacks. The increased use of remote work environments, due to the COVID-19 pandemic, may increase our risk of cyberattacks or data breaches. While we have invested in industry appropriate protections and monitoring practices of our data and information technology to reduce these risks and test our systems on an ongoing basis for any current or potential threats, there can be no assurance that our efforts will prevent breakdowns or breaches of our or our third-party providers&#8217; databases or systems that could adversely affect our business.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We carry cybersecurity insurance to help mitigate the financial exposure and related notification procedures in the event of intentional intrusion. The measures that we implement to reduce and mitigate these risks may not be effective. While to date these threats have not had a material impact on our business or operations, if such an event occurred, it could have a material adverse effect on our business, financial condition, results of operations and cash flows.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Terrorist attacks or acts of war against the United States or increased domestic or international instability could have an adverse effect on our operations.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Adverse developments in the war on terrorism, terrorist attacks against the United States or any outbreak or escalation of hostilities between the United States and any foreign power may cause disruption to the economy. Since our business is dependent on the housing and construction industries, such adverse effects on the economy could negatively affect these </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">18</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">industries and, therefore, our business, our employees and our customers, which could negatively impact our financial condition and results of operations.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">RISKS ASSOCIATED WITH OUR GROWTH STRATEGY</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">We may not be able to continue to successfully expand into new products or geographic markets and further diversify our business, which could negatively impact our future sales and results of operations.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Generally, we seek to acquire businesses that will complement, enhance, or expand our current business or product offerings, or that might otherwise offer us growth opportunities into new or existing lines of business, including the expansion of our national footprint and end markets. Our business depends in part on our ability to diversify and grow our businesses and also expand the types of complementary building products that we install and sell. Our product and geographic expansion may not be successful and may not deliver expected results, which could negatively impact our future sales and results of operations.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our expansion into new geographic markets may present competitive, local market and other challenges that differ from current ones. We may be less familiar with the target customers and may face different or additional risks, as well as increased or unexpected costs, compared to existing operations. Expansion into new geographic markets may also bring us into direct competition with companies with whom we have little or no past experience as competitors. To the extent we rely upon expansion into new geographic markets for growth and do not meet the new challenges posed by such expansion, our future sales growth could be negatively impacted, our operating costs could increase, and our business operations and financial results could be adversely affected.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">We may be unable to successfully acquire and integrate other businesses and realize the anticipated benefits of acquisitions.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Acquisitions are a core part of our strategy and we may be unable to continue to grow our business through acquisitions. In addition, acquired businesses may not perform in accordance with expectations, and our business judgments concerning the value, strengths and weaknesses of acquired businesses may not prove to be correct. We may also be unable to achieve expected improvements or achievements in businesses that we acquire. The value of our common stock following the completion of an acquisition could be adversely affected if we are unable to realize the expected benefits from the acquisition on a timely basis or at all. Future acquisitions may result in the incurrence of debt and contingent liabilities, legal liabilities, goodwill impairments, increased interest expense and amortization expense and significant integration costs. In addition, future acquisitions could result in dilution of existing stockholders if we issue shares of common stock as consideration.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Acquisitions involve a number of special risks, including:</span></div><div style="margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">our inability to manage acquired businesses or control integration costs and other costs relating to acquisitions;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">potential adverse short-term effects on operating results from increased costs, business disruption or otherwise;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">diversion of management&#8217;s attention;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">loss of suppliers, customers or other significant business partners of the acquired business;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">failure to retain existing key personnel of the acquired business and recruit qualified new employees at the location;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">failure to successfully implement infrastructure, logistics and systems integration;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">potential impairment of goodwill and other intangible assets;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">risks associated with new lines of business and business models;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">risks associated with the internal controls of acquired businesses;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">exposure to legal claims for activities of the acquired business prior to acquisition and inability to realize on any indemnification claims, including with respect to environmental and immigration claims;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">the risks inherent in the systems of the acquired business and risks associated with unanticipated events or liabilities; and</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">our inability to obtain financing necessary to complete acquisitions on attractive terms or at all.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our strategy could be impeded if we do not identify, or face increased competition for, suitable acquisition candidates and our business, financial condition, results of operations and cash flows could be adversely affected if any of the foregoing factors were to occur.</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">19</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Our continued expansion into the commercial construction end market could affect our revenue, margins, financial condition, operating results and cash flows.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our existing branches or any branches we may start or acquire serving the commercial end market involve competitive, operational, financial and accounting challenges and other risks that differ from our traditional residential installation business. In addition, the typical contractual terms and arrangements and billing cycle for the commercial construction end market are different than the residential new construction end market. Our expansion into this market may include opening new branches that have higher start-up costs compared to our acquired branches. These factors and any other challenges we encounter could adversely affect our margins, financial condition, operating results and cash flows.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2022, our estimated backlog associated with the commercial end market was approximately $162.3 million. In accordance with industry practice, many of our contracts are subject to cancellation, reduction, termination or suspension at the discretion of the customer in respect of work that has not yet been performed. In the event of a project cancellation, we would generally have no contractual right to the total revenue reflected in our backlog but instead would collect revenues in respect of all work performed at the time of cancellation as well as all other costs and expenses incurred by us through such date. Projects can remain in backlog for extended periods of time because of the nature of the project, delays in execution of the project and the timing of the particular services required by the project. Additionally, the risk of contracts in backlog being cancelled, terminated or suspended generally increases at times, including as a result of periods of widespread macroeconomic and industry slowdown, weather, seasonality and many of the other factors impacting our business. For example, the COVID-19 pandemic resulted in the starts of certain long-term contracts being delayed. Many of the contracts in our backlog are subject to changes in the scope of services to be provided as well as adjustments to the costs relating to the contracts. The revenue for certain contracts included in backlog are based on estimates. Therefore, the timing of performance on our individual contracts can affect our margins and future profitability. There can be no assurance that backlog will result in revenues within the expected timeframe, if at all.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Our distribution businesses and continued expansion into other new lines of business could affect our revenue, margins, financial condition, operating results and cash flows.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We recently acquired two distribution entities operating under different business models than our traditional installation business. The new distribution businesses and any other future lines of business we may enter or acquire involve competitive, operational, financial and accounting challenges and other risks that differ from our traditional residential installation business. For example, particular commodity pricing can affect selling prices and costs for certain products we sell through distribution. Our expansion into these businesses may include opening new branches that have higher start-up costs compared to our acquired branches. These factors and any other challenges we encounter could adversely affect our margins, financial condition, operating results and cash flows.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In addition, a significant period of economic deflation could have an adverse impact on our business and financial results. Our recent acquisitions of two distribution businesses have substantially increased our inventory balances, and deflation could cause the value of our inventories to decline. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Certain products our distribution businesses sell are composed of materials with prices that fluctuate based on current market pricing. Fluctuations in market pricing of these materials can affect our selling prices. For example, one of our distribution businesses uses aluminum in many of its products. Aluminum commodity prices experienced a significant decrease during 2022 which reduced our selling prices while related inventory costs remained high. This led to a temporary decrease in margins, financial condition, operating results and cash flows for this business until inventory costs began to reflect current market pricing in late 2022.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Our customers could purchase materials directly from manufacturers or other sources.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We do not have any exclusivity agreements with the manufacturers of the products that we sell. The manufacturers from whom we acquire products could decide to sell their own products, impacting our ability to grow our business and negatively affecting our future net sales and earnings. Additionally, if we are unable to secure favorable arrangements on the products we sell from our suppliers, we may not be able to offer competitive pricing to our customers. </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">We may be subject to claims arising from the operations of our various businesses for periods prior to the dates we acquired them.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have consummated over 180 acquisitions. From time to time we are subject to claims or liabilities arising from the ownership or operation of acquired businesses for the periods prior to our acquisition of them, including environmental, employee-related and other liabilities and claims not covered by insurance. Any future claims or liabilities could be significant. </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">20</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our ability to seek indemnification from the former owners of our acquired businesses for these claims or liabilities may be limited by various factors, including the specific time, monetary or other limitations contained in the respective acquisition agreements and the financial ability of the former owners to satisfy our indemnification claims. In addition, insurance companies may be unwilling to cover claims that have arisen from acquired businesses or locations, or claims may exceed the coverage limits that our acquired businesses had in effect prior to the date of acquisition. If we are unable to successfully obtain insurance coverage of third-party claims or enforce our indemnification rights against the former owners, or if the former owners are unable to satisfy their obligations for any reason, including because of their financial position, we could be held liable for the costs or obligations associated with such claims or liabilities, which could adversely affect our financial condition and results of operations.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">LEGAL AND REGULATORY RISKS</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Changes in employment laws may adversely affect our business.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Various federal and state labor laws govern the relationship with our employees and impact operating costs. These laws include:</span></div><div style="margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">employee classification as exempt or non-exempt for overtime and other purposes;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">workers&#8217; compensation rates;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">immigration status;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">mandatory health benefits;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">tax reporting; and</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">other wage and benefit requirements.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have significant exposure to changes in laws governing our relationships with our employees, including wage and hour laws and regulations, fair labor standards, minimum wage requirements, overtime pay, unemployment tax rates, workers&#8217; compensation rates, citizenship requirements and payroll taxes, which likely would have a direct impact on our operating costs. Significant additional government-imposed increases in the preceding areas could have a material adverse effect on our business, financial condition and results of operations.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Our business could be adversely affected by changes in immigration laws or failure to properly verify the employment eligibility of our employees.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Some states in which we operate are considering or have already adopted new immigration laws or enforcement programs, and the federal government from time to time considers and implements changes to federal immigration laws, regulations or enforcement programs. These changes may increase our compliance and oversight obligations, which could subject us to additional costs and make our hiring process more cumbersome, or reduce the availability of potential employees. Although we verify the employment eligibility status of all our employees, including through participation in the &#8220;E-Verify&#8221; program in the states that require it, some of our employees may, without our knowledge, be unauthorized workers. In addition, use of the &#8220;E-Verify&#8221; program does not guarantee that we will properly identify all applicants who are ineligible for employment. Unauthorized workers are subject to deportation and may subject us to fines or penalties and, if any of our workers are found to be unauthorized, we could experience adverse publicity that negatively impacts our brand and may make it more difficult to hire and retain qualified employees. Termination of a significant number of employees due to work authorization or other regulatory issues may disrupt our operations, cause temporary increases in our labor costs as we train new employees and result in additional adverse publicity. We could also become subject to fines, penalties and other costs related to claims that we did not fully comply with all recordkeeping obligations of federal and state immigration laws. These factors could have a material adverse effect on our reputation, business, financial condition and results of operations.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Furthermore, immigration laws have been an area of considerable political focus in recent years, and the U.S. Congress, Department of Homeland Security and the Executive Branch of the U.S. government from time to time consider or implement changes to federal immigration laws, regulations or enforcement programs. Changes in immigration or work authorization laws may increase our obligations for compliance and oversight, which could subject us to additional costs and potential liability and make our hiring process more cumbersome, or reduce the availability of potential employees. We are subject to regulations of U.S. Immigration and Customs Enforcement, or ICE, and Department of Labor, and we are audited from time to time by these parties for compliance with work authentication requirements. While we believe we are in compliance with applicable laws and regulations, if we are found not to be in compliance as a result of any audits, we may be subject to fines or other remedial actions.</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">21</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Our results of operations, financial condition and cash flows could be adversely affected if pending or future legal claims against us are not resolved in our favor.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We are subject to various claims and lawsuits arising in the ordinary course of business, including wage and hour lawsuits. The ultimate resolution of these matters is subject to inherent uncertainties. It is possible that the costs to resolve these matters could have a material adverse effect on our results of operations, financial condition or cash flows for the periods in which the matters are resolved. Similarly, if additional claims are filed against us in the future, the negative outcome of one or more of such matters could have a material adverse effect on our results, financial condition and cash flows.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">The nature of our business exposes us to product liability, workmanship warranty, casualty, negligence, health and safety incidents, construction defect, breach of contract and other claims and legal proceedings.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We are subject to product liability, workmanship warranty, casualty, negligence, construction defect, breach of contract and other claims and legal proceedings relating to the products we install or manufacture that, if adversely determined, could adversely affect our financial condition, results of operations and cash flows. We rely on manufacturers and other suppliers to provide us with most of the products we use in our business. Other than for our manufacturer of cellulose insulation, we do not have direct control over the quality of such products manufactured or supplied by such third-party suppliers. As such, we are exposed to risks relating to the quality of such products.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In addition, we are exposed to potential claims arising from the conduct of our employees, homebuilders and other subcontractors, for which we may be contractually liable. We have in the past been, and may in the future be, subject to fines, penalties and other liabilities in connection with injury or damage incurred in conjunction with the installation of our products. Construction sites are inherently dangerous, and any failure in health and safety performance may have adverse effects on our reputation and relationships with our employees or customers. The nature and extent to which we use hazardous or flammable materials in our manufacturing processes creates risk of damage to persons and property that, if realized, could be material. Although we currently maintain what we believe to be suitable and adequate insurance, we may be unable to maintain such insurance on acceptable terms or such insurance may not provide adequate protection against potential liabilities. In addition, some liabilities may not be covered by our insurance. We maintain our Safety Wanted 365 program to help reduce jobsite, warehouse and plant injuries. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Product liability, workmanship warranty, casualty, negligence, construction defect, breach of contract and other claims and legal proceedings can be expensive to defend and can divert the attention of management and other personnel for significant periods of time, regardless of the ultimate outcome. In addition, lawsuits relating to construction defects typically have statutes of limitations that can run as long as ten years. Claims of this nature could also have a negative impact on customer confidence in us and our services. Current or future claims could have a material adverse effect on our reputation, business, financial condition and results of operations. For additional information, see <span id="i65e72af1b9cc49528084226f3bfce660_256674"></span>Note 17, Commitments and Contingencies, in Part II, Item 8, Financial Statements and Supplementary Data, of this Form 10-K.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Federal, state, local and other laws and regulations could impose substantial costs and/or restrictions on our operations and could adversely affect our business.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We are subject to various federal, state, local and other laws and regulations, including, among other things, worker and workplace health and safety regulations promulgated by the OSHA, employment regulations promulgated by the U.S. Equal Employment Opportunity Commission and tax regulations promulgated by the Internal Revenue Service and various other state and local tax authorities. Our primary manufacturing facility is also subject to additional laws and regulations which may increase our exposure to health and safety liabilities. In addition, we are subject to increased regulation of data privacy and information security, including the adoption of more stringent state laws, including the California Privacy Rights Act and the Virginia Consumer Data Protection Act, which went into effect in January 2023. These types of data privacy and security laws, which continue to evolve, create a range of new compliance obligations for us and increase financial penalties for non-compliance. Additional or more burdensome regulatory requirements in these or other areas may increase our expenses, reduce demand for our services or restrict our ability to offer services in certain geographies, all of which could adversely affect our business, financial condition, results of operations and cash flows. Moreover, our failure to comply with any of the regulatory requirements applicable to our business could subject us to substantial fines and penalties that could adversely affect our business, financial condition, results of operations and cash flows.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our transportation operations, which we depend on to transport materials from our locations to job sites or customers, are subject to the regulatory jurisdiction of the DOT. The DOT has broad administrative powers with respect to our transportation operations. More restrictive limitations on vehicle weight and size, trailer length and configuration or driver hours of service would increase our costs, which may increase our expenses and adversely affect our financial condition, operating results and/or cash flows. If we fail to comply with DOT regulations or the regulations become more stringent, we could experience </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">22</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">increased inspections, regulatory authorities could take remedial action, including imposing fines or shutting down our operations, and we could be subject to increased audit and compliance costs. We organize our transportation operations as a separate legal entity in certain states, including Ohio and Indiana, to take advantage of sales tax exemptions relating to vehicle operating costs. If legislation is enacted that modifies or eliminates these exemptions, our costs may increase. If any of these events were to occur, our financial condition, results of operations and cash flows may be adversely affected.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In addition, the residential construction and commercial construction industries are subject to various federal, state and local statutes, ordinances, rules and regulations concerning zoning, building design and safety, construction, contractors&#8217; licensing, energy conservation and similar matters, including regulations that impose restrictive zoning and density requirements on the residential new construction industry or that limit the number of homes that can be built within the boundaries of a particular area. Regulatory restrictions and industry standards may require us to alter our installation processes and our sourcing, increase our operating expenses and limit the availability of suitable building lots for our customers, any of which could negatively affect our business, financial condition and results of operations.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Changes in laws, regulations or rules, or a failure to comply with any laws, regulations or rules, may adversely affect our business.</span></div><div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We are subject to laws, regulations and rules enacted by national, regional and local governments and the New York Stock Exchange (NYSE). In particular, we are required to comply with certain SEC, NYSE and other legal or regulatory requirements in the U.S. Compliance with, and monitoring of, applicable laws, regulations and rules may be difficult, time consuming and costly.</span></div><div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For example, there is a growing concern from advocacy groups and the general public that the emissions of greenhouse gases and other human activities have caused, or will cause, significant changes in weather patterns and temperatures and the frequency and severity of natural disasters. These concerns have resulted in increasing governmental and societal attention to ESG matters, including expanding mandatory and voluntary reporting, diligence, and disclosure on topics such as climate change, waste production, water usage, human capital, labor, and risk oversight, and could expand the nature, scope, and complexity of matters on which we are required to control, assess, and report. These and other rapidly changing laws, regulations, policies and related interpretations, as well as increased enforcement actions by various governmental and regulatory agencies, may create challenges for us, including for our compliance and ethics programs and by increasing our ongoing costs of compliance, which could adversely impact our results of operations and cash flows.</span></div><div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">These laws, regulations or rules and their interpretation and application may also change from time to time and those changes could have a material adverse effect on our business, financial condition, results of operations and cash flows. In addition, a failure to comply with applicable laws, regulations or rules, as interpreted and applied, could have a material adverse effect on our business and financial statements.</span></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">We are subject to environmental regulation and potential exposure to environmental liabilities.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We are subject to various federal, state and local environmental laws and regulations. Although we believe that we operate our business, including each of our locations, in compliance with applicable laws and regulations and maintain all material permits required under such laws and regulations to operate our business, we may be held liable or incur fines or penalties in connection with such requirements. In addition, environmental laws and regulations, including those related to energy use and climate change, may become more stringent over time, and any future laws and regulations could have a material impact on our operations or require us to incur material additional expenses to comply with any such future laws and regulations.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our primary manufacturing facility is also subject to additional laws and regulations which may increase our exposure to environmental liabilities. Despite providing a benefit to the environment by making structures more energy efficient, certain types of insulation, particularly spray foam applications, require our employees to handle potentially hazardous or toxic substances. While our employees who handle these and other potentially hazardous or toxic materials, including lead-based paint, receive specialized training and wear protective clothing, there is still a risk that they, or others, may be exposed to these substances. Exposure to these substances could result in significant injury to our employees and others, including site occupants, and damage to our property or the property of others, including natural resource damage. Our personnel and others at our work sites are also at risk for other workplace-related injuries, including slips and falls.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In addition, as owners and lessees of real property, we may be held liable for, among other things, hazardous or toxic substances, including asbestos or petroleum products on, at, under or emanating from currently or formerly owned or operated properties, or any off-site disposal locations, or for any known or newly discovered environmental conditions at or relating to any of our properties, including those arising from activities conducted by previous occupants or at adjoining properties, without regard to whether we knew of or were responsible for such release. We may be required to investigate, remove, </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">23</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">remediate or monitor the presence or release of such hazardous or toxic substances or petroleum products. We may also be held liable for fines, penalties or damages, including for bodily injury, property damage and natural resource damage in connection with the presence or release of hazardous or toxic substances or petroleum products. In addition, expenditures may be required in the future as a result of releases of, or exposure to, hazardous or toxic substances or petroleum products, the discovery of currently unknown environmental conditions or changes in environmental laws and regulations or their interpretation or enforcement and, in certain instances, such expenditures may be material.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">RISKS RELATED TO OUR INDEBTEDNESS</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">We have debt principal and interest payment requirements that may restrict our future operations and impair our ability to meet our obligations.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our degree of leverage and level of interest expense may have important consequences, including:</span></div><div style="margin-top:9pt;padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">our leverage may place us at a competitive disadvantage as compared with our less leveraged competitors and make us more vulnerable in the event of a downturn in general economic conditions or in any of our businesses;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">our flexibility in planning for, or reacting to, changes in our businesses and the industries in which we operate may be limited;</span></div><div style="margin-top:6pt;padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">a substantial portion of our cash flow from operations will be dedicated to the payment of interest and principal on our indebtedness, thereby reducing the funds available to us for operations, capital expenditures, acquisitions, future business opportunities or obligations to pay rent in respect of our operating leases; and</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our ability to service our debt and other obligations will depend on our future operating performance, which will be affected by prevailing economic conditions and financial, business and other factors, many of which are beyond our control. Our business may not generate sufficient cash flow, and future financings may not be available to provide sufficient net proceeds, to meet these obligations or to successfully execute our business strategies. See Part II, Item 7, Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations, "Liquidity and Capital Resources, Debt." of this Form 10-K. </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Restrictions in our existing credit facilities, senior notes, and any future facilities or any other indebtedness we may incur in the future, limit our ability to take certain actions and could adversely affect our business, financial condition, results of operations, and the value of our common stock.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our credit facilities, or any future facilities we may enter into, the indenture governing our senior notes, or other indebtedness we may incur, impose certain restrictions and obligations on us. Under certain of these instruments, we must comply with defined covenants that limit our ability to, among other things:</span></div><div style="margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">incur or guarantee additional debt and issue preferred stock;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">make distributions or dividends on or redeem or repurchase shares of common stock;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">make certain investments and acquisitions;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">make capital expenditures;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">incur certain liens or permit them to exist;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">enter into certain types of transactions with affiliates;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">acquire, merge or consolidate with another company; or</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">transfer, sell or otherwise dispose of all or substantially all of our assets.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our credit facilities contain, and any future facilities or other debt instruments we may enter into may contain, covenants requiring us to maintain certain financial ratios and meet certain tests, such as an excess cash flow test, fixed charge coverage ratio, leverage ratio or debt to earnings ratio. See Part II, Item 7, Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations, "Liquidity and Capital Resources, Credit Facilities." of this Form 10-K. Our ability to comply with those financial ratios and tests can be affected by events beyond our control, and we may not be able to comply with those ratios and tests when required to do so under the applicable debt instruments.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The provisions of our credit facilities, or other debt instruments, may affect our ability to obtain future financing and pursue attractive business opportunities and our flexibility in planning for, and reacting to, changes in business conditions. In addition, a failure to comply with the provisions of our credit facilities, any future credit facility, the indenture governing our senior </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">24</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">notes, or other debt instruments could result in a default or an event of default that could enable our lenders or other debt holders to declare the outstanding principal of that debt, together with accrued and unpaid interest, to be immediately due and payable. If the payment of our debt is accelerated, our assets may be insufficient to repay such debt in full, and our stockholders could experience a partial or total loss of their investment.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Our use of interest rate hedging instruments could expose us to risks and financial losses that may adversely affect our financial condition, liquidity and results of operations.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">From time to time, we utilize interest rate derivatives to hedge the cash flows associated with existing variable-rate debt. The purpose of these instruments is to substantially reduce exposure to market risks on our Term Loan. We designated our interest rate swaps in existence at the time of this Form 10-K as a cash flow hedge in accordance with Accounting Standards Codification (&#8220;ASC&#8221;) 815, Derivatives and Hedging. However, in the future, we may fail to qualify for hedge accounting treatment under these standards for a number of reasons, including if we fail to satisfy hedge documentation and hedge effectiveness assessment requirements or if our derivative instruments are not highly effective. If we fail to qualify for hedge accounting treatment, losses on the swaps caused by the change in its fair value would be recognized as part of net income, rather than being recognized as part of other comprehensive income. Any such adverse developments could result in material liabilities and expense and could have a material adverse effect on our business.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Interest rate derivative instruments can be expensive and we could incur significant costs associated with the settlement or early termination of the agreements. In addition, our hedging transactions may expose us to certain risks and financial losses, including, among other things:</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">the risk that the other parties to the agreements would not perform;</span></div><div><span><br/></span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">the risk that the duration or amount of the hedges may not match the duration or amount of the related liability;</span></div><div><span><br/></span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">the risk that the hedging instruments and the related liabilities do not transition to the same LIBOR replacement rate or that the timing or mechanics of such transition do not match between the hedging instruments and the related liabilities, in which case any such differences could decrease the effectiveness of the hedging instruments and change our financial position;</span></div><div><span><br/></span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">the risk that hedging transactions may be adjusted from time to time in accordance with accounting rules to reflect changes in fair values including downward adjustments which would affect our stockholders&#8217; equity; and</span></div><div><span><br/></span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">the risk that we may not be able to meet the terms and conditions of the hedging instruments, in which case we may be required to settle the instruments prior to maturity with cash payments that could significantly affect our liquidity.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">If we default on our obligations under the instruments governing our indebtedness, we may not be able to make payments on our debt and our business and financial condition could be adversely affected.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A failure by us to comply with the agreements governing our indebtedness, including, without limitation, our existing credit facilities or any future facilities, the indenture governing our senior notes and our other contractual obligations (including restrictive, financial and other covenants included therein), to pay our indebtedness and fixed costs or to post collateral (including under hedging arrangements) could result in a variety of material adverse consequences, including a default under our indebtedness and the exercise of remedies by our creditors, lessors and other contracting parties, and such defaults could trigger additional defaults under other indebtedness or agreements.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Any such default under the agreements governing our existing or future indebtedness and the remedies sought by the holders of such indebtedness could make us unable to make payments to pay principal of, or premium, if any, and interest on the senior notes, substantially decrease the market value of the senior notes and result in a cross-default under the senior notes. In the event of a default under our existing credit facilities or any future facilities or in respect of other indebtedness, the holders of such indebtedness may be able to cause all of our available cash flow to be used to pay such indebtedness, may be able to terminate outstanding credit commitments and/or may be able to cease making loans to us and, in any event, could elect to declare all of the funds borrowed under the applicable agreement to be immediately due and payable, together with accrued and unpaid interest, and we could be forced into bankruptcy or liquidation.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">If our operating performance declines, we may need to seek waivers from the holders of our indebtedness to avoid being in default under the instruments governing such indebtedness. If we breach our covenants under our indebtedness, we may not be able to obtain a waiver from the holders of such indebtedness on terms acceptable to us or at all. If this occurs, we would be in </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">25</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">default under such indebtedness, the holders of such indebtedness and other lenders could exercise their rights as described above, and we could be forced into bankruptcy or liquidation.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Adverse credit ratings could increase our costs of borrowing money and limit our access to capital markets and commercial credit.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Moody&#8217;s Investor Service and Standard &amp; Poor&#8217;s routinely evaluate our credit profile on an ongoing basis and have assigned ratings for our long-term debt. If these rating agencies downgrade any of our current credit ratings, our borrowing costs could increase and our access to the capital and commercial credit markets could be adversely affected. Additionally, these rating agencies have started to incorporate ESG factors into their credit ratings. Unfavorable ESG ratings could have a negative impact on our access to and costs of capital. </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Our indebtedness exposes us to interest expense increases if interest rates increase.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">If interest rates increase, our debt service obligations on our variable rate indebtedness, if any exists at the balance sheet date, would increase even though the amount borrowed would remain the same, and our net income and cash flows would correspondingly decrease. Specifically, we had no outstanding borrowings on our Revolver, as hereinafter defined, as of December&#160;31, 2022, but should we have a balance in the future, we would incur interest based on a rate that varies per the conditions set forth in our agreement.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In addition, advances under our Revolver generally bear interest based on, at our election, either the Secured Overnight Financing Rate (&#8220;Term SOFR&#8221;) or the base rate (which approximated the prime rate) plus a margin based on the type of rate applied and leverage ratio. Our Term Loan, as hereinafter defined, bears interest at either the base rate or the Eurodollar rate ("LIBOR") plus a margin based on the type of rate applied. On July 27, 2017, the Financial Conduct Authority (the authority that regulates LIBOR) ("FCA") announced that it intends to stop compelling banks to submit rates for the calculation of LIBOR after 2021. The Intercontinental Exchange Benchmark Administration, the administrator of LIBOR, announced in November 2020 a consultation regarding its intention to extend the publication of certain LIBOR settings, including the setting we use as a reference rate, to June 2023. On March 5, 2021, the FCA announced that the overnight, one-month, three-month, six-month and 12-month USD LIBOR rates would continue to be published until June 30, 2023. The FCA is currently considering whether to use its powers to compel the publication of non-representative synthetic rates for one- month, three-month and six-month USD LIBOR beyond June 2023. Our Term Loan Agreement includes a provision related to the potential discontinuance of LIBOR to be replaced with one or more Secured Overnight Financing Rate ("SOFR") values or another alternate benchmark rate. However, if (when) LIBOR ceases to exist after June 2023, the SOFR rates or other interest rates under the alternative rate could be higher than LIBOR. To the extent that these interest rates are higher, our interest expense will increase, which could adversely affect our financial condition, operating results and cash flows.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our Term Loan bears interest at a variable rate, however interest rate hedges in place mitigate the risk of interest rate fluctuations associated with a portion of the outstanding debt balance. These derivative instruments are indexed to LIBOR, the value of which could also be impacted if LIBOR is limited or discontinued. For some instruments, the method of transitioning to an alternative reference rate may be challenging, especially if we cannot agree with the respective counterparty about how to make the transition. If a contract is not transitioned to an alternative reference rate and LIBOR is discontinued, the impact on our contracts is likely to vary by contract. If LIBOR is discontinued or if the methods of calculating LIBOR change from their current form, interest rates on our current or future indebtedness may be adversely affected. While we currently expect LIBOR to be available to us as a reference rate in substantially its current form until June 2023, it is possible that LIBOR will become unavailable prior to that point. This could result, for example, if sufficient banks decline to make submissions to the LIBOR administrator. In that case, the risks associated with the transition to an alternative reference rate will be accelerated and magnified.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">We may require additional capital in the future, which may not be available on favorable terms or at all.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our future capital requirements will depend on many factors, including industry and market conditions, our ability to successfully complete future business combinations and expansion of our existing operations. We anticipate that we may need to raise additional funds in order to grow our business and implement our business strategy. We anticipate that any such additional funds may be raised through equity or debt financings. Any equity or debt financing, if available at all, may be on terms that are not favorable to us and will be subject to changes in interest rates and the capital markets environment. Even if we are able to raise capital through equity or debt financings, as to which there can be no assurance, the interest of existing stockholders in our company may be diluted, and the securities we issue may have rights, preferences and privileges that are senior to those of our common stock or may otherwise materially and adversely affect the holdings or rights of our existing </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">26</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">stockholders. If we cannot obtain adequate capital, we may not be able to fully implement our business strategy and our business, results of operations and financial condition could be adversely affected.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">RISKS RELATED TO OUR SECURITIES</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">The price of our common stock may fluctuate substantially and your investment may decline in value.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The market price of our common stock may be significantly affected by factors, such as:</span></div><div style="margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">market conditions affecting the residential construction, commercial construction and building products industries;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">quarterly variations in our results of operations;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">changes in government regulations;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">the announcement of acquisitions by us or our competitors;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">changes in general economic and political conditions;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">volatility in the financial markets;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">results of our operations and the operations of others in our industry;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">changes in interest rates;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">the reduction, suspension or elimination of dividend payments;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">threatened or actual litigation and government investigations;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">the addition or departure of key personnel;</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">actions taken by our stockholders, including the sale or disposition of their shares of our common stock; </span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">the extent of short-selling of shares of our common stock and the stock of our competitors; and</span></div><div style="margin-top:6pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">differences between our actual financial and operating results and those expected by investors and analysts and changes in analysts&#8217; recommendations or projections.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">These and other factors may lower the market price of our common stock, regardless of our actual operating performance.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Furthermore, in recent years the stock market and the price of our common stock has experienced significant price and volume fluctuations. This volatility has had a significant impact on the market price of securities issued by many companies, including companies in our industry. The changes frequently appear to occur without regard to the operating performance of the affected companies. Hence, the price of our common stock could fluctuate based upon factors that have little or nothing to do with us, and these fluctuations could materially reduce the price of our common stock and materially affect the value of your investment.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Our internal controls over financial reporting may not be effective, which could have a significant and adverse effect on our business and reputation.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As a public company, we are required to comply with the SEC&#8217;s rules implementing Sections 302 and 404 of the Sarbanes-Oxley Act, which require management to certify financial and other information in our quarterly and annual reports and provide an annual management report on the effectiveness of controls over financial reporting.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">To comply with the requirements of being a public company, we may undertake various actions, such as implementing additional internal controls and procedures and hiring additional accounting or internal audit staff.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Testing and maintaining internal controls can divert our management&#8217;s attention from other matters that are important to the operation of our business. If we identify material weaknesses in our internal controls over financial reporting or are unable to comply with the requirements of Section 404 or are unable to assert that our internal controls over financial reporting are effective, investors may lose confidence in the accuracy and completeness of our financial reports and the market price of our common stock could be negatively affected, and we could become subject to investigations by the SEC or other regulatory authorities, which could require additional financial and management resources.</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">27</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Future sales of our common stock, or the perception in the public markets that these sales may occur, may depress our stock price.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The market price of our common stock could decline significantly as a result of sales of a large number of shares of our common stock. These sales, or the perception that these sales might occur, could depress the market price of our common stock or make it more difficult for us to sell equity securities in the future at a time and at a price that we deem appropriate.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have approximately 28.3 million shares of common stock outstanding as of December&#160;31, 2022. The shares of common stock are freely tradable, except for any shares of common stock that may be held or acquired by our directors, executive officers and other affiliates, the sale of which will be restricted under the Securities Act of 1933, as amended. As of December&#160;31, 2022, approximately 1.7 million of the 3.0 million shares of common stock authorized for issuance under the 2014 Omnibus Incentive Plan were available for issuance. These shares will become eligible for sale in the public market in the future, subject to certain legal and contractual limitations. If our existing stockholders sell substantial amounts of our common stock in the public market, or if the public perceives that such sales could occur, this could have an adverse impact on the market price of our common stock, even if there is no relationship between such sales and the performance of our business.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Jeff Edwards has significant ownership of our common stock and may have interests that conflict with those of our other stockholders.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2022, Jeff Edwards beneficially owned approximately 17.4% of our outstanding common stock. As a result of his beneficial ownership of our common stock, he has sufficient voting power to significantly influence all matters requiring stockholder approval, including the election of directors, amendment of our amended and restated certificate of incorporation and approval of significant corporate transactions, and he has significant influence over our management and policies. This concentration of voting power may have the effect of delaying or preventing a change in control of us or discouraging others from making tender offers for our shares of common stock, which could prevent stockholders from receiving a premium for their shares of common stock. These actions may be taken even if other stockholders oppose them. The interests of Jeff Edwards may not always coincide with the interests of other stockholders. In addition, under our amended and restated certificate of incorporation, Jeff Edwards is permitted to pursue corporate opportunities for himself, rather than for us</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Provisions of our charter documents and Delaware law could delay, discourage or prevent an acquisition of us, even if the acquisition would be beneficial to our stockholders, and could make it more difficult for our stockholders to change our management.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our amended and restated certificate of incorporation and bylaws may discourage, delay or prevent a merger, acquisition or other change in control that stockholders may consider favorable, including transactions in which stockholders might otherwise receive a premium for their shares of our common stock. In addition, these provisions may frustrate or prevent any attempt by our stockholders to replace or remove our current management by making it more difficult to replace or remove members of our board of directors. These provisions include a classified board of directors with three-year staggered terms; no cumulative voting in director elections; the exclusive right of our board of directors to fill vacancies on our board; the ability of our board to authorize the issuance of shares of preferred stock and to determine the price and other terms without stockholder approval; a prohibition on stockholder action by written consent; a requirement that a special meeting of stockholders be called only by a resolution duly adopted by our board; and advance notice procedures that stockholders must comply with in order to nominate candidates to our board of directors or to propose matters to be acted upon at a stockholders&#8217; meeting. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As a Delaware corporation, we are also subject to provisions of Delaware law, including Section 203 of the Delaware General Corporation Law, which prohibits a person who owns 15% or more of our outstanding voting stock from merging or combining with us for a period of three years after the date of the transaction in which the person acquired 15% or more of our outstanding voting stock, unless the merger or combination is approved in a prescribed manner. Any delay or prevention of a change of control transaction or changes in our board of directors and management could deter potential acquirers or prevent the completion of a transaction in which our stockholders could receive a substantial premium over the then-current market price for their shares of our common stock.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">We pay dividends to holders of our common stock, but may reduce, suspend, or eliminate dividend payments in the future.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our board of directors approved the initiation of a quarterly cash dividend program in 2021 and also approved the payment of an annual variable dividend in each of 2022 and 2023. However, part of our business strategy includes retaining our future earnings, if any, in order to reinvest in the development and growth of our business, including our continued growth by acquisition strategy, and, therefore, we may reduce, suspend or eliminate dividend payments in the future. Any future determination to pay dividends will be at the discretion of our board of directors and will depend on our financial condition, </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">28</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">results of operations, capital requirements, the limits imposed by the terms of our credit facilities, or any then-existing debt instruments, and such other factors as our board of directors deems relevant. Accordingly, investors in our common stock may need to sell their shares to realize a return on their investment in our common stock, and investors may not be able to sell their shares at or above the prices paid for them.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">If securities analysts do not publish favorable reports about us or if we, or our industry, are the subject of unfavorable commentary, the price of our common stock could decline.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The trading price for our common stock depends in part on the research and reports about us that are published by analysts in the financial industry. Analysts could issue negative commentary about us or our industry, or they could downgrade our common stock. We may also not receive sufficient research coverage or visibility in the market. Any of these factors could result in the decline of the trading price of our common stock, causing investors in our common stock to lose all or a portion of their investment.</span></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_22"></div><div style="margin-top:18pt;padding-left:54pt;text-indent:-54pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 1B.&#160;&#160;&#160;&#160;Unresolved Staff Comments</span></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">None.</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">29</span></div></div></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_25"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:18pt;padding-left:54pt;text-indent:-54pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 2.&#160;&#160;&#160;&#160;Properties </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Real Property</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We lease office and warehouse space in 40 states, including our corporate office in Columbus, Ohio. Our leases are typically short in duration with customary extensions at our option. We believe suitable alternative space is available in all of our markets. We also own our cellulose manufacturing facility in Bucyrus, Ohio. We believe that our facilities are suitable and adequate for present purposes, and that the productive capacity in such facilities is substantially being utilized. The table below summarizes our locations as of December&#160;31, 2022.</span></div><div style="margin-top:14pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:14.397%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.969%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.397%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.969%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.397%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.139%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.397%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.969%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.397%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.969%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.400%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">State</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Number of Locations</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Approximate Total Square<br/>Footage</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">State</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Number of Locations</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Approximate Total Square<br/>Footage</span></td></tr><tr><td colspan="3" style="background-color:#ccedff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Alabama</span></td><td colspan="3" style="background-color:#ccedff;padding:0 1pt"></td><td colspan="3" style="background-color:#ccedff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4</span></td><td colspan="3" style="background-color:#ccedff;padding:0 1pt"></td><td colspan="3" style="background-color:#ccedff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,550</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Montana</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,576&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Arizona</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29,166</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Nebraska</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,241</span></td></tr><tr><td colspan="3" style="background-color:#ccedff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">California</span></td><td colspan="3" style="background-color:#ccedff;padding:0 1pt"></td><td colspan="3" style="background-color:#ccedff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27</span></td><td colspan="3" style="background-color:#ccedff;padding:0 1pt"></td><td colspan="3" style="background-color:#ccedff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">297,369</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Nevada</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,350</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Colorado</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">129,036</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">New Hampshire</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">75,370</span></td></tr><tr><td colspan="3" style="background-color:#ccedff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Connecticut</span></td><td colspan="3" style="background-color:#ccedff;padding:0 1pt"></td><td colspan="3" style="background-color:#ccedff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2</span></td><td colspan="3" style="background-color:#ccedff;padding:0 1pt"></td><td colspan="3" style="background-color:#ccedff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,292</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">New Jersey</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">121,451</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">37,175</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">New York</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">101,630</span></td></tr><tr><td colspan="3" style="background-color:#ccedff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Florida</span></td><td colspan="3" style="background-color:#ccedff;padding:0 1pt"></td><td colspan="3" style="background-color:#ccedff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28</span></td><td colspan="3" style="background-color:#ccedff;padding:0 1pt"></td><td colspan="3" style="background-color:#ccedff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">248,585</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">North Carolina</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">194,403</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Georgia</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">196,471</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Ohio</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">454,165</span></td></tr><tr><td colspan="3" style="background-color:#ccedff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Idaho</span></td><td colspan="3" style="background-color:#ccedff;padding:0 1pt"></td><td colspan="3" style="background-color:#ccedff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3</span></td><td colspan="3" style="background-color:#ccedff;padding:0 1pt"></td><td colspan="3" style="background-color:#ccedff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">43,000</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Oklahoma</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35,543</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Illinois</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">85,902</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Oregon</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,928</span></td></tr><tr><td colspan="3" style="background-color:#ccedff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Indiana</span></td><td colspan="3" style="background-color:#ccedff;padding:0 1pt"></td><td colspan="3" style="background-color:#ccedff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14</span></td><td colspan="3" style="background-color:#ccedff;padding:0 1pt"></td><td colspan="3" style="background-color:#ccedff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">248,082</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Pennsylvania</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">89,853</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Kansas</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">74,206</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">South Carolina</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">116,439</span></td></tr><tr><td colspan="3" style="background-color:#ccedff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Kentucky</span></td><td colspan="3" style="background-color:#ccedff;padding:0 1pt"></td><td colspan="3" style="background-color:#ccedff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4</span></td><td colspan="3" style="background-color:#ccedff;padding:0 1pt"></td><td colspan="3" style="background-color:#ccedff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">46,330</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">South Dakota</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">50,000</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Louisiana</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19,535</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Tennessee</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">111,482</span></td></tr><tr><td colspan="3" style="background-color:#ccedff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Maine</span></td><td colspan="3" style="background-color:#ccedff;padding:0 1pt"></td><td colspan="3" style="background-color:#ccedff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3</span></td><td colspan="3" style="background-color:#ccedff;padding:0 1pt"></td><td colspan="3" style="background-color:#ccedff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">38,750</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Texas</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">364,455</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Maryland</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">59,710</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Utah</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">115,523</span></td></tr><tr><td colspan="3" style="background-color:#ccedff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Massachusetts</span></td><td colspan="3" style="background-color:#ccedff;padding:0 1pt"></td><td colspan="3" style="background-color:#ccedff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4</span></td><td colspan="3" style="background-color:#ccedff;padding:0 1pt"></td><td colspan="3" style="background-color:#ccedff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">45,303</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vermont</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,020</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Michigan</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">36,800</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Virginia</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">73,941</span></td></tr><tr><td colspan="3" style="background-color:#ccedff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Minnesota</span></td><td colspan="3" style="background-color:#ccedff;padding:0 1pt"></td><td colspan="3" style="background-color:#ccedff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9</span></td><td colspan="3" style="background-color:#ccedff;padding:0 1pt"></td><td colspan="3" style="background-color:#ccedff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">245,554</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Washington</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">163,220</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Missouri</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,436&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Wisconsin</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">211,354</span></td></tr></table></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Our Fleet</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2022, our fleet consisted of approximately 5,600 total vehicles that we either leased or owned, including approximately 5,400 installation vehicles that our installers use to deliver and install products from our locations to job sites, and approximately 200 other vehicles that are utilized for various purposes, primarily by our distribution operations, sales staff, branch managers and various senior management personnel. For additional information, see Note 8, Long-Term Debt, and Note 17, Commitments and Contingencies, in Part II, Item 8, Financial Statements and Supplementary Data, of this Form 10-K. </span></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_28"></div><div style="margin-top:18pt;padding-left:54pt;text-indent:-54pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 3.&#160;&#160;&#160;&#160;Legal Proceedings</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We are involved in various claims and lawsuits incidental to the conduct of our business in the ordinary course, including wage and hour lawsuits. We carry insurance coverage that we believe to be reasonable under the circumstances, although insurance may or may not cover any or all of our liabilities in respect to claims and lawsuits. While management currently believes that the ultimate resolution of these matters, individually or in the aggregate, will not have a material adverse effect on our consolidated financial position, results of operations or cash flows, such matters are subject to inherent uncertainties. See Note 17, Commitments and Contingencies, in Part II, Item 8, Financial Statements and Supplementary Data, of this Form 10-K for additional information on significant legal proceedings.</span></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_31"></div><div style="margin-top:18pt;padding-left:54pt;text-indent:-54pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 4.&#160;&#160;&#160;&#160;Mine Safety Disclosures</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Not applicable.</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">30</span></div></div></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_34"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:9pt;padding-left:12.37pt;padding-right:12.37pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">PART II</span></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_37"></div><div style="margin-top:9pt;padding-left:54pt;text-indent:-54pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 5.&#160;&#160;&#160;&#160;Market for Registrant&#8217;s Common Equity, Related Stockholder Matters and Issuer Purchases of Equity Securities </span></div><div style="margin-top:9pt;padding-left:54pt;text-indent:-54pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Market Information for Common Stock</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our common stock is traded on the NYSE under the symbol &#8220;IBP.&#8221;</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Holders of Record</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of </span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">February&#160;15, 2023</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, there were 1,105 holders of record of our common stock, one of which was Cede &amp; Co., which is the holder of shares held through the Depository Trust Company.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Dividend Policy</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our board of directors has approved a quarterly cash dividend program since 2021, payable to stockholders of record on specific dates each quarter. In addition to the quarterly cash dividend, our board of directors approved an annual variable dividend payable in 2022 and 2023, with the 2023 dividend payable on March 31, 2023 at a rate of 90 cents per common share. We did not declare or pay any cash dividends on our common stock during the year ended December 31, 2020. Future determinations relating to payments of dividends will be made at the discretion of our board of directors and will depend on a number of factors, including our future earnings, capital requirements, financial condition, future prospects, contractual restrictions, legal requirements and other factors our board of directors may deem relevant.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Stock Performance Graph</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The table below compares the cumulative total shareholder return on our common stock with the cumulative total return of (i) the Russell 2000 Index (&#8220;Russell 2000&#8221;), (ii) the Standard &amp; Poor&#8217;s Industrials Index (&#8220;S&amp;P 500 Industrials&#8221;) and (iii) the S&amp;P Smallcap 600 Index (Old) (&#8220;S&amp;P Smallcap 600 (Old)&#8221;) and (iv) the S&amp;P 600 Building Products Index (New) ("S&amp;P 600 Building Products (New)"). For comparison purposes, we are replacing the S&amp;P Smallcap 600 (Old) with the S&amp;P 600 Building Products as we believe it more closely aligns with our industry. The graph assumes investments of $100 in our common stock and in each of the four indices and the reinvestment of dividends for the last five fiscal years through December&#160;31, 2022.</span></div><div style="margin-top:9pt;text-align:center"><img src="ibp-20221231_g1.jpg" alt="ibp-20221231_g1.jpg" style="height:329px;margin-bottom:5pt;vertical-align:text-bottom;width:605px"/></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">31</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:9pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:33.797%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.163%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.386%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.310%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.386%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.310%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.386%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.310%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.386%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.310%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.386%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.170%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">12/29/2017</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">12/31/2018</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">12/31/2019</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">12/31/2020</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">12/31/2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">12/30/2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">IBP</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">44</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">91</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">134</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">186</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">117</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Russell 2000</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">89</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">112</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">134</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">154</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">122</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">S&amp;P 500 Industrials</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">87</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">112</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">124</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">151</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">142</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">S&amp;P Smallcap 600 (Old)</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">91</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">112</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">125</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">158</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">133</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">S&amp;P 600 Building Products (New)</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">80</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">114</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">145</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">182</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">151</span></td></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Purchases of Equity Securities by the Issuer</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table shows the stock repurchase activity for the three months ended December&#160;31, 2022:</span></div><div style="margin-top:14pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:34.133%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.543%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.543%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.543%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.548%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total Number of Shares Purchased</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Average Price Paid Per Share</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total Number of Shares Purchased as Part of Publicly Announced Plans or Programs</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Approximate Dollar Value of Shares that May Yet Be Purchased under the Plans or Programs </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(2)</span></div></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 1 - 31, 2022 </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">720&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">80.96&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">November 1 - 30, 2022 </span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,000&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">80.84&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,000&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 1 - 31, 2022</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">266,032&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">86.22&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">266,032&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">162.1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">million</span></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">296,752&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">85.66&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">296,032&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">162.1&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;million</span></td><td colspan="3" style="display:none"></td></tr></table></div><div style="padding-left:18pt;text-indent:-18pt"><span><br/></span></div><div style="padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">(1)  Represents shares surrendered to the Company by employees to satisfy tax withholding obligations arising in connection with the vesting of 2,409 shares of restricted stock awarded under our 2014 Omnibus Incentive Plan.</span></div><div style="padding-left:18pt;text-indent:-18pt"><span><br/></span></div><div style="padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(2)&#160;&#160;&#160;&#160;On February 24, 2022, our board of directors authorized an extension of our previous stock repurchase program through March 1, 2023 and concurrently authorized an increase in the total amount of our outstanding common stock we can purchase under the extended program up to $200.0 million. On August 4, 2022 our board of directors authorized a new stock repurchase program that allows for the repurchase of up to $200.0 million of our outstanding common stock through August 10, 2023. This new program replaced the previous program. We repurchased $137.6&#160;million of common stock under our stock repurchase programs during the year ended December 31, 2022. On February 22, 2023 our board of directors authorized a new stock repurchase program that allows for the repurchase of up to $200.0&#160;million of our outstanding common stock through March 1, 2024. This 2023 new program will replace the previous 2022 program. For further information about our stock repurchase programs, see Note 13, Stockholder's Equity, in Part II, Item 8, Financial Statements and Supplementary Data, of this Form 10-K. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Recent Sales of Unregistered Securities</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During 2022, we did not issue or sell any unregistered equity securities. </span></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_40"></div><div style="margin-top:18pt;padding-left:54pt;text-indent:-54pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 6.&#160;&#160;&#160;&#160;[Reserved]</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">32</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div><span><br/></span></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_46"></div><div style="margin-top:18pt;padding-left:54pt;text-indent:-54pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 7.&#160;&#160;&#160;&#160;Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations</span></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">You should read the following in conjunction with the consolidated financial statements and related notes thereto included in Item 8, Financial Statements and Supplemental Data, of Part II of this Form 10-K. This discussion contains forward-looking statements reflecting current expectations that involve risks and uncertainties. Actual results and the timing of events may differ materially from those contained in these forward-looking statements due to a number of factors, including those discussed in the section captioned &#8220;Risk Factors&#8221; and elsewhere in this Form 10-K.</span></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_49"></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">OVERVIEW</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We are one of the nation&#8217;s largest insulation installers for the residential new construction market and are also a diversified installer of complementary building products, including waterproofing, fire-stopping and fireproofing, garage doors, rain gutters, window blinds, shower doors, closet shelving, mirrors and other products throughout the United States. We offer our portfolio of services for new and existing single-family and multi-family residential and commercial building projects in all 48 continental states and the District of Columbia from our national network of over 230 branch locations. 94% of our net revenue comes from the service-based installation of these products across all of our end markets and forms our Installation operating segment and single reportable segment. Additionally, we manufacture and distribute certain building products and materials to installers and distributors involved with various types of construction projects and these two operations form our Manufacturing operating segment and our Distribution operating segment, respectively. We believe our business is well positioned to continue to profitably grow due to our strong balance sheet, liquidity and our continuing acquisition strategy. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A large portion of our net revenue comes from the U.S. residential new construction market, which depends upon a number of economic factors, including demographic trends, interest rates, inflation, consumer confidence, employment rates, housing inventory levels, foreclosure rates, the health of the economy and the availability and affordability of mortgage financing. Our strategic acquisitions over the last several years contributed meaningfully to our 35.6% increase in net revenue during the year ended December&#160;31, 2022 compared to 2021. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have omitted discussion of 2020 results in the sections that follow where it would be redundant to the discussion previously included in Part II, Item 7, of Form 10-K for the year ended December&#160;31, 2021.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">2022 Highlights</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net revenues increased 35.6%, or $701.2 million, while gross profit increased 40.4% to $827.8&#160;million during the year ended December&#160;31, 2022 compared to 2021. We also generated approximately $277.9&#160;million of cash from operating activities. The increase in net revenue and gross profit was primarily driven by the contribution of our recent acquisitions, selling price and product mix improvements as evidenced by the 23.0% increase in our price/mix metric and increased sales volume of 5.5% on a same branch basis for our Installation segment. Gross profit grew faster than revenue primarily due to higher selling prices and resulting leverage gained on labor and other costs of sales. These synergies were partially offset by higher fuel costs and higher material costs due to increased Distribution segment sales which generally have higher material costs than our other segments. Supply chain constraints and inflationary pressures also contributed to higher material costs in 2022, particularly for spray foam and several complementary installed products, as some products continue to be difficult to source near volume and pricing levels secured in prior periods. Certain net revenue, end market and industry metrics we use to monitor our operations are discussed in the "Key Measures of Performance" section below.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2022, we had $229.6 million of cash and cash equivalents and we have not drawn on our revolving line of credit. We amended and extended our revolving line of credit in February 2022, increasing the commitment to $250.0 million from $200.0 million. Additionally, we received $25.5&#160;million from amending the maturity dates on our three interest rate swaps in July 2022. Our liquidity remains strong despite repurchasing $137.6&#160;million of our Company's stock and paying our variable and regular quarterly dividends of $62.7&#160;million during the year ended December&#160;31, 2022. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the year ended December&#160;31, 2022, we experienced overall sales growth in all of our end markets and we achieved 24.6% year-over-year same branch sales growth, with acquisitions contributing the remaining portion of our total sales growth. Our largest end market, the single-family subset of the residential new construction market, grew revenue 33.5% over the same period in 2021. Our commercial end market experienced sales growth of 15.2% during the year ended December&#160;31, 2022 primarily through acquisitions. We experienced commercial project delays in 2022 due to macroeconomic concerns surrounding the pandemic and general economic uncertainty. </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">33</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We continue to diversify our operations through our acquisition strategy and met our goal of acquiring at least $100.0&#160;million in revenue in 2022. Our commitment to the diversification of our product mix included expanding our distribution business as evidenced by our largest acquisition in 2022, Central Aluminum Supply Corporation ("CAS"), a distributor of gutter supplies and accessories.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The homebuilding market is expected to slow in 2023 due to economic concerns, namely higher inflation and interest rates experienced in 2022. While home starts are currently projected to be lower in 2023 than 2022, we believe there are several trends that should drive long-term growth in the housing market, even if there are temporary periods of slowed growth. These long-term trends include an aging housing stock, population growth, demographic changes, household formation growth and the fact that housing starts remained below long-term historic averages for over a decade following the 2008 recession. We expect that our net revenue, gross profit and operating income will benefit from this growth over time although we will be negatively impacted by the slowdown in the homebuilding industry in the near term.</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%">2021 Highlights</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net revenues increased 19.1%, or $315.4 million, while gross profit increased 15.6% to $589.5 million during the year ended December&#160;31, 2021 compared to 2020. We also generated approximately $138.3 million of cash from operating activities. The increase in net revenue and gross profit was primarily driven by the contribution of our recent acquisitions, selling price and product mix improvements as evidenced by the 3.3% increase in our price/mix metric and increased sales volume of 7.9% on a same branch basis for our Installation segment. Gross profit grew slower than revenue primarily due to higher material costs caused by pandemic-related supply chain constraints, higher fuel costs and reduced efficiencies within the large commercial construction market due to challenges from the COVID-19 pandemic. Inflationary pressure contributed to the year-over-year margin compression as materials, particularly spray foam, gutters, and other complementary installed products, continued to be difficult to source near volume and pricing levels secured in prior periods. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2021, we had $333.5 million of cash and cash equivalents. In December 2021, we modified our debt structure to take advantage of favorable market conditions, entering into a new term loan credit agreement which provided for a seven-year $500 million term loan facility. A portion of the proceeds from the term loan were used to repay, in full, all amounts outstanding under the previous term loan agreement. We had not drawn on our $200.0 million revolving line of credit existing at December 31, 2021. Additionally, we paid our first quarterly dividends as a public company in 2021.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the year ended December&#160;31, 2021, we experienced overall sales growth in all of our end markets and we achieved 9.7% year-over-year same branch sales growth, with acquisitions contributing the remaining portion of our total sales growth. Our largest end market, the single-family subset of the residential new construction market, grew revenue 22.1% over the same period in 2020 for our Installation segment. Our commercial end market experienced sales growth of 10.8% during the year ended December&#160;31, 2021 primarily through acquisitions, but we experienced project delays due to macroeconomic concerns surrounding the pandemic, resulting in a decline in same branch sales within this market. These fluctuations are shown in further detail in the "Key Measures of Performance" section below, and impacts from COVID-19 are discussed further in the sections that follow.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Key Measures of Performance</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We utilize certain net revenue and industry metrics to monitor our operations. At the beginning of 2022, we realigned our operating segments to reflect recent changes in our business as described in Part II, Item 8, "Note 11 - Information on Segments" in this Form 10-K. In conjunction with this realignment, we modified the key metrics we use to monitor company and segment performance. Specifically, we now present total sales growth and same branch growth metrics for our consolidated results, our Installation reportable segment and our Other category consisting of our Distribution and Manufacturing operating segments. In addition, our volume growth and price/mix growth metrics are now only presented for the Installation reportable segment to align with how we monitor our operations. While these changes do not significantly alter the prior period metrics previously disclosed, prior period Manufacturing operating segment growth metrics were reclassified from our Installation segment metrics to the Other category metrics in the table below. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We believe the revenue growth measures shown in the table that follows are important indicators of how our business is performing, however, we may rely on different metrics in the future. We also utilize gross profit percentage as shown in the following section to monitor our most significant variable costs and to evaluate labor efficiency and success at passing increasing costs of materials to customers.</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">34</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table shows certain key measures of performance we utilize to evaluate our results:</span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:55.771%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.496%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.823%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.496%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.500%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Period-over-period Growth</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Consolidated Sales Growth</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35.6&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19.1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9.4&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Consolidated Same Branch Sales Growth </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24.6&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9.7&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.5&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Installation</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:700;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(2)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sales Growth </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(3)</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18.7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9.6&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Same Branch Sales Growth </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)(3)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24.5&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9.4&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.7&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Single-Family Sales Growth </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(4)</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22.1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Single-Family Same Branch Sales Growth </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)(4)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28.9&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14.4&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.6&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Multi-Family Sales Growth </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(5)</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31.8&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14.7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">37.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Multi-Family Same Branch Sales Growth </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)(5)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31.0&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6.7&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33.2&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Residential Sales Growth </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(6)</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33.2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20.9&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Residential Same Branch Sales Growth </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)(6)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29.2&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13.2&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.9&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Commercial Sales Growth</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"> (7)</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15.2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.8&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Commercial Same Branch Sales Growth</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"> (1)(7)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6.6&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4.0)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.4&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Other </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:700;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(2)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sales Growth </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(8)</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">453.8&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">65.1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6.3)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Same Branch Sales Growth </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)(8)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41.5&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">44.3&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6.3)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Same Branch Sales Growth - Installation </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:700;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(2)(9)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Volume Growth </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)(10)</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.9&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.9&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Price/Mix Growth</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"> (1)(11)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23.0&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.3&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.8&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">U.S. Housing Market</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:700;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"> (12)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total Completions Growth</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Single-Family Completions Growth </span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.6&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6.1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.9&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Multi-Family Completions Growth </span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1.1)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.3)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6.3&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:2.847%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:94.953%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1)</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Same-branch basis represents period-over-period growth for branch locations owned greater than 12 months as of each financial statement date.</span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(2)</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Prior period disclosures have been recast to conform to the current period segment presentation.</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(3)</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Calculated based on period-over-period growth of all end markets for our Installation segment.</span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(4)</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Calculated based on period-over-period growth in the single-family subset of the residential new construction end market for our Installation segment.</span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(5)</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Calculated based on period-over-period growth in the multi-family subset of the residential new construction end market for our Installation segment.</span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(6)</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Calculated based on period-over-period growth in the residential new construction end market for our Installation segment. </span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(7)</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Calculated based on period-over-period growth in the total commercial end market. Our commercial end market consists of heavy and light commercial projects.</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(8)</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Calculated based on period-over-period growth in our Other category which consists for our Manufacturing and Distribution operating segments. Our distribution businesses were acquired in December, 2021 and April, 2022.</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(9)</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">The heavy commercial end market, a subset of our total commercial end market, comprises projects that are much larger than our average installation job. The end market is excluded from the volume growth and price/mix growth calculations as to not skew the growth rates given its much larger per-job revenue compared to the average jobs in our remaining end markets.</span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(10)</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Calculated based on period-over-period change in the number of completed same-branch jobs within our Installation segment for all markets we serve except the heavy commercial end market. </span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(11)</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Defined as change in the mix of products sold and related pricing changes and calculated as the change in period-over-period average selling price per same-branch jobs within our Installation segment for all markets we serve except the heavy commercial market, multiplied by total current year jobs. The mix of end customer and product would have an impact on the year-over-year price per job.</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(12)</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">U.S. Census Bureau data, as revised.</span></td></tr></table></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">35</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Net revenue, cost of sales and gross profit</span></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The components of gross profit for 2022, 2021 and 2020 were as follows (dollars in thousands):</span></div><div style="margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:84.210%"><tr><td style="width:1.0%"></td><td style="width:29.281%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.309%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.668%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.837%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.668%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.309%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.668%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.879%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.668%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.313%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Change</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Change</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net revenue</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,669,844&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35.6&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,968,650&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19.1&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,653,225&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of sales</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,842,060&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33.6&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,379,131&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20.6&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,143,251&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross profit</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">827,784&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">40.4&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">589,519&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15.6&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">509,974&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross profit percentage</span></td><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31.0&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29.9&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30.8&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net revenue increased during the year ended December&#160;31, 2022 compared to the year ended December&#160;31, 2021 primarily due to increased selling prices and organic growth as shown in the Key Measures of Performance section above. Acquisitions also meaningfully contributed to our 2022 revenue growth, adding $217.1&#160;million of revenue in 2022. Our residential end market grew 33.2% primarily due to selling price increases, higher volume and the continued success of our acquisition strategy. Our commercial end market continued to face challenges associated with project delays due to economic concerns and the COVID-19 pandemic. However, the commercial business improved from its 2021 performance as evidenced by a 6.6% annual growth rate in same branch sales in 2022, showing signs of improvement in the second half of 2022. Our price/mix metric was positively impacted during the year ended December&#160;31, 2022 as we were able to pass along selling price increases to partially offset multiple price increases in material costs. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The remaining overall growth in net revenue for the year December&#160;31, 2022 is attributable to the recent acquisitions of AMD Distribution and Central Aluminum which form our Distribution operating segment. This operating segment, combined with our Manufacturing operating segment, grew from $29.3 million to $162.4 million in net revenue for the year ended December&#160;31, 2022. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As a percentage of net revenue, gross profit increased during the year ended December&#160;31, 2022 compared to the year ended December&#160;31, 2021 primarily on the strength of sales growth across all of our end markets as well as strong price/mix growth. Sales price increases allowed us to gain significant leverage on our labor and other cost of sales expenses as a percentage of net revenue. However, ongoing industry wide supply chain issues impacted our operating efficiency, driving our material costs higher. In order to meet customer demand during the year, we purchased materials from distributors and home centers at a premium to what we typically would purchase directly from manufacturers. As a result, during the year ended December&#160;31, 2022, we estimate these purchases increased materials expense by approximately $4.8 million, therefore reducing gross profit by 20 basis points during the period. While inflation and material supply chain issues are likely to persist into 2023, we will continue to work with our suppliers to lessen the impact on our margins and with our customers to offset further cost increases through selling price adjustments.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Operating Expenses</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Operating expenses for 2022, 2021 and 2020 were as follows (dollars in thousands):</span></div><div style="margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:84.941%"><tr><td style="width:1.0%"></td><td style="width:34.700%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.464%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.660%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.431%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.660%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.464%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.660%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.431%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.660%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.470%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Change</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Change</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Selling</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">119,031</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27.7&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">93,204</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14.2&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">81,613</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Percentage of total net revenue</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.9&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Administrative</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">335,688</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23.2&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">272,391</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14.4&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">238,147</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Percentage of total net revenue</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12.6&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13.8&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14.4&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ccedff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gains on acquisition earnouts</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(16,109)</span></td><td colspan="3" style="background-color:#ccedff;padding:0 1pt"></td><td colspan="2" style="background-color:#ccedff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1456.4&#160;</span></td><td style="background-color:#ccedff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ccedff;padding:0 1pt"></td><td style="background-color:#ccedff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ccedff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,035)</span></td><td style="background-color:#ccedff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ccedff;padding:0 1pt"></td><td colspan="2" style="background-color:#ccedff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">450.5&#160;</span></td><td style="background-color:#ccedff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ccedff;padding:0 1pt"></td><td style="background-color:#ccedff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ccedff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(188)</span></td><td style="background-color:#ccedff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Percentage of total net revenue</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.6)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.1)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.0&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amortization</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">43,763</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18.0&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">37,079</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29.9&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28,535</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Percentage of total net revenue</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.6&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.9&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-top:15pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Selling</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The dollar increase in selling expenses in 2022 was primarily driven by a year-over-year increase in selling wages, benefits and commissions of $23.4 million, or 27.5%, which supported our increased net revenue of 35.6%. Selling expense decreased as a percentage of sales primarily due to increased leverage on selling wages from increased sales.</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">36</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:15pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Administrative</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The dollar increase in administrative expenses in 2022 was primarily due to an increase in wages and benefits in the amount of $32.2 million, which was attributable to both acquisitions and organic growth as well as favorable company performance. Facility expense and insurance cost increases due to organic and acquisition-driven growth also factored into the overall increase in administrative operating expenses. During 2022, we saw our administrative costs decrease as a percentage of sales primarily due to the leverage gained on these costs from an increase in net revenue. 2021 and 2020 balances previously included amounts on the gains on acquisition earnouts that were recast during the year ended December&#160;31, 2022 on the Consolidated Statements of Operations and Comprehensive Income. </span></div><div style="margin-top:15pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Gains on acquisition earnouts</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Some of our acquisitions have contingent consideration liabilities in the form of earnouts included in the total purchase price of the business. We assess the fair value of the contingent consideration liability at each reporting period, and any changes in the estimated fair value are reflected in gains on acquisition earnouts on the Consolidated Statements of Operations and Comprehensive Income. The gain recorded during the year ended December&#160;31, 2022 increased from 2021 primarily due to a $15.1 million gain on the Central Aluminum Supply Corporation earnout recorded as a result of revised earnout target expectations. Prior period amounts were previously included in administrative expenses on the Consolidated Statements of Operations and Comprehensive Income.</span></div><div style="margin-top:15pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Amortization</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our intangible assets include non-competes, customer relationships, trade names and backlog established upon acquisition of most businesses we acquire. Amortization expense increased $2.9 million in 2022 resulting from the increase in new intangible assets from 2022 acquisitions, with the remaining increase due to a full year of amortization expense attributable to prior year acquisitions. See Note 18, Business Combinations, in Item 8, Financial Statements and Supplementary Data, of this Form 10-K for information on our acquisitions.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Other Expense, net</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Other expense, net for 2022, 2021 and 2020 was as follows (dollars in thousands):</span></div><div style="margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:80.116%"><tr><td style="width:1.0%"></td><td style="width:30.834%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.221%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.712%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.126%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.712%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.221%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.712%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.126%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.712%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.224%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Change</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Change</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest expense, net</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,574&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26.6&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,842&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8.4&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,291&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">530&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(221.3)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(437)</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(209.5)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">399</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total other expense, net</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">42,104&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29.9&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,405&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.6&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,690&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The year-over-year increase in other expense, net during 2022 was primarily a result of increased interest rates on our variable rate debt and increased average debt levels. See Note 8, Long-Term Debt, in Item 8, Financial Statements and Supplementary Data, of this Form 10-K for further information regarding debt balances.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Income Tax Provision</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Income tax provision and effective tax rates for 2022, 2021 and 2020 were as follows (dollars in thousands):</span></div><div style="margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:70.760%"><tr><td style="width:1.0%"></td><td style="width:42.908%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.875%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.833%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.875%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.833%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.876%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income tax provision</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">79,879</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">36,712</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,938</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Effective tax rate</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26.3&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23.6&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25.9&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the year ended December&#160;31, 2022, our tax rate was unfavorably impacted by certain expenses not being deductible for income tax reporting purposes.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the year ended December&#160;31, 2021, our tax rate was favorably impacted by the release of a valuation allowance for a tax filing entity, excess tax benefits from share-based compensation arrangements and statute of limitation expirations of uncertain tax positions. </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">37</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Other comprehensive gain (loss), net of tax</span></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Other comprehensive gain (loss), net of tax for 2022, 2021 and 2020 were as follows (in thousands):</span></div><div style="margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:88.304%"><tr><td style="width:1.0%"></td><td style="width:54.032%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.303%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.627%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.303%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.627%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.308%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unrealized gain (loss) on cash flow hedge, net of taxes</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">40,787&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,536&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,620)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the year ended December&#160;31, 2022, we amended the maturity dates for our three existing interest rate swaps. These swaps had unrealized gains of $51.2 million at the amendment date of July 8, 2022 and the amendment created off-market terms of $25.7 million due to an other-than-insignificant financing element. The unrealized gains will be amortized as a decrease to interest expense, net through the original maturity date of April 2030 and the off-market terms will be amortized as an increase to interest expense, net through December 2025. We amortized $3.9 million of the remaining unrealized gains, off-market terms and unrealized losses on our terminated cash flow hedges to interest expense, net during the year ended December&#160;31, 2022, not including tax effects of $1.0 million. Also, during the year ended December&#160;31, 2022, we recorded an unrealized gain, net of taxes, of $37.9&#160;million on our cash flow hedges primarily due to the market's expectations for interest rates in the future relative to our three existing interest rate swaps and two forward interest rate swaps. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the year ended December&#160;31, 2021, we recorded an unrealized gain, net of taxes, of $6.4&#160;million on our cash flow hedges primarily due to the market's expectations for interest rates in the future relative to our July 2021 swap. We also amortized $3.2 million of the unrealized loss on our terminated cash flow hedges to interest expense, net during the year ended December&#160;31, 2021, not including tax effects of $1.1 million. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We amortize the unrealized gains and losses on our terminated cash flow hedges at the time of termination over the course of the originally scheduled settlement dates of the terminated swaps. For more information on our cash flow hedges, see "Liquidity and Capital Resources, Derivative Instruments" below and Note 12, Derivatives and Hedging Activities, in Item 8, Financial Statements and Supplementary Data, of this Form 10-K.</span></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_52"></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">KEY FACTORS AFFECTING OUR OPERATING RESULTS</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Inflation and Interest Rates</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inflation affected the economy as a whole in 2022 as consumer price inflation reached 40-year highs, negatively impacting consumer sentiment and increasing market uncertainty. The Federal Reserve took actions to moderate and stabilize inflation by raising the federal funds rate multiple times in 2022 and signaling plans to continue raising the rate in 2023. This caused the average mortgage rate in the United States to more than double since the end of 2021. Rising interest rates began to curtail housing demand in the second half of 2022, reducing mortgage financing affordability. As a result, the residential homebuilding market began showing signs of weakening in late 2022 and early 2023 and housing starts, permits and completions are forecasted to decline in 2023. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We expect to be impacted by these economic headwinds in 2023. However, we believe the large residential construction backlog of both units under construction and units not started will partially offset these challenges. Additionally, there are housing shortages in some of the markets we serve and we expect that backlog in our growing multi-family business will also help to offset any declines we may face in the residential homebuilding market. Many existing homeowners are locked into low interest mortgages and with an aging housing stock, so we expect that the repair and remodel markets we service could experience growth as well. Incentives from the Inflation Reduction Act of 2022 are also likely to support repair and remodel demand in 2023, as evidenced by growth in this market of nearly 50% in the three months ended December 31, 2022 compared to the same period in 2021.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Trends in the Construction Industry</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Rising inflation and interest rates, as discussed above, began to reduce the demand and affordability of new homes in late 2022. Previously, residential housing demand experienced a rapid recovery after the onset of the COVID-19 pandemic. This quick increase in demand created material shortages, causing inflationary pressure on materials. As a result, we experienced significant price increases on most of the products we install. We anticipate these shortages will partially lessen in 2023 assuming inflationary pressures cause housing demand to lessen. This outlook may change depending on housing demand and the ability of manufacturers to produce adequate supply. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our operating results may vary based on our product mix and the mix of our end markets among new single-family, multi-family and commercial builders and owners of existing homes. We maintain a mix of business among all types of homebuilders </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">38</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">ranging from small custom builders to large regional and national homebuilders as well as a wide range of commercial builders. Net revenue derived from our ten largest homebuilder customers in the United States was approximately 16% for the year ended December&#160;31, 2022. The residential new construction and repair and remodel markets represented approximately 80% of our total net revenue for the year ended December&#160;31, 2022, compared to 83% in the same period in 2021. The remaining portion was attributable to our new distribution businesses and the commercial construction end market.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Cost and Availability of Materials</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We typically purchase the materials we use in our business directly from manufacturers. The industry supply of these materials experienced supply shortages in 2022 due to strong demand and effects from the COVID-19 pandemic. In order to meet customer demand during the year, we purchased materials from distributors and home centers at a premium to what we typically would purchase directly from manufacturers, therefore reducing gross profit.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In addition, we experience price increases from our suppliers from time to time, including multiple increases over the last three years caused by supply shortages and general economic inflationary pressures. We have experienced unprecedented increased pricing for fiberglass and foam insulation materials over the last three years but expect manufacturers to slow the pace of price increases in 2023. Increased market pricing, regardless of the catalyst, has and could continue to impact our results of operations in 2023, to the extent that price increases cannot be passed on to our customers. Our selling price increases were able to support most material cost increases in 2022 but we may have more difficulty raising prices in 2023 if housing demand slows. We will continue to work with our customers to adjust selling prices to offset higher costs as they occur. </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Cost of Labor</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our business is labor intensive. As of December&#160;31, 2022, we had approximately 10,300 employees, most of whom work as installers on local construction sites. We expect to spend more to hire, train and retain installers to support our growing business in 2023, as tight labor availability continues within the construction industry. We offer a comprehensive benefits package unlike many of our local competitors, which will increase costs as we hire additional personnel. Our workers&#8217; compensation costs also continue to rise as we increase our coverage for additional personnel. We obtained leverage on our labor costs during the year ended December&#160;31, 2022, compared to 2021 due to increased selling prices per job. However, inflation and market competition could increase these costs in the near-term.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We experienced strong employee retention, turnover and labor efficiency rates in the year ended December&#160;31, 2022. We believe this is partially a result of various programs meant to benefit our employees, including our financial wellness plan, longevity stock compensation plan for employees and assistance from the Installed Building Products Foundation meant to benefit our employees, their families and their communities. While improved retention drives lower costs to recruit and train new employees, resulting in greater installer productivity, these improvements are somewhat offset by the additional costs of these incentives. </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">COVID-19 Impacts</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The COVID-19 pandemic has caused significant volatility, uncertainty and economic disruption. As the pandemic continues to move towards the endemic stage, the full extent and scope of the impact on our business and industry, as well as national, regional and global markets and economies, depends on numerous evolving factors that we may not be able to accurately predict, including the duration and scope of the pandemic, additional government actions taken in response to the pandemic, the impact on construction activity and demand for homes (based on employment levels, consumer spending and consumer confidence). The fast recovery in residential housing demand helped offset prolonged impacts of the pandemic already experienced. However, we have experienced supply constraints and material price increases ultimately stemming from the effects of the pandemic across most of the products we install or sell, which could continue into 2023.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In the commercial sector, we have experienced some impact to our commercial business from the pandemic, mainly in the form of project start delays and other inefficiencies. In the future, certain large-scale infrastructure programs may be at risk if the need for such structures decline, project funding declines or as consumer behaviors change in the wake of COVID-19 disruptions to the economy and changes to our general ways of life. For example, reduced demand for office buildings and/or educational facilities, decreased airport traffic, or decreased usage of sports arenas or similar commercial structures could impact our commercial end market. We continue to evaluate the nature and extent of the COVID-19 pandemic&#8217;s impact on our financial condition, results of operations and cash flows. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On March 27, 2020, the Coronavirus Aid, Relief, and Economic Security ("CARES Act") was signed into law. The CARES Act provides numerous tax provision and other stimulus measures. We benefited from the temporary suspension of the employer portion of Social Security taxes by deferring $20.7 million of payments in 2020. We have since paid back these deferrals, </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">39</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">including paying 50% back in the year ended December&#160;31, 2022. It is important to note that this does not impact the timing of the expense, only the timing of the payment. </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Environmental, Social and Governance, Climate Change and Other Factors</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">According to the Office of Energy Efficiency &amp; Renewable Energy, over $400 billion is spent each year to power homes and commercial structures that consume 75% of all electricity used in the United States and 40% of the nation&#8217;s total energy. As a result, U.S. buildings account for 35% of the U.S. carbon dioxide emissions that drive the climate crisis. Insulation is a critical component in the construction of homes and commercial structures. Installing insulation also helps increase energy conservation because it is the best way to prevent energy waste in most homes and commercial structures. Beyond our service offerings, we also recognize that as a good corporate citizen, we have a responsibility to support our communities and be stewards of the environment. We have transitioned a large portion of our electricity supply to a carbon-free energy source and entered a national waste management program to increase recycling at our facilities, reducing landfill waste. We continue to work to find new ways to reduce our carbon footprint. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Certain effects of climate change that may cause severe weather events could have a material effect on our operations. Climate change and/or adverse weather conditions such as unusually prolonged cold conditions, rain, blizzards, hurricanes, earthquakes, fires, or other natural disasters could accelerate, delay or halt construction or installation activity or impact our suppliers. The impacts of climate change may subject us to increased costs, regulations, reporting requirements, standards or expectations regarding the environmental impacts of our business. Most, if not all, of our locations may be vulnerable to the adverse effects of climate change. Weather is one of the main reasons for annual seasonality cycles of our business, and any adverse weather conditions can enhance this seasonality.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Lastly, we expect our selling and administrative expenses to continue to increase as our business grows, which could impact our future operating profitability.</span></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_55"></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">SEASONALITY</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We tend to have higher sales during the second half of the year as our homebuilder customers complete construction of homes placed under contract for sale in the traditionally stronger spring selling season. In addition, some of our larger branches operate in states impacted by winter weather and as such experience a slowdown in construction activity during the first quarter of the calendar year. This winter slowdown contributes to traditionally lower sales and profitability in our first quarter. See Part I, Item 1, Business, of this Form 10-K for further information.</span></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_58"></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">LIQUIDITY AND CAPITAL RESOURCES</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our capital resources primarily consist of cash from operations and borrowings under our various debt agreements and capital equipment leases and loans. As of December&#160;31, 2022, we had cash and cash equivalents of $229.6 million as well as access to $250.0 million under our asset-based lending credit facility (as defined below), less $5.8&#160;million of outstanding letters of credit, resulting in total liquidity of $473.9 million. Our total liquidity is reduced by $1.6 million within our cash and cash equivalents due to a deposit into a trust to serve as additional collateral for our workers' compensation and general liability policies. This amount can be converted to a letter of credit at our discretion and would reduce the availability of our asset-based lending facility (as defined below). Liquidity may also be limited in the future by certain cash collateral limitations under our asset-based credit facility (as defined below), depending on the status of our borrowing base availability. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We experienced unprecedented increases in pricing for fiberglass and foam insulation materials in 2022. Increased market pricing on the materials we purchase has and could continue to impact our results of operations in 2023 due to the higher prices we must pay for materials. </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Short-Term Material Cash Requirements</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For at least the next twelve months, our primary capital requirements are to fund working capital needs, operating expenses, acquisitions and capital expenditures and to meet principal and interest obligations and make required income tax payments. We may also use our resources to fund our optional stock repurchase program and pay quarterly and annual dividends. During 2023, we anticipate discretionary spending for capital improvements and quarterly dividends to approximate 2022 levels of approximately $45.6 million and $36.0 million, respectively, as well as approximately $25.2 million for our annual variable dividend to be paid March 31, 2023. In addition, we expect to use cash and cash equivalents to acquire various companies with at least $100.0 million in aggregate net revenue. The amount of cash paid for an acquisition is dependent on various factors, including the size and determined value of the business being acquired.</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">40</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Firm commitments for funds include $68.5 million in interest and principals payments on long-term debt obligations including our Senior Notes, Term Loan, notes payable to sellers of acquisitions and vehicles purchased under the Master Loan and Security Agreement, the Master Equipment Agreement and the Master Loan Agreements. Additionally, we maintain certain production vehicles under a finance lease structure which will require $3.0 million in interest and principal payments under current agreements in 2023. We lease certain locations, vehicles and equipment under operating lease agreements that will require $28.9 million in funds over the next twelve months. Finally, we have a product supply agreement with a certain vendor that requires us to purchase a minimum of $27.0 million of inventory in 2023. Payments for income taxes cannot be estimated at this time.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We expect to meet our short-term liquidity requirements primarily through net cash flows from operations, our cash and cash equivalents on hand and borrowings from banks under the Master Loan and Security Agreement, the Master Equipment Agreement and the Master Loan Agreements. Additional sources of funds, should we need them, include borrowing capacity under our asset-based lending credit facility (as defined below).</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We believe that our cash flows from operations, combined with our current cash levels and available borrowing capacity, will be adequate to support our ongoing operations and to fund our business needs, commitments and contractual obligations for at least the next 12 months as evidenced by our net positive cash flows from operations for the years ended December&#160;31, 2022, 2021 and 2020. We believe that we have access to additional funds, if needed, through the capital markets to obtain further debt financing under the current market conditions, but we cannot guarantee that such financing will be available on favorable terms, or at all.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Long-Term Material Cash Requirements</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Beyond the next twelve months, our principal demands for funds will be to fund working capital needs and operating expenses, to meet principal and interest obligations on our long-term debts and finance leases as they become due or mature, and to make required income tax payments. Additional funds may be spent on acquisitions, capital improvements and dividend payments, at our discretion.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Known obligations beyond the next twelve months include $1,036.5 million in interest and principals payments on long-term debt obligations noted above through 2028, as follows (amounts in thousands): </span></div><div style="margin-top:9pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:23.099%"><tr><td style="width:1.0%"></td><td style="width:50.165%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:47.635%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2024</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">85,525&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">72,305&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">70,169&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">59,555&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">810,167&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In addition, our finance leases will require $7.0 million in interest and principal payments under current agreements through 2026. Operating lease obligations will require $54.2 million in payments beyond the next twelve months.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Sources and Uses of Cash and Related Trends</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Working Capital</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We carefully manage our working capital and operating expenses. As of December&#160;31, 2022 and 2021, our working capital, including cash and cash equivalents, was $556.4 million, or 20.8% of net revenue, and $551.7 million, or 28.0% of net revenue, respectively. The increase in working capital year-over-year was driven primarily by accounts receivable increasing $84.5 million resulting from our increased net revenue, and inventories increasing by $33.6 million due to material price inflation, increased selling activity and distribution company acquisitions. These increases were partially offset by a $103.9 million decrease in cash and cash equivalents resulting from the payment of dividends and share repurchases and an increase of $16.5 million in accounts payable primarily due to material price inflation and increased sales volume. We continue to look for opportunities to reduce our working capital as a percentage of net revenue.</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">41</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents our cash flows (in thousands):</span></div><div style="margin-top:7pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:57.671%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.619%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.619%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.523%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December&#160;31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net cash provided by operating activities</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">277,904&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">138,314&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">180,789&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net cash used in investing activities</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(158,669)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(278,439)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(77,794)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net cash (used in) provided by financing activities</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(223,093)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">242,090&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(49,364)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Cash Flows from Operating Activities</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our primary source of cash provided by operations is revenues generated from installing or selling building products and the resulting operating income generated by these revenues. Operating income is adjusted for certain non-cash items, and our cash flows from operations can be impacted by the timing of our cash collections on sales and collection of retainage amounts. The COVID-19 pandemic has not had a material impact to our cash collections to date. Our primary uses of cash from operating activities include payments for installation materials, compensation costs, leases, income taxes and other general corporate expenditures included in net income. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net cash provided by operating activities increased from 2021 to 2022 primarily due to higher net income due to increased sales. We also received a cash payment of $25.5 million for amending the maturity date of our interest rate swap derivatives. </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Cash Flows from Investing Activities</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Sources of cash from investing activities consist primarily of proceeds from the sales of property and equipment and, periodically, maturities from short term investments. Cash used in investing activities consists primarily of purchases of property and equipment, payments for acquisitions and, periodically, purchases of short term investments.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net cash used by investing activities decreased from 2021 to 2022 primarily due to the decrease in payments for acquisitions. We completed three less acquisitions in 2022 compared to 2021, and the size of the acquisitions were generally larger in the year ended December&#160;31, 2021. The amount of cash paid for an acquisition is dependent on various factors, including the size and determined value of the business being acquired. See Note 18, Business Combinations, in Item 8, Financial Statements and Supplementary Data, of this Form 10-K for more information regarding our business acquisitions in 2022, 2021 and 2020. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Additionally, total cash used to purchase property and equipment increased in 2022, and we expect to continue to support any increases in future net revenue through further capital expenditures. A majority of these capital expenditures were subsequently reimbursed via various vehicle and equipment notes payable, with related cash inflows shown in cash flows from financing activities.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Cash Flows from Financing Activities</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our sources of cash from financing activities consist of proceeds from the issuance of debt and new vehicle and equipment notes payable. Cash used in financing activities consists primarily of debt repayments, acquisition-related obligations, dividends and stock repurchases. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We had a net use of cash in financing activities in 2022 compared to a net inflow of cash in 2021 primarily due to the proceeds on our Term Loan received in 2021. We did not incur any such significant new borrowings during the year ended December&#160;31, 2022. We also repurchased $137.6 million of common stock during the year ended December&#160;31, 2022 while we did not repurchase any shares under our stock repurchase plan during the year ended December&#160;31, 2021. Our net cash (used in) provided by financing activities during the year ended December&#160;31, 2022 also included the payment of our first variable annual dividend of $26.2 million. </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Debt</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">5.75% Senior Notes due 2028</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In September 2019, we issued $300.0 million in aggregate principal amount of 5.75% senior unsecured notes (the &#8220;Senior Notes&#8221;). The Senior Notes will mature on February 1, 2028 and interest will be payable semi-annually in cash in arrears on February 1 and August 1, commencing on February 1, 2020. The net proceeds from the Senior Notes offering were $295.0 million after debt issuance costs. </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">42</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The indenture covering the Senior Notes contains restrictive covenants that, among other things, limit the ability of the Company and certain of our subsidiaries (subject to certain exceptions) to: (i) incur additional debt and issue preferred stock; (ii) pay dividends on, redeem or repurchase stock in an aggregate amount exceeding 2.0% of market capitalization per fiscal year, or in an aggregate amount exceeding certain applicable restricted payment baskets; (iii) prepay subordinated debt; (iv) create liens; (v) make specified types of investments; (vi) apply net proceeds from certain asset sales; (vii) engage in transactions with affiliates; (viii) merge, consolidate or sell substantially all of our assets; and (ix) pay dividends and make other distributions from subsidiaries.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Credit Facilities</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In February 2022, we amended and extended the term of our asset-based lending credit agreement (the "ABL Credit Agreement"). The ABL Credit Agreement increased the commitment under the asset-based lending credit facility (the "ABL Revolver") to $250 million from $200.0 million, and permits us to further increased the commitment amount up to $300.0 million. The amendment also extends the maturity date from September 26, 2024 to February 17, 2027. The ABL Revolver bears interest at either the base rate or the Secured Overnight Financing Rate ("Term SOFR"), at our election, plus a margin of 0.25% or 0.50% in the case of base rate loans or 1.25% or 1.50% for Term SOFR advances (in each case based on a measure of availability under the ABL Credit Agreement). The amendment also allows for modification of specified fees depend upon achieving certain sustainability targets, in addition to making other modifications to the ABL Credit Agreement. Including outstanding letters of credit, our remaining availability under the ABL Revolver as of December&#160;31, 2022 was $244.2 million. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The ABL Revolver provides incremental revolving credit facility commitments of up to $50.0 million. The terms and conditions of any incremental revolving credit facility commitments must be no more favorable than the terms of the ABL Revolver. The ABL Revolver also allows for the issuance of letters of credit of up to $100.0 million in aggregate and borrowing of swingline loans of up to $25.0 million in aggregate. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The ABL Credit Agreement contains a financial covenant requiring the satisfaction of a minimum of fixed charge coverage ratio of 1.0x in the event that we do not meet a minimum measure of availability under the ABL Revolver. The ABL Credit Agreement and the Term Loan Agreement contain restrictive covenants that, among other things, limit the ability of the Company and certain of our subsidiaries (subject to certain exceptions) to: (i) incur additional debt and issue preferred stock; (ii) pay dividends on, redeem or repurchase stock in an aggregate amount exceeding the greater of 2.0% of market capitalization per fiscal year or certain applicable restricted payment basket amounts' (iii) prepay subordinated debt; (iv) create liens; (v) make specified types of investments; (vi) apply net proceeds from certain asset sales; (vii) engage in transactions with affiliates; (viii) merge, consolidate or sell substantially all of our assets; and (ix) pay dividends and make other distributions from subsidiaries. </span></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In December 2021, we entered into a new $500 million, seven-year term loan facility due December 2028 (the &#8220;Term Loan&#8221;) under our credit agreement (the &#8220;Term Loan Agreement&#8221;), dated as of December 14, 2021 with Royal Bank of Canada as the administrative agent and collateral agent thereunder. The Term Loan amortizes in quarterly principal payments of $1.25&#160;million starting on March 31, 2022, with any remaining unpaid balances due on the maturity date of December 14, 2028. The Term Loan bears interest at either the base rate (which approximates the prime rate) or the Eurodollar rate, plus a margin of (A) 1.25% in the case of base rate loans or (B) 2.25% in the case of Eurodollar rate loans. Proceeds from the Term Loan were used to refinance and repay in full all amounts outstanding under our previous term loan agreement. We intend to use the remaining funds for general corporate purposes, including acquisitions and other growth initiatives. As of December&#160;31, 2022, we had $489.2&#160;million, net of unamortized debt issuance costs, due on our Term Loan. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Subject to certain exceptions, the Term Loan will be subject to mandatory prepayments of (i) 100% of the net cash proceeds from issuances or incurrence of debt by the Company or any of its restricted subsidiaries (other than with respect to certain permitted indebtedness (excluding any refinancing indebtedness); (ii) 100% (with step-downs to 50% and 0% based on achievement of specified net leverage ratios) of the net cash proceeds from certain sales or dispositions of assets by the Company or any of its restricted subsidiaries in excess of a certain amount and subject to reinvestment provision and certain other exception; and (iii) 50% (with step-downs to 25% and 0% based upon achievement of specified net leverage ratios) of excess cash flow of the Company and its restricted subsidiaries in excess of $15.0&#160;million, subject to certain exceptions and limitations. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">All of the obligations under the Term Loan and ABL Revolver are guaranteed by all of the Company&#8217;s existing restricted subsidiaries and will be guaranteed by the Company&#8217;s future restricted subsidiaries. Additionally, all obligations under the Term Loan and ABL Revolver, and the guarantees of those obligations, are secured by substantially all of the assets of the Company and the guarantors, subject to certain exceptions and permitted liens, including a first-priority security interest in such assets that constitute ABL Priority Collateral, as defined in the ABL Credit Agreement, and a second-priority security interest in such assets that constitute Term Loan Priority Collateral, as defined in the Term Loan Agreement.</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">43</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December 31, 2022, we were in compliance with all applicable covenants under the Term Loan Agreement, ABL Credit Agreement, and the Senior Notes.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Derivative Instruments</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2022, we had five total interest rate swaps including two forward interest rate swaps. For a summary of notional amounts, maturity dates and interest rates for each of these swaps, see Note 12, Derivatives and Hedging Activities, in Item 8, Financial Statements and Supplementary Data of this Form 10-K. Together, these five swaps serve to hedge $400.0 million of the variable cash flows on our variable rate Term Loan through maturity. The assets and liabilities associated with the forward interest rate swap are included in other current and other non-current assets on the Consolidated Balance Sheets at their fair value amounts as described in Note 10, Fair Value Measurements, in Item 8, Financial Statements and Supplementary Data, of this Form 10-K.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">LIBOR is used as a reference rate for our Term Loan and our interest rate swap agreements we use to hedge our interest rate exposure. For more information on the discontinuance of LIBOR, see Item 7A. Quantitative and Qualitative Disclosures about Market Risk, of this Form 10-K.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Vehicle and Equipment Notes</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have financing loan agreements with various lenders to provide financing for the purpose of purchasing or leasing vehicles and equipment used in the normal course of business. Vehicles and equipment purchased or leased under each financing arrangement serve as collateral for the note applicable to such financing arrangement. Regular payments are due under each note for a period of typically 60 consecutive months after the incurrence of the obligation.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Total outstanding loan balances relating to our master loan and equipment agreements were $73.0 million and $69.2 million as of December&#160;31, 2022 and 2021, respectively. Depreciation of assets held under these agreements is included within cost of sales on the Consolidated Statements of Operations and Comprehensive Income. See Note 8, Long-Term Debt, in Item 8, Financial Statements and Supplementary Data of this Form 10-K for more information regarding our Master Loan and Security Agreement, Master Equipment Lease Agreement and Master Loan Agreements.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Letters of Credit and Bonds</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We may use performance bonds to ensure completion of our work on certain larger customer contracts that can span multiple accounting periods. Performance bonds generally do not have stated expiration dates; rather, we are released from the bonds as the contractual performance is completed. In addition, we occasionally use letters of credit and cash to secure our performance under our general liability and workers&#8217; compensation insurance programs. Permit and license bonds are typically issued for one year and are required by certain municipalities when we obtain licenses and permits to perform work in their jurisdictions. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes our outstanding bonds, letters of credit and cash-collateral (in thousands):</span></div><div style="margin-top:14pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:77.262%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:20.538%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31, 2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Performance bonds</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">104,220&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Insurance letters of credit and cash collateral</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">68,475&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Permit and license bonds</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,682&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total bonds and letters of credit</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">182,377&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have $58.9 million included in our insurance letters of credit in the above table that are unsecured and therefore do not reduce total liquidity. As of December&#160;31, 2022, we have $1.6 million posted into a trust to serve as additional collateral for our workers&#8217; compensation and general liability policies. This collateral can be converted to a letter of credit at our discretion and is therefore not considered to be restricted cash.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Critical Accounting Estimates</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Management&#8217;s discussion and analysis of our financial condition and results of operations is based upon our consolidated financial statements, which have been prepared in accordance with accounting principles generally accepted in the United States. The preparation of our consolidated financial statements requires us to make estimates and assumptions that affect the reported amounts of assets, liabilities, revenues and expenses and related disclosure of contingent assets and liabilities. Certain accounting policies involve judgments and uncertainties to such an extent that there is a reasonable likelihood that materially </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">44</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">different amounts could have been reported using different assumptions or under different conditions. We evaluate our estimates and assumptions on a regular basis. We base our estimates on historical experience and various other assumptions that are believed to be reasonable under the circumstances, the results of which form the basis for making judgments about the carrying values of our assets and liabilities that are not readily apparent from other sources. Actual results may differ from these estimates and assumptions used in preparation of our consolidated financial statements. We believe the following critical accounting estimate requires judgement and estimation in the preparation of our consolidated financial statements and to be fundamental to our results of operations. See Note 2, Significant Accounting Policies included in Item 8 of the Form 10-K for a summary of all of our significant accounting policies and their effect on our financial statements.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Revenue recognition</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The majority of our revenues are recognized when we complete our contracts with customers to install building products and the control of the promised good or service is transferred to our customers, in an amount that reflects the consideration we expect to be entitled to in exchange for those goods or services. For contracts that are not complete at the reporting date, we recognize revenue over time utilizing a cost-to-cost input method as we believe this represents the best measure of when goods and services are transferred to the customer. When this method is used, we estimate the costs to complete individual contracts and record as revenue that portion of the total contract price that is considered complete based on the relationship of costs incurred to date to total anticipated costs. Under the cost-to-cost method, the use of estimated costs to complete each contract is a significant variable in the process of determining recognized revenue and can change throughout the duration of a contract due to contract modifications and other factors impacting job completion. Our cost estimation process is based on the knowledge, significant experience and judgement of project management, finance professionals and operational management to assess a variety of factors to determine revenues on uncompleted contracts. Such factors include historical performance, costs of materials and labor, change orders and the nature of the work to be performed. We generally review and reassess our estimates for each uncompleted contract at least quarterly to reflect the latest reliable information available. Changes in these estimates could favorably or unfavorably impact revenues and their related profits.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Goodwill Impairment</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We performed an annual quantitative goodwill impairment test as of October 1, 2022 on our Distribution operating segment which we have determined is also a reporting unit. The estimate of the reporting unit&#8217;s fair value was determined by placing a 75% weighting on a discounted cash flow model and a 25% weighting on market-related model using current industry information that involve significant unobservable inputs (Level 3 inputs). Based on the results of this evaluation, we concluded that there were no impairments of goodwill as the estimated fair value exceeded its carrying value. The estimated fair value exceeded the Distribution operating segment's carrying value by 8.6%. A 100 basis point change in the discount rate in our discounted cash flow model using our weighted system would not have resulted in an impairment for our Distribution operating segment, nor would reasonable changes in the weighting of each method. The estimates and assumptions used in the test are subject to uncertainty due to the professional judgments required. We performed a qualitative evaluation for our Installation and Manufacturing operating segments and determined that it was more likely than not that the fair value of these operating segments exceeded their carrying values.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Business combinations</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have recorded a significant amount of finite lived intangible assets associated with the acquisitions of businesses through our growth strategy. These intangible assets consist of customer relationships, backlog, non-competition agreements and business trademarks and trade names. Fair values and estimated useful lives are assigned to the identified intangible assets at the date of acquisition by financial professionals using either the income approach or the market approach along with certain industry information, professional experience and knowledge. In some instances, the process of assigning values and useful lives requires using judgment and other financial professionals may come to different conclusions. We review intangible assets whenever events or changes in circumstances indicate that the carrying value of an asset may not be recoverable. An impairment loss is recognized when estimated future cash flows expected to result from the use of an asset and its eventual disposition are less than its carrying amount. When impairment is identified, the carrying amount of the asset is reduced to its estimated fair value. Impairment losses would negatively affect earnings.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We also record contingent consideration liabilities that arise from future earnout payments to the sellers associated with certain acquisitions and are based on predetermined calculations of certain future results. These future payments can require a significant amount of estimation by considering various factors, including business risk and projections. We have used various estimate techniques and also consult with a third party valuation expert in certain instances. The contingent consideration liabilities are measured at fair value by discounting estimated future payments to their net present value.</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">45</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Insurance risks</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We carry insurance policies for a number of risks, including, but not limited to, workers&#8217; compensation, general liability, vehicle liability, property and our obligation for employee-related health care benefits. Most of our insurance policies contain an element for which we assume a portion of the risk by having high deductibles or a large cap on claims. For a description of our different insurance programs, see Note 2, Significant Accounting Policies in Item 8, Financial Statements and Supplementary Data in this Form 10-K.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our largest healthcare plan is partially self-funded with an insurance company paying benefits in excess of stop loss limits per individual/family. An accrual for estimated healthcare claims incurred but not reported (&#8220;IBNR&#8221;) is included within accrued compensation on the Consolidated Balance Sheets and was $3.8 million and $3.3 million as of December&#160;31, 2022 and 2021, respectively.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We participate in multiple workers&#8217; compensation plans covering a significant portion of our business. Under these plans, we use a high deductible program to cover losses above the deductible amount on a per claim basis. We accrue for the estimated losses occurring from both asserted and unasserted claims. Insurance claims and reserves include accruals of estimated settlements for known claims, as well as accruals of actuarial estimates of IBNR claims. In estimating these reserves, historical loss experience and judgments about the expected levels of costs per claim are considered. These claims are accounted for based on actuarial estimates of the undiscounted claims, including IBNR. We believe the use of actuarial methods to account for these liabilities provides a consistent and effective way to measure these highly judgmental accruals. As of December&#160;31, 2022 and 2021, we estimated total short-term and long-term known and IBNR claims for workers' compensation to be $23.7 million and $21.4 million, respectively. As of December&#160;31, 2022 and 2021, offsets of these liabilities were $2.3 million and $2.1 million, respectively, with insurance receivables and indemnification assets for claims under fully insured policies or claims that exceeded the stop loss limit. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We also participate in a high retention general liability insurance program and a high deductible auto insurance program. As of December&#160;31, 2022 and 2021, general liability and auto insurance reserves included in other current and long-term liabilities were $25.0 million and $21.9 million, respectively. As of December&#160;31, 2022 and 2021, offsets of these liabilities were $5.3 million and $3.9 million, respectively, with insurance receivables and indemnification assets for claims under fully insured policies or claims that exceeded the stop loss limit.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Liabilities relating to claims associated with these risks are estimated by considering historical claims experience, including frequency, severity, demographic factors and other actuarial assumptions. In estimating our liability for such claims, we periodically analyze our historical trends, including loss development, and apply appropriate loss development factors to the incurred costs associated with the claims with the assistance of external actuarial consultants. While we do not expect the amounts ultimately paid to differ significantly from our estimates, our reserves and corresponding expenses could be affected if future claim experience differs significantly from historical trends and actuarial assumptions.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have not made any material changes in our methodology used to establish our insurance reserves during the years ended December&#160;31, 2022 and 2021, and none of the adjustments to our estimates have been material.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Recent Accounting Pronouncements</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For a description of recently issued and/or adopted accounting pronouncements, see Note 2, Significant Accounting Policies, in Item 8, Financial Statements and Supplementary Data, of this Form 10-K.</span></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_61"></div><div style="margin-top:18pt;padding-left:54pt;text-indent:-54pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 7A.&#160;&#160;&#160;&#160;Quantitative and Qualitative Disclosures about Market Risk</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We are exposed to market risks related to fluctuations in interest rates on our outstanding variable rate debt. As of December&#160;31, 2022, we had $489.2 million outstanding on the Term Loan, net of unamortized debt issuance costs, no outstanding borrowings on the ABL Revolver and no outstanding borrowings under finance leases subject to variable interest rates. We had three active interest rate swaps which, when combined with our two forward interest rate swaps, serve to hedge $400.0 million of the variable cash flows on our Term Loan until its maturity as of December&#160;31, 2022. As a result, total variable rate debt of $95.0 million was exposed to market risks as of December&#160;31, 2022. A hypothetical one percentage point increase (decrease) in interest rates on our variable rate debt would increase (decrease) our annual interest expense by approximately $1.0 million. Our Senior Notes accrued interest at a fixed rate of 5.75%. </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">46</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For variable rate debt, interest rate changes generally do not affect the fair value of the debt instrument, but do impact future earnings and cash flows, assuming other factors are held constant. We have not entered into and currently do not hold derivatives for trading or speculative purposes. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">LIBOR is used as a reference rate for our Term Loan and our interest rate swap agreements we use to hedge our interest rate exposure. In 2017, the Financial Conduct Authority (&#8220;FCA&#8221;), the authority that regulates LIBOR, announced that it intends to stop compelling banks to submit rates for the calculation of LIBOR after 2021. The Intercontinental Exchange Benchmark Administration, the administrator of LIBOR, announced in March 2021 its intention to extend the publication of certain LIBOR settings, including the setting we use as a reference rate, to June 2023, and it is unclear whether new methods of calculating LIBOR will be established after that point. Our Term Loan Agreement and interest rate swap agreements include a provision related to the discontinuance of LIBOR to be replaced with one or more Secured Overnight Financing Rate ("SOFR") values or another alternative benchmark rate. However, when LIBOR ceases to exist after June 2023, the interest rates under the alternative rate could be higher than LIBOR. During the year ended December&#160;31, 2022, we adopted ASU 2022-06, Reference Rate Reform: Deferral of the Sunset Date of Topic 848 (Topic 848) which extends the sunset date of previous adopted guidance under ASU 2020-04 to December 31, 2024. The purpose of the guidance is to provide relief for impacted areas as it relates to impending reference rate reform. We elected to apply the hedge accounting expedients related to probability and the assessments of effectiveness for future LIBOR-indexed cash flows to assume that the index upon which future hedged transactions will be based matches the index on the corresponding derivatives. Application of these expedients preserves the presentation of derivatives consistent with past presentation.</span></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_64"></div><div style="margin-top:18pt;padding-left:54pt;text-indent:-54pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 8.&#160;&#160;&#160;&#160;Financial Statements and Supplementary Data</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">47</span></div></div></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_67"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">REPORT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">To the stockholders and the Board of Directors of Installed Building Products, Inc.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Opinion on the Financial Statements</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have audited the accompanying consolidated balance sheets of Installed Building Products, Inc. (the &#8220;Company&#8221;) as of December&#160;31, 2022 and 2021, the related consolidated statements of operations and comprehensive income, stockholders&#8217; equity, and cash flows, for each of the three years in the period ended December&#160;31, 2022, and the related notes (collectively referred to as the &#8220;financial statements&#8221;). In our opinion, the financial statements present fairly, in all material respects, the financial position of the Company as of December&#160;31, 2022 and 2021, and the results of its operations and its cash flows for each of the three years in the period ended December&#160;31, 2022, in conformity with accounting principles generally accepted in the United States of America.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have also audited, in accordance with the standards of the Public Company Accounting Oversight Board (United States) (PCAOB), the Company&#8217;s internal control over financial reporting as of December&#160;31, 2022, based on criteria established in </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Internal Control &#8212; Integrated Framework (2013) </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">issued by the Committee of Sponsoring Organizations of the Treadway Commission and our report dated February&#160;22, 2023, expressed an unqualified opinion on the Company&#8217;s internal control over financial reporting.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Basis for Opinion</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">These financial statements are the responsibility of the Company&#8217;s management. Our responsibility is to express an opinion on the Company&#8217;s financial statements based on our audits. We are a public accounting firm registered with the PCAOB and are required to be independent with respect to the Company in accordance with the U.S. federal securities laws and the applicable rules and regulations of the Securities and Exchange Commission and the PCAOB.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We conducted our audits in accordance with the standards of the PCAOB. Those standards require that we plan and perform the audit to obtain reasonable assurance about whether the financial statements are free of material misstatement, whether due to error or fraud. Our audits included performing procedures to assess the risks of material misstatement of the financial statements, whether due to error or fraud, and performing procedures that respond to those risks. Such procedures included examining, on a test basis, evidence regarding the amounts and disclosures in the financial statements. Our audits also included evaluating the accounting principles used and significant estimates made by management, as well as evaluating the overall presentation of the financial statements. We believe that our audits provide a reasonable basis for our opinion.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Critical Audit Matter</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The critical audit matter communicated below is a matter arising from the current-period audit of the financial statements that was communicated or required to be communicated to the audit committee and that (1) relates to accounts or disclosures that are material to the financial statements and (2) involved our especially challenging, subjective, or complex judgments. The communication of critical audit matters does not alter in any way our opinion on the financial statements, taken as a whole, and we are not, by communicating the critical audit matter below, providing separate opinions on the critical audit matter or on the accounts or disclosures to which it relates.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Goodwill, Distribution Reporting Unit - Refer to Notes 2 and 7 to the financial statements</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Critical Audit Matter Description</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company&#8217;s evaluation of goodwill for impairment involves comparing the carrying value of each reporting unit to the estimated fair value of the reporting unit. The Company&#8217;s determination of estimated fair value of the reporting unit is determined by considering both the market approach and the income approach. The determination of the estimated fair value requires management to make significant estimates and assumptions related to the valuation of the reporting unit. Changes in these assumptions could have a significant impact on either the fair value of the reporting unit, the amount of any goodwill impairment charge, or both. The Company&#8217;s consolidated goodwill balance was $373.6 million as of December&#160;31, 2022, of which $83.9 million was allocated to the Distribution reporting unit, which is the reporting unit that exhibits significant sensitivity to changes in estimates and assumptions given the limited cushion between the carrying value and estimated fair value. As of December&#160;31, 2022, the estimated fair value of the Distribution reporting unit exceeded its carrying value by approximately 8.6%.</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">48</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="margin-top:9pt"><span><br/></span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We identified the valuation of goodwill for the Distribution reporting unit as a critical audit matter because of the significant assumptions made by management to estimate its fair value. Those assumptions included revenue growth rates, forecasted EBITDA, and the selection of the discount rate. Our performance of audit procedures to evaluate the assumptions required a high degree of auditor judgment and an increased extent of audit effort, including the involvement of our fair value specialists.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%">How the Critical Audit Matter Was Addressed in the Audit</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our audit procedures related to testing the fair value of the Distribution reporting unit focused on revenue growth rates, forecasted EBITDA, and the selection of the discount rate and included the following procedures, among others:</span></div><div style="margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">We tested the effectiveness of controls over management&#8217;s goodwill impairment evaluation, including those over the determination of the fair value of the Distribution reporting unit, such as controls related to the revenue growth rates, forecasted EBITDA, and the selection of an appropriate discount rate. </span></div><div style="margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">With the assistance of our fair value specialists, we evaluated the reasonableness of the long-term growth rate, including testing the source information underlying the determination of the long-term growth rate, testing the mathematical accuracy of the calculation, and developing a range of independent estimates and comparing those to the long-term growth rate selected by management. </span></div><div style="margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">We assessed the reasonableness of management&#8217;s forecast by comparing the forecasted revenue growth rates and forecasted EBITDA information used in the Distribution reporting units historical results and internal communications to management and the board of directors, as well as comparing the forecasted revenue growth rates to peer company and industry historical revenue growth rates and forecasts. </span></div><div style="margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">We considered the impact of changes in the regulatory environment on management&#8217;s forecasts of the revenue growth rates. </span></div><div style="margin-top:9pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">With the assistance of our fair value specialists, we evaluated the reasonableness of the discount rate, including testing the source information underlying the determination of the discount rate, testing the mathematical accuracy of the calculation, and developing a range of independent estimates and comparing those to the discount rate selected by management.</span></div><div style="margin-top:9pt"><span><br/></span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">/s/ <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:AuditorName" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF82Ny9mcmFnOjFjNjU5YmEyMWVlZDQxMDBiYzRhZTU3NDc5MWRlNjExL3RleHRyZWdpb246MWM2NTliYTIxZWVkNDEwMGJjNGFlNTc0NzkxZGU2MTFfNzE1OA_426a4901-f6b7-4415-95ae-58973aefeca3">Deloitte &amp; Touche LLP</ix:nonNumeric></span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:AuditorLocation" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF82Ny9mcmFnOjFjNjU5YmEyMWVlZDQxMDBiYzRhZTU3NDc5MWRlNjExL3RleHRyZWdpb246MWM2NTliYTIxZWVkNDEwMGJjNGFlNTc0NzkxZGU2MTFfNzE2MA_8ec4d279-2a68-44c8-86b5-400339bfba86">Columbus, Ohio</ix:nonNumeric> </span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">February&#160;22, 2023</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have served as the Company&#8217;s auditor since 2013.</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">49</span></div></div></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_70"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">CONSOLIDATED BALANCE SHEETS</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(in thousands, except share and per share amounts)</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:72.730%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.619%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.621%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31, </span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">ASSETS</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash and cash equivalents</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfNC0xLTEtMS0xMDAwMDI_f9226537-c90f-46ee-862f-0580e4707ff2">229,627</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfNC0zLTEtMS0xMDAwMDI_82702adc-b6e2-4604-b7a3-73a70845b7e0">333,485</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:20.25pt;text-indent:-9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts receivable (less allowance for credit losses of $<ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfNi0wLTEtMS0xMDAwMDIvdGV4dHJlZ2lvbjo4NWMxNzQ5NmY2NzM0MTM2Yjg3YTE3MDQwNDFhNjNiYV82MQ_a2e896c2-5a46-4699-97fa-552d37febb2b">9,549</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfNi0wLTEtMS0xMDAwMDIvdGV4dHJlZ2lvbjo4NWMxNzQ5NmY2NzM0MTM2Yjg3YTE3MDQwNDFhNjNiYV82OA_e0c76761-9999-4ea8-857b-fcbe241c2670">8,717</ix:nonFraction> at December&#160;31, 2022 and 2021, respectively)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:AccountsReceivableNetCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfNi0xLTEtMS0xMDAwMDI_68291f7b-2364-4d95-a4d2-86d1ce4b2762">397,222</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:AccountsReceivableNetCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfNi0zLTEtMS0xMDAwMDI_da7da7a3-81bf-4259-a66f-bdcf6a4de2ca">312,767</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventories</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfNy0xLTEtMS0xMDAwMDI_7cadc210-f595-4612-a486-ece12fd484fd">176,629</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfNy0zLTEtMS0xMDAwMDI_e7f903cb-f907-4ba3-9329-aed88b81b12b">143,039</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Prepaid expenses and other current assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfOC0xLTEtMS0xMDAwMDI_2f57182a-8314-42c3-b3e6-18ccf3dff697">80,933</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfOC0zLTEtMS0xMDAwMDI_7229d19d-74cd-434b-83c5-2aaa6634a216">70,025</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total current assets</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:AssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfOS0xLTEtMS0xMDAwMDI_30106ed4-853b-4813-a6ac-0ccf806b5e23">884,411</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:AssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfOS0zLTEtMS0xMDAwMDI_5b02fdbb-762a-4aff-a540-d21eaf33afed">859,316</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment, net</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMTAtMS0xLTEtMTAwMDAy_d03e0363-7605-4064-87c7-9740c8e8dd9d">118,774</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMTAtMy0xLTEtMTAwMDAy_73ffc652-7ca3-48bd-9efd-7b436daaa2be">105,933</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease right-of-use assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:OperatingLeaseRightOfUseAsset" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMTEtMS0xLTEtMTAwMDAy_917a60e3-0cde-4da0-9fb7-8b4851d95516">76,174</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:OperatingLeaseRightOfUseAsset" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMTEtMy0xLTEtMTAwMDAy_90db2cbc-e51f-4a54-b303-a563964c7d2c">69,871</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMTItMS0xLTEtMTAwMDAy_c965645a-c1c8-4376-bcd3-c47215cb11e7">373,555</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMTItMy0xLTEtMTAwMDAy_b3eed07f-06ba-4b1a-a29a-7e6637b8de8b">322,517</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships, net</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9aea8d337c2a4a158061feaff30010e0_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMTMtMS0xLTEtMTAwMDAy_52a3e2be-7b0e-4e80-ba1f-3d01bc675bcc">192,328</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibcda928914984dab908ead68148bca5e_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMTMtMy0xLTEtMTAwMDAy_6528553f-17e9-4020-8841-9a70f9834039">178,264</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other intangibles, net</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2872a34b72cc428096e4c33cb0a3178f_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMTQtMS0xLTEtMTAwMDAy_67b63afa-f81a-49fc-b89a-66e770269cf6">91,145</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic0d83bb8e2c1438bb57812b147ed1ed9_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMTQtMy0xLTEtMTAwMDAy_d7893395-5592-4ff9-a652-23140395bf49">86,157</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other non-current assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:OtherAssetsNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMTUtMS0xLTEtMTAwMDAy_05ef9d2c-9d89-4e2e-961d-0d99fcb0f526">42,545</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:OtherAssetsNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMTUtMy0xLTEtMTAwMDAy_3dd2e9fd-468d-496e-b48c-b925afea7add">31,144</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total assets</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMTYtMS0xLTEtMTAwMDAy_28175fa5-9b4a-441a-a905-c7a4182864f7">1,778,932</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMTYtMy0xLTEtMTAwMDAy_1f566f8c-6355-415e-8925-06cba0a5283e">1,653,202</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="12" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">LIABILITIES AND STOCKHOLDERS&#8217; EQUITY</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current liabilities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current maturities of long-term debt</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:LongTermDebtCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMTktMS0xLTEtMTAwMDAy_ff66dd06-cdb2-4577-80d0-30e859be762c">30,983</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:LongTermDebtCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMTktMy0xLTEtMTAwMDAy_a8885e4f-6bda-467c-b047-d3619dba0c7f">30,839</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current maturities of operating lease obligations</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:OperatingLeaseLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjAtMS0xLTEtMTAwMDAy_60abfb49-2d50-45f4-8b9c-78fba26fa60a">26,145</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:OperatingLeaseLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjAtMy0xLTEtMTAwMDAy_8a7e38bc-538c-4d42-accc-b2fd805ad018">23,224</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current maturities of finance lease obligations</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:FinanceLeaseLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjEtMS0xLTEtMTAwMDAy_074e4924-0512-466b-b5bb-c88cef4f7022">2,508</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:FinanceLeaseLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjEtMy0xLTEtMTAwMDAy_89c396a1-8b62-4beb-b51f-5fc6ceeba766">1,747</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts payable</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:AccountsPayableCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjItMS0xLTEtMTAwMDAy_f68c5e0e-66ab-4069-8ec3-bba96efe7c02">149,186</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:AccountsPayableCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjItMy0xLTEtMTAwMDAy_ec70814c-a938-4567-a628-9ed0da09bbe7">132,705</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued compensation</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:EmployeeRelatedLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjMtMS0xLTEtMTAwMDAy_d8f637c0-e15d-419a-b803-c67d1ede5bee">51,608</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:EmployeeRelatedLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjMtMy0xLTEtMTAwMDAy_7419e4db-90ee-471c-9e33-7aa05a0b66f8">50,964</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other current liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:OtherLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjQtMS0xLTEtMTAwMDAy_0742bd4b-e755-4c4b-b8e6-6b9e1b0b8b89">67,631</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:OtherLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjQtMy0xLTEtMTAwMDAy_4bfdf3cb-1737-40e0-9102-db9e4ac36b4e">68,090</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total current liabilities</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:LiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjUtMS0xLTEtMTAwMDAy_5f0fd8e0-6782-4a2a-b9e5-a012f2727d6c">328,061</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:LiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjUtMy0xLTEtMTAwMDAy_818d896e-da32-4785-baad-50baa7fd03ab">307,569</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term debt</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:LongTermDebtNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjYtMS0xLTEtMTAwMDAy_410dfd06-a9fa-4a58-9eb8-bb4250755431">830,171</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:LongTermDebtNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjYtMy0xLTEtMTAwMDAy_e990aa08-11a1-4bb5-a7f3-eb7c8163f669">832,193</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease obligations</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:OperatingLeaseLiabilityNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjctMS0xLTEtMTAwMDAy_cf86e875-b837-4d91-8558-058bd1cebd2e">49,789</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:OperatingLeaseLiabilityNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjctMy0xLTEtMTAwMDAy_34b8f07d-935d-4715-b97c-69784a0e536f">46,075</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance lease obligations</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:FinanceLeaseLiabilityNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjgtMS0xLTEtMTAwMDAy_d0f19352-537e-41f5-a13e-ed63f14e97a0">6,397</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:FinanceLeaseLiabilityNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjgtMy0xLTEtMTAwMDAy_d0976b16-a0bf-4f5a-857c-8a56d64fc4a3">3,297</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred income taxes</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:DeferredIncomeTaxLiabilitiesNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjktMS0xLTEtMTAwMDAy_738cf531-9a77-468a-b03b-bc7b157572c8">28,458</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:DeferredIncomeTaxLiabilitiesNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjktMy0xLTEtMTAwMDAy_735c8364-6724-4b74-b184-11af33b822cc">4,819</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other long-term liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:OtherLiabilitiesNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzAtMS0xLTEtMTAwMDAy_8fd3d506-0fad-47bb-beec-acee5fcda6dc">42,557</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:OtherLiabilitiesNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzAtMy0xLTEtMTAwMDAy_579926ed-103b-4da3-97af-06934c7f83c4">42,409</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total liabilities</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:Liabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzEtMS0xLTEtMTAwMDAy_2abf9516-7ad5-456f-bc57-fe9ac9fbfba2">1,285,433</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:Liabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzEtMy0xLTEtMTAwMDAy_c8dec303-3074-4ebb-b815-7468f67bd786">1,236,362</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Commitments and contingencies (Note 17)</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" xsi:nil="true" name="us-gaap:CommitmentsAndContingencies" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzItMS0xLTEtMTAwMDAy_18233438-2ea7-4f53-8ead-bbd75b7bd23f"></ix:nonFraction></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" xsi:nil="true" name="us-gaap:CommitmentsAndContingencies" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzItMy0xLTEtMTAwMDAy_bf135d8a-c201-4288-905f-e8db29659397"></ix:nonFraction></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Stockholders&#8217; equity</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:20.25pt;text-indent:-9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Preferred Stock; $<ix:nonFraction unitRef="usdPerShare" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="INF" name="us-gaap:PreferredStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzQtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246NzU4MTRiYWUyNDJlNDcxNmFhZGE1MTFmODZkMTBmZDFfMjE_2babde19-bbf7-406a-9d9f-455e1ef9d42e"><ix:nonFraction unitRef="usdPerShare" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="INF" name="us-gaap:PreferredStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzQtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246NzU4MTRiYWUyNDJlNDcxNmFhZGE1MTFmODZkMTBmZDFfMjE_94021d79-fe23-4dbd-b188-641bd415cead">0.01</ix:nonFraction></ix:nonFraction> par value: <ix:nonFraction unitRef="shares" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="INF" name="us-gaap:PreferredStockSharesAuthorized" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzQtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246NzU4MTRiYWUyNDJlNDcxNmFhZGE1MTFmODZkMTBmZDFfMzU_2a86871b-221c-4d44-8eb8-518945093222"><ix:nonFraction unitRef="shares" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="INF" name="us-gaap:PreferredStockSharesAuthorized" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzQtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246NzU4MTRiYWUyNDJlNDcxNmFhZGE1MTFmODZkMTBmZDFfMzU_ffb797cd-dcf4-453e-af96-f225f0cf5986">5,000,000</ix:nonFraction></ix:nonFraction> authorized and <ix:nonFraction unitRef="shares" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="INF" name="us-gaap:PreferredStockSharesIssued" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzQtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246NzU4MTRiYWUyNDJlNDcxNmFhZGE1MTFmODZkMTBmZDFfNTM_1850d026-a048-4426-988a-c1838e0df6f0"><ix:nonFraction unitRef="shares" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="INF" name="us-gaap:PreferredStockSharesIssued" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzQtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246NzU4MTRiYWUyNDJlNDcxNmFhZGE1MTFmODZkMTBmZDFfNTM_1894d53c-d799-4cd2-ab84-e32aab5f52a3"><ix:nonFraction unitRef="shares" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="INF" name="us-gaap:PreferredStockSharesOutstanding" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzQtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246NzU4MTRiYWUyNDJlNDcxNmFhZGE1MTFmODZkMTBmZDFfNTM_22ce41c0-1118-44a6-9caa-2919e33066b5"><ix:nonFraction unitRef="shares" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="INF" name="us-gaap:PreferredStockSharesOutstanding" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzQtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246NzU4MTRiYWUyNDJlNDcxNmFhZGE1MTFmODZkMTBmZDFfNTM_998cb84f-cb5c-40a1-aa32-2f74fbbc62ff">0</ix:nonFraction></ix:nonFraction></ix:nonFraction></ix:nonFraction> shares issued and outstanding at December&#160;31, 2022 and 2021, respectively</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:PreferredStockValue" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzQtMS0xLTEtMTAwMDAy_e3297d72-11b6-4e38-9d71-4a86044889e7">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:PreferredStockValue" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzQtMy0xLTEtMTAwMDAy_38156393-c638-49f6-b6dd-a0ec4b1f411e">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:20.25pt;text-indent:-9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Common stock; $<ix:nonFraction unitRef="usdPerShare" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="INF" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzUtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246MjAyNjU4NjIxMGYyNDE0M2JmZjdlNmU2MWNiMjhhNjBfMTg_1a40b437-879b-4ca9-8a9a-47f42a281611"><ix:nonFraction unitRef="usdPerShare" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="INF" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzUtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246MjAyNjU4NjIxMGYyNDE0M2JmZjdlNmU2MWNiMjhhNjBfMTg_c9c2e4cd-9ce9-478f-8f0f-940f6039ed76">0.01</ix:nonFraction></ix:nonFraction> par value: <ix:nonFraction unitRef="shares" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="INF" name="us-gaap:CommonStockSharesAuthorized" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzUtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246MjAyNjU4NjIxMGYyNDE0M2JmZjdlNmU2MWNiMjhhNjBfMzI_9f011b68-4fa1-4e3b-8db6-c6813851ea29"><ix:nonFraction unitRef="shares" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="INF" name="us-gaap:CommonStockSharesAuthorized" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzUtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246MjAyNjU4NjIxMGYyNDE0M2JmZjdlNmU2MWNiMjhhNjBfMzI_ce02062e-1fe8-4412-a2c4-c82d441905ff">100,000,000</ix:nonFraction></ix:nonFraction> authorized, <ix:nonFraction unitRef="shares" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="INF" name="us-gaap:CommonStockSharesIssued" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzUtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246MjAyNjU4NjIxMGYyNDE0M2JmZjdlNmU2MWNiMjhhNjBfNDc_9b2f2b45-364e-458c-857b-caca957cbf28">33,429,557</ix:nonFraction> and <ix:nonFraction unitRef="shares" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="INF" name="us-gaap:CommonStockSharesIssued" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzUtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246MjAyNjU4NjIxMGYyNDE0M2JmZjdlNmU2MWNiMjhhNjBfNTQ_9d43ea88-bb71-4fe8-8fd6-f8d4499df42d">33,271,659</ix:nonFraction> issued and <ix:nonFraction unitRef="shares" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="INF" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzUtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246MjAyNjU4NjIxMGYyNDE0M2JmZjdlNmU2MWNiMjhhNjBfNjg_6bb98057-a75c-429c-9871-18dea172d91a">28,306,482</ix:nonFraction> and <ix:nonFraction unitRef="shares" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="INF" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzUtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246MjAyNjU4NjIxMGYyNDE0M2JmZjdlNmU2MWNiMjhhNjBfNzU_fef62fc1-54c5-45c5-ba3f-3e3983777978">29,706,401</ix:nonFraction> shares outstanding at December&#160;31, 2022 and 2021, respectively</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:CommonStockValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzUtMS0xLTEtMTAwMDAy_93cd8989-3114-40a3-994a-be3819b90025">334</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:CommonStockValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzUtMy0xLTEtMTAwMDAy_2445f4a6-55a7-43cb-9120-1a58347a7122">333</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Additional paid in capital</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:AdditionalPaidInCapitalCommonStock" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzYtMS0xLTEtMTAwMDAy_6b50841d-a7b9-4067-8cc3-193be95cd7ae">228,827</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:AdditionalPaidInCapitalCommonStock" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzYtMy0xLTEtMTAwMDAy_1d076381-5f7b-450e-a10a-403590c1cac2">211,430</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Retained earnings</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:RetainedEarningsAccumulatedDeficit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzctMS0xLTEtMTAwMDAy_d4550a26-ba67-415a-83d9-871c1b6c6b89">513,095</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:RetainedEarningsAccumulatedDeficit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzctMy0xLTEtMTAwMDAy_f9d06964-aeee-4c60-b806-5e17a7a4c1bb">352,543</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:20.25pt;text-indent:-9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Treasury stock; at cost: <ix:nonFraction unitRef="shares" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="INF" name="us-gaap:TreasuryStockCommonShares" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzgtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246NTgxZmMyOWUzZmNhNGEwZGFkYWY2M2Y0ZjVkYTRlZTBfMjk_25769f58-84f9-462c-982f-31b2a398c630">5,123,075</ix:nonFraction> and <ix:nonFraction unitRef="shares" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="INF" name="us-gaap:TreasuryStockCommonShares" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzgtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246NTgxZmMyOWUzZmNhNGEwZGFkYWY2M2Y0ZjVkYTRlZTBfMzY_6ac77506-36c1-418f-ae25-63b2709135fe">3,565,258</ix:nonFraction> shares at December&#160;31, 2022 and 2021, respectively</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:TreasuryStockCommonValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzgtMS0xLTEtMTAwMDAy_ac6eeb72-b664-4716-84c9-001a3ead72d3">289,317</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:TreasuryStockCommonValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzgtMy0xLTEtMTAwMDAy_b7b09b79-6e00-49b7-9c45-63070f946aa7">147,239</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accumulated other comprehensive income (loss) </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzktMS0xLTEtMTAwMDAy_35f34427-3cd2-41a5-be55-8dc9f600426b">40,560</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" sign="-" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzktMy0xLTEtMTAwMDAy_e52d49da-7ec7-403e-b4bd-ab0a27f1cf0a">227</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total stockholders&#8217; equity</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfNDAtMS0xLTEtMTAwMDAy_e1d52a80-c97d-44a3-a9c2-354d86cce03f">493,499</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfNDAtMy0xLTEtMTAwMDAy_8ffff262-76e9-47da-b23a-0d25589b78a3">416,840</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total liabilities and stockholders&#8217; equity</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:LiabilitiesAndStockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfNDEtMS0xLTEtMTAwMDAy_1b73642b-7e39-48fa-95c6-c6229454dbd2">1,778,932</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:LiabilitiesAndStockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfNDEtMy0xLTEtMTAwMDAy_e4a89978-aeb8-473b-b04c-1b060613bb2c">1,653,202</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:265%">See accompanying notes to consolidated financial statements</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">50</span></div></div></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_73"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(in thousands, except share and per share amounts)</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:59.133%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.765%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.765%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.769%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net revenue</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMi0xLTEtMS0xMDAwMDI_ef5b2d7f-f2b6-49a4-824a-400be9315a6f">2,669,844</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMi0zLTEtMS0xMDAwMDI_fda0bdce-ee54-42a1-9da4-df40a10e7f68">1,968,650</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMi01LTEtMS0xMDAwMDI_e1eba2a1-2c22-423e-825d-76e829db9de8">1,653,225</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of sales</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMy0xLTEtMS0xMDAwMDI_352f31c5-32dd-4b9e-bb16-58621a1d8749">1,842,060</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMy0zLTEtMS0xMDAwMDI_9625f203-1f1a-4818-931d-67d7c1f93393">1,379,131</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMy01LTEtMS0xMDAwMDI_ca8c616e-7f80-4a42-b550-aa416fa31f3d">1,143,251</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 30.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfNC0xLTEtMS0xMDAwMDI_db93ce5a-4d76-4b50-8201-c8a9e2156ba6">827,784</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfNC0zLTEtMS0xMDAwMDI_388dbd27-a065-4ce8-b82f-99f74249565a">589,519</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfNC01LTEtMS0xMDAwMDI_bccea284-73bb-4904-bcb1-14340b890deb">509,974</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating expenses</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Selling</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:SellingExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfNi0xLTEtMS0xMDAwMDI_8f54829f-459c-4217-a2f1-af062952dd74">119,031</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:SellingExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfNi0zLTEtMS0xMDAwMDI_bfc2fb6d-62ec-469f-ba5b-d60f20270b8c">93,204</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:SellingExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfNi01LTEtMS0xMDAwMDI_33a5c672-75d5-49a5-bfbc-59169e9513b8">81,613</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Administrative</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfNy0xLTEtMS0xMDAwMDI_ff5d3038-7b1a-4fd7-923b-1ffcf4b75d18">335,688</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfNy0zLTEtMS0xMDAwMDI_187d0cdd-653f-4ec9-830a-bbc446263d78">272,391</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfNy01LTEtMS0xMDAwMDI_12d99513-3889-4cd3-a733-ec69cf3fc70b">238,147</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gains on acquisition earnouts</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfOC0xLTEtMS0xMDg5MDA_0d4765ad-505f-43aa-abfa-fdf073fbe867">16,109</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfOC0zLTEtMS0xMDg5MDA_acf54529-51c6-4528-9b80-1b67ddf1f964">1,035</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfOC01LTEtMS0xMDg5MDA_93751c12-b167-44f9-a58d-2588dea97311">188</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amortization</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:AmortizationOfIntangibleAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfOC0xLTEtMS0xMDAwMDI_8776d061-798b-4a2e-ae16-4c7b969627c9">43,763</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:AmortizationOfIntangibleAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfOC0zLTEtMS0xMDAwMDI_62829463-d75b-4d16-b4e4-9e247c667736">37,079</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:AmortizationOfIntangibleAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfOC01LTEtMS0xMDAwMDI_7752b465-e021-43f5-a73b-0f2470524071">28,535</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 30.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating income</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfOS0xLTEtMS0xMDAwMDI_99ce4fda-7079-4be8-ab31-26addddeabeb">345,411</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfOS0zLTEtMS0xMDAwMDI_ce374773-111d-4547-ae30-9ed2ad95a194">187,880</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfOS01LTEtMS0xMDAwMDI_189363a6-b455-4572-a9bd-672aa1ce4a20">161,867</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other expense</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest expense, net</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:InterestExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTEtMS0xLTEtMTAwMDAy_b6800bda-3de3-48e3-811f-e85b0948bf40">41,574</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:InterestExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTEtMy0xLTEtMTAwMDAy_e3cbaf8b-aa99-4fd8-aea2-edd636dafe4f">32,842</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:InterestExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTEtNS0xLTEtMTAwMDAy_9e90564d-59b7-4128-9fa7-ff1cf108d7fd">30,291</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other expense (income)</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:OtherNonoperatingIncomeExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTItMS0xLTEtMTAwMDAy_9e7f5682-bd10-4b52-80fd-771ad4383491">530</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:OtherNonoperatingIncomeExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTItMy0xLTEtMTAwMDAy_009abee2-aff9-4b65-86ef-50e357dc1eaf">437</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:OtherNonoperatingIncomeExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTItNS0xLTEtMTAwMDAy_74060d2e-e83d-46c1-9f79-12145a3e8001">399</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 30.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income before income taxes</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTMtMS0xLTEtMTAwMDAy_2f739a0d-e107-4d79-b093-c2eb0dd1f317">303,307</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTMtMy0xLTEtMTAwMDAy_e447a222-a604-422f-adfb-e4fd0fd63042">155,475</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTMtNS0xLTEtMTAwMDAy_c1033d58-6985-4e00-a44b-36f3dbee5d5f">131,177</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income tax provision</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTQtMS0xLTEtMTAwMDAy_887ac403-e346-4efc-afa8-7e7479a43da2">79,879</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTQtMy0xLTEtMTAwMDAy_e72517ad-e4be-4c23-a947-2d2bf0c27ae3">36,712</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTQtNS0xLTEtMTAwMDAy_ffc1c554-695f-4236-a9ca-ce84c851abf3">33,938</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net income</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTUtMS0xLTEtMTAwMDAy_89aef76b-9c68-4048-b339-1462b54acaf1">223,428</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTUtMy0xLTEtMTAwMDAy_4ec7960c-e6d7-407a-8cdb-1af7ad912a71">118,763</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTUtNS0xLTEtMTAwMDAy_4d192422-5b19-4a4d-8b3b-e842d2249d52">97,239</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other comprehensive gain (loss), net of tax:</span></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:20.25pt;text-indent:-9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net change in cash flow hedges, net of tax (provision) benefit of $(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTctMC0xLTEtMTAwMDAyL3RleHRyZWdpb246ZDM0NTBjNDkzMTdkNDVhNmI4ODllMjA3NGI3ZTkxN2FfNzA_c06613b6-1f9b-4660-bdeb-9917ec485121">14,381</ix:nonFraction>), $(<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTctMC0xLTEtMTAwMDAyL3RleHRyZWdpb246ZDM0NTBjNDkzMTdkNDVhNmI4ODllMjA3NGI3ZTkxN2FfNzQ_76f1d502-8a6f-4f65-860f-511e6d42c676">2,773</ix:nonFraction>) and $<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTctMC0xLTEtMTAwMDAyL3RleHRyZWdpb246ZDM0NTBjNDkzMTdkNDVhNmI4ODllMjA3NGI3ZTkxN2FfODE_3429b74c-8145-4347-af50-e1a793baf86b">550</ix:nonFraction> for the twelve months ended December&#160;31, 2022, 2021 and 2020, respectively</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTctMS0xLTEtMTAwMDAy_d319b1e3-0930-4777-a6bf-4088cc90b4e7">40,787</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTctMy0xLTEtMTAwMDAy_ab708cdc-c78b-40ae-a68c-cd565ee8ef47">8,536</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTctNS0xLTEtMTAwMDAy_0f475cee-95cf-4416-ab36-e3043b307a25">1,620</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Comprehensive income</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:ComprehensiveIncomeNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTgtMS0xLTEtMTAwMDAy_1fa3c402-09ce-4daf-bdd9-91f5872306af">264,215</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:ComprehensiveIncomeNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTgtMy0xLTEtMTAwMDAy_b6dab15b-a60f-4215-a2cc-935533bdcc89">127,299</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:ComprehensiveIncomeNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTgtNS0xLTEtMTAwMDAy_8484ec84-f502-4810-9865-143e5c6c59fd">95,619</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Earnings Per Share:</span></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Basic </span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="2" name="us-gaap:EarningsPerShareBasic" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMjAtMS0xLTEtMTAwMDAy_294a4abf-eb37-4c80-bcec-49c4e12a3dfe">7.78</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="2" name="us-gaap:EarningsPerShareBasic" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMjAtMy0xLTEtMTAwMDAy_cf8adf04-f04e-442e-b1fb-079e88ffba8b">4.04</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="2" name="us-gaap:EarningsPerShareBasic" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMjAtNS0xLTEtMTAwMDAy_a5821bdd-7461-4ed3-8d44-db26dd0e9c84">3.30</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted </span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMjEtMS0xLTEtMTAwMDAy_6bf758b8-8855-49a4-9a0f-c1ad1d812176">7.74</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMjEtMy0xLTEtMTAwMDAy_681fac61-ed9b-4fae-8eec-0f7d4f2b4cf3">4.01</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMjEtNS0xLTEtMTAwMDAy_20858fab-fc7b-4455-8faf-cc778f7748cd">3.27</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted average shares outstanding:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Basic</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="0" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMjMtMS0xLTEtMTAwMDAy_00208d0b-4053-494e-9f5d-7d54b8012ee5">28,708,166</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="0" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMjMtMy0xLTEtMTAwMDAy_b5750178-7209-4220-aad7-502af9856bb1">29,367,676</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="0" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMjMtNS0xLTEtMTAwMDAy_45aba330-b59d-40b2-9bee-54dfaaadf220">29,504,115</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="0" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMjQtMS0xLTEtMTAwMDAy_775b5551-8b29-4413-8676-7f92133a25fd">28,869,501</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="0" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMjQtMy0xLTEtMTAwMDAy_58f83310-e685-46a4-8272-c8be3ffc5170">29,628,527</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="0" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMjQtNS0xLTEtMTAwMDAy_40823134-1d2c-4db1-af6d-0230da8f4179">29,717,609</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash dividends declared per share</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="INF" name="us-gaap:CommonStockDividendsPerShareDeclared" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMjYtMS0xLTEtMTAwMDAy_75174e06-a18c-4416-9ea3-b311757846ed">2.16</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="INF" name="us-gaap:CommonStockDividendsPerShareDeclared" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMjYtMy0xLTEtMTAwMDAy_33031662-bf67-41f7-985a-ccd86fc4e600">1.20</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="INF" name="us-gaap:CommonStockDividendsPerShareDeclared" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMjYtNS0xLTEtMTAwMDAy_dd022a77-a9d7-4871-8564-d7fe316ccd5b">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:241%">See accompanying notes to consolidated financial statements </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">51</span></div></div></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_76"></div><hr style="page-break-after:always"/><div style="min-height:40.5pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">CONSOLIDATED STATEMENTS OF STOCKHOLDERS&#8217; EQUITY</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(in thousands, except share amounts)</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:21.480%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.844%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.386%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:5.938%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.386%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.551%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.386%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:6.671%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.386%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.844%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.386%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.257%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.386%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.070%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.386%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.343%"></td><td style="width:0.1%"></td></tr><tr style="height:27pt"><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Common Stock</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Additional<br/>Paid In<br/>Capital&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Retained<br/>Earnings</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Treasury Stock</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accumulated<br/>Other<br/>Comprehensive<br/>(Loss) Income </span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Stockholders&#8217;<br/>Equity&#160;</span></td></tr><tr style="height:12pt"><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Shares&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Amount</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Shares&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Amount&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">BALANCE&#8212;January 1, 2020</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="icda2001dc0514113b0f97d8b8892f98e_I20191231" decimals="INF" name="us-gaap:CommonStockSharesIssued" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMi0xLTEtMS0xMDAwMDI_a1b1b55d-5563-4f9d-90e9-fafe1db94d18">32,871,504</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icda2001dc0514113b0f97d8b8892f98e_I20191231" decimals="-3" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMi0zLTEtMS0xMDAwMDI_5b07ed74-649e-4142-848b-dd91f7b12a1c">329</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7b992fbf285b4c508e644ecd8ace6054_I20191231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMi01LTEtMS0xMDAwMDI_c760252e-310d-45c1-b290-48520f0bf3aa">190,230</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9e6e275488144ae5aa9f04480329ba6e_I20191231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMi03LTEtMS0xMDAwMDI_97c1de90-5fa4-4a8b-9317-4fedb7cced50">173,371</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i060a31c733a24e318b6082e3ad2430c3_I20191231" decimals="INF" name="us-gaap:TreasuryStockCommonShares" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMi05LTEtMS0xMDAwMDI_40389566-936e-4371-b61a-cb37925c19d4">2,855,164</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i060a31c733a24e318b6082e3ad2430c3_I20191231" decimals="-3" name="us-gaap:TreasuryStockCommonValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMi0xMS0xLTEtMTAwMDAy_3705733e-dbc0-4cdd-b755-f89aab07c23f">106,756</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i14b4ffb871e4403fb52831afe7cc8ee1_I20191231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMi0xMy0xLTEtMTAwMDAy_d45d1790-0a9c-4ad0-b04c-9633e149816b">7,143</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iff4d4f6f690d4bce8ad0aafed6fdedd3_I20191231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMi0xNS0xLTEtMTAwMDAy_84ad6c7d-cb79-45da-98bf-8bd9765e9d5b">250,031</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net income</span></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifaeaa8ace0d84dad85c82ae885b51ffc_D20200101-20201231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMy03LTEtMS0xMDAwMDI_ba3731fd-3f9b-47c8-9fb7-44fe74251702">97,239</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMy0xNS0xLTEtMTAwMDAy_1ef4cf7c-3475-4353-a09e-3ab72254d10a">97,239</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cumulative effect of accounting change</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i958803dddf2c4619bdd48c5de25d23dd_I20191231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfNC03LTEtMS0xMDMxMDc_a8901adc-966a-4f3f-a436-501ad4334840">1,190</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i4dbcfeb87c1740e4b4eb9f7c6741ec30_I20191231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfNC0xNS0xLTEtMTAzMTI1_c06bfa07-0ed0-4f35-84d4-536707b9becd">1,190</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Issuance of common stock awards to employees</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i5f4eac237bf84dcbb0b113c245834860_D20200101-20201231" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationGross" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfNC0xLTEtMS0xMDAwMDI_a4257ab4-cc3c-4e86-8105-2cf049c10f08">264,004</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5f4eac237bf84dcbb0b113c245834860_D20200101-20201231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfNC0zLTEtMS0xMDAwMDI_32311a6a-7c7c-48dc-b6d1-6e57b88bc2ce">2</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i7fe08b3b47644acb83d3c2ab80777dc8_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfNC01LTEtMS0xMDAwMDI_11968054-28f8-4854-b435-f4b3b60ca46b">2</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfNC0xNS0xLTEtMTAwMDAy_2ec77dd2-0ff4-4f88-9b65-1be8670d7324">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Surrender of common stock awards</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i53839f2bf7bb48d5ae89fba9e9a5a697_D20200101-20201231" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationForfeited" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfNS05LTEtMS0xMDAwMDI_24144459-3acc-4c51-85d6-d9820689d9ab">30,223</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i53839f2bf7bb48d5ae89fba9e9a5a697_D20200101-20201231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationForfeited" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfNS0xMS0xLTEtMTAwMDAy_d03f44d6-b19d-456f-8802-af80018b3623">973</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationForfeited" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfNS0xNS0xLTEtMTAwMDAy_105f6a8c-f778-4641-87e6-d0ca0421ed44">973</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Share-based compensation expense</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7fe08b3b47644acb83d3c2ab80777dc8_D20200101-20201231" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfNi01LTEtMS0xMDAwMDI_677cc2ca-e572-49cf-a132-f7a4bfdde9a5">9,286</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfNi0xNS0xLTEtMTAwMDAy_2ae1dcb6-249b-483f-97fd-ff0b26472f75">9,286</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Share-based compensation issued to directors</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i5f4eac237bf84dcbb0b113c245834860_D20200101-20201231" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfNy0xLTEtMS0xMDAwMDI_920c5769-f5e8-47c1-804e-ea0aa5356382">6,371</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7fe08b3b47644acb83d3c2ab80777dc8_D20200101-20201231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfNy01LTEtMS0xMDAwMDI_8cbe225a-03c1-4f32-b995-71d662f33b0c">333</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfNy0xNS0xLTEtMTAwMDAy_16331d6e-1433-4032-8565-a7e54ec7ce6a">333</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Common stock repurchase</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="INF" name="us-gaap:TreasuryStockSharesAcquired" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfOS05LTEtMS0xMDMxMzU_eb5d422f-d699-4e23-ad9d-3237f6b40e53">633,220</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:TreasuryStockValueAcquiredCostMethod" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfOS0xMS0xLTEtMTAzMTM1_992fc5f3-89e2-477d-99ab-59ade58fe92a">33,924</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:TreasuryStockValueAcquiredCostMethod" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfOS0xNS0xLTEtMTAzMTM1_29511e7b-0353-49ad-b0f6-34013a564a8a">33,924</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net change in cash flow hedges, net of tax</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2f8775c2218e4ae5bc2f4a117bb88c76_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfOC0xMy0xLTEtMTAwMDAy_bd421908-7f24-4c34-9e23-22dc652a7cdc">1,620</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfOC0xNS0xLTEtMTAwMDAy_b545fd17-35ed-45aa-bd62-54b79ccc1174">1,620</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">BALANCE&#8212;January 1, 2021</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i4103608b5e134096893c20315b3e281b_I20201231" decimals="INF" name="us-gaap:CommonStockSharesIssued" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfOS0xLTEtMS0xMDAwMDI_ecc81a4f-a28c-4b3f-9f8d-36ff152a96b6">33,141,879</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4103608b5e134096893c20315b3e281b_I20201231" decimals="-3" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfOS0zLTEtMS0xMDAwMDI_3f16a298-a203-404f-b968-8d154c64faae">331</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i872e33708c2141e89f9454313166eec2_I20201231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfOS01LTEtMS0xMDAwMDI_2ce57dfe-9728-4c9a-902f-8c95fd255cf9">199,847</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i825445c1c6e445188055b16a6a682a2b_I20201231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfOS03LTEtMS0xMDAwMDI_1ae33753-463b-4ca9-a0d0-e65eab3e0792">269,420</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i707e16708e554448a4bb2c44e9f69b40_I20201231" decimals="INF" name="us-gaap:TreasuryStockCommonShares" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfOS05LTEtMS0xMDAwMDI_12cf9ab0-5cb8-42eb-93c0-20d1b2282aa0">3,518,607</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i707e16708e554448a4bb2c44e9f69b40_I20201231" decimals="-3" name="us-gaap:TreasuryStockCommonValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfOS0xMS0xLTEtMTAwMDAy_773909e2-1327-4cd6-85a2-1ab389629bdb">141,653</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="iaba36a8be02c46d9bcf4b91147e9910d_I20201231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfOS0xMy0xLTEtMTAwMDAy_2bb5585c-265c-4444-abc6-df869f08a26f">8,763</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i61f3c1563a76427b8e6b9d432aa44d9a_I20201231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfOS0xNS0xLTEtMTAwMDAy_fb2da20e-45f5-4768-aa96-82c44953eafe">319,182</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net income</span></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i132c5961f1cd4de1b11a825f82f2a62a_D20210101-20211231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTAtNy0xLTEtMTAwMDAy_30462493-46c7-4968-8443-852344ef6ab6">118,763</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTAtMTUtMS0xLTEwMDAwMg_e706af55-be37-4339-afb2-fa29138c2e64">118,763</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Issuance of common stock awards to employees</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i286eecc934a2497fbd8d1ec5b56d936f_D20210101-20211231" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationGross" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTItMS0xLTEtMTAwMDAy_01163ef0-5109-40c9-90a5-9c5e4107f853">125,550</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i286eecc934a2497fbd8d1ec5b56d936f_D20210101-20211231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTItMy0xLTEtMTAwMDAy_1c5514dd-ae5f-4657-988c-685c78b37e3e">2</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ibe9a3844ee4b41168f2d8f668b99a22a_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTItNS0xLTEtMTAwMDAy_29e4d3bf-0661-40fa-bc12-69660b873297">2</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTItMTUtMS0xLTEwMDAwMg_44d58e94-3cef-4c7c-98f0-7a1e1184a1f7">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Surrender of common stock awards</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="ia178f6d7fa8c4ab7a1bd2e8fd0b05f84_D20210101-20211231" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationForfeited" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTMtOS0xLTEtMTAwMDAy_8297a505-2383-49e5-b04e-6d132f2dd3f5">46,651</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia178f6d7fa8c4ab7a1bd2e8fd0b05f84_D20210101-20211231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationForfeited" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTMtMTEtMS0xLTEwMDAwMg_d1706461-371a-489b-a389-9ee4722a9525">5,586</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationForfeited" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTMtMTUtMS0xLTEwMDAwMg_e038b188-0f5e-4631-8eb0-a6eee76a57b2">5,586</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Share-based compensation expense</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibe9a3844ee4b41168f2d8f668b99a22a_D20210101-20211231" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTQtNS0xLTEtMTAwMDAy_fe446c3c-9310-4027-9bc4-f122ce15a04f">11,118</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTQtMTUtMS0xLTEwMDAwMg_f876654d-f17f-473c-9126-2aaf1ef98840">11,118</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Share-based compensation issued to directors</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i286eecc934a2497fbd8d1ec5b56d936f_D20210101-20211231" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTUtMS0xLTEtMTAwMDAy_1ac3850a-d7e0-4cd7-8c2a-db57afd0f82f">4,230</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibe9a3844ee4b41168f2d8f668b99a22a_D20210101-20211231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTUtNS0xLTEtMTAwMDAy_a409d39f-abc4-4043-a944-dc7d988433a5">467</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTUtMTUtMS0xLTEwMDAwMg_99d4661a-dd66-4574-9274-49c731c0b47b">467</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Dividends Declared ( $<ix:nonFraction unitRef="usdPerShare" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="2" name="us-gaap:CommonStockDividendsPerShareDeclared" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTYtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246ZmEyOTc4NTljM2M3NGMwYjhlNjk0MDNlOTE3NmZmMzdfNTQ5NzU1ODEzOTIz_2f7ccd2e-f10a-4531-9d18-a99beac453d8">1.20</ix:nonFraction> per share)</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i132c5961f1cd4de1b11a825f82f2a62a_D20210101-20211231" decimals="-3" name="us-gaap:DividendsCommonStockCash" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTYtNy0xLTEtMTAwMDAy_e5e7e40b-90cb-491b-8c30-9b286db4697f">35,640</ix:nonFraction>)</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:DividendsCommonStockCash" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTYtMTUtMS0xLTEwMDAwMg_fdf23af7-d7cd-43d6-aa25-22847fe9667d">35,640</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net change in cash flow hedges, net of tax</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8436bb8cb5154f6db94f80cd2c2dd32f_D20210101-20211231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTgtMTMtMS0xLTEwMzA5OA_6403eb85-c47e-460a-a78c-4ae7927104f2">8,536</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTgtMTUtMS0xLTEwMzA5OA_002fee60-e57e-4c38-96d3-4b5ed8ef20bf">8,536</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">BALANCE&#8212;January 1, 2022</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i7c971ca37f114e89bbfec6637ff4eec3_I20211231" decimals="INF" name="us-gaap:CommonStockSharesIssued" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTgtMS0xLTEtMTAwMDAy_0b26caf7-7374-4158-894e-1e020afb78ea">33,271,659</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7c971ca37f114e89bbfec6637ff4eec3_I20211231" decimals="-3" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTgtMy0xLTEtMTAwMDAy_51f4fedd-fd90-4cac-bd78-f78a09ecbbdb">333</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3ac93e97ac7648b1bb0460c9d9551edd_I20211231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTgtNS0xLTEtMTAwMDAy_b3ebb6cf-8561-4a10-8c18-78cf23adde6f">211,430</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibc38b7b26e1547bf91f176fc1e65606d_I20211231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTgtNy0xLTEtMTAwMDAy_12b2e74b-e68a-4be0-a75e-0a1eb37cac68">352,543</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i48f9cc975cf6472593f2b9513fe3110e_I20211231" decimals="INF" name="us-gaap:TreasuryStockCommonShares" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTgtOS0xLTEtMTAwMDAy_b759f1fc-a3f9-4e55-b58f-887847db7f95">3,565,258</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i48f9cc975cf6472593f2b9513fe3110e_I20211231" decimals="-3" name="us-gaap:TreasuryStockCommonValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTgtMTEtMS0xLTEwMDAwMg_cfb511e4-4ba6-4021-9e79-8aac78de6f5e">147,239</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i14d567bc707548e88cc0cc3e66307316_I20211231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTgtMTMtMS0xLTEwMDAwMg_ad3bef5a-38b7-442b-a152-2532965fa1a9">227</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTgtMTUtMS0xLTEwMDAwMg_d60c49cb-9fc3-4274-ba96-7863983029a7">416,840</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net income</span></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0d45628d365d4f14a2de850269a85597_D20220101-20221231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTktNy0xLTEtMTAwMDAy_f85814ab-2fa2-4866-bf16-f4083882ed04">223,428</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTktMTUtMS0xLTEwMDAwMg_2c94d5af-ac3b-4bed-a803-5332fa2ad4dd">223,428</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Issuance of common stock awards to employees</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ia44b3bee1f934650ad552005b5f83f05_D20220101-20221231" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationGross" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjEtMS0xLTEtMTAwMDAy_c0d91dbf-b170-4668-97a5-6786ef344691">112,389</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia44b3bee1f934650ad552005b5f83f05_D20220101-20221231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjEtMy0xLTEtMTAwMDAy_944d755d-34ec-4ae5-853c-e57e5b0d81fd">1</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i16676806e932479e97a656c76df77112_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjEtNS0xLTEtMTAwMDAy_7794f575-2020-43d1-a635-61bff262cf85">1</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjEtMTUtMS0xLTEwMDAwMg_0889ddd7-12b3-4c11-acb8-6b89c7c9a443">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Surrender of common stock awards</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i0ddc26109e40483889e87ce66d92f8ec_D20220101-20221231" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationForfeited" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjItOS0xLTEtMTAwMDAy_7353af3d-1587-47a4-882a-0c9b0b6203d1">55,183</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i0ddc26109e40483889e87ce66d92f8ec_D20220101-20221231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationForfeited" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjItMTEtMS0xLTEwMDAwMg_47442efb-b9aa-49a5-9c95-4bb3888b698d">4,522</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationForfeited" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjItMTUtMS0xLTEwMDAwMg_ef77bf62-693f-4933-a031-13ef7a73b3e0">4,522</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Share-based compensation expense</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i16676806e932479e97a656c76df77112_D20220101-20221231" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjMtNS0xLTEtMTAwMDAy_dc9ac385-00e5-4bbb-a5c8-e0aef9824c25">12,851</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjMtMTUtMS0xLTEwMDAwMg_faa06a5b-0fe1-4901-97f0-a34fcc3c4d68">12,851</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Share-based compensation issued to directors</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ia44b3bee1f934650ad552005b5f83f05_D20220101-20221231" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjQtMS0xLTEtMTAwMDAy_a4b502c8-cdb3-4689-8d96-f4fe69da41c8">6,305</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i16676806e932479e97a656c76df77112_D20220101-20221231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjQtNS0xLTEtMTAwMDAy_32901b7f-5a05-49b8-b588-0806ca932a72">547</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjQtMTUtMS0xLTEwMDAwMg_9ed22f2f-0492-4927-976f-c299a5ad5370">547</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Issuance of awards previously classified as liability awards</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ia44b3bee1f934650ad552005b5f83f05_D20220101-20221231" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjgtMS0xLTEtMTEwNDM1_32c41de0-a3ec-47c1-a0a0-c58f7c4ef89b">39,204</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i16676806e932479e97a656c76df77112_D20220101-20221231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjgtNS0xLTEtMTEwNDM1_bf2c6bac-4130-473a-96be-eeace1ab58fc">4,000</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjgtMTUtMS0xLTExMDQzNQ_8445760d-0557-4dd1-bce3-2ab143497fb2">4,000</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Dividends Declared ($<ix:nonFraction unitRef="usdPerShare" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="2" name="us-gaap:CommonStockDividendsPerShareDeclared" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjUtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246OTAwNTg4MzY3ZDgzNDk5MmI0MTg4ZjQzOGEzZGRhMzRfMjQ_31c01864-5624-4a7d-97eb-e5d2d3bc21a6">2.16</ix:nonFraction> per share)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i0d45628d365d4f14a2de850269a85597_D20220101-20221231" decimals="-3" name="us-gaap:DividendsCommonStockCash" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjUtNy0xLTEtMTAwMDAy_d497332a-e100-463e-b587-160c295fa1ba">62,876</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:DividendsCommonStockCash" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjUtMTUtMS0xLTEwMDAwMg_b600e807-be79-416a-83f9-79e6d5eb97a2">62,876</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Common stock repurchase</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i0ddc26109e40483889e87ce66d92f8ec_D20220101-20221231" decimals="INF" name="us-gaap:TreasuryStockSharesAcquired" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjYtOS0xLTEtMTAwMDAy_0f94d9f7-a402-4602-800b-00ef6b219d63">1,502,634</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i0ddc26109e40483889e87ce66d92f8ec_D20220101-20221231" decimals="-3" name="us-gaap:TreasuryStockValueAcquiredCostMethod" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjYtMTEtMS0xLTEwMDAwMg_f7972d5a-3865-4dcd-b532-06863173deab">137,556</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:TreasuryStockValueAcquiredCostMethod" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjYtMTUtMS0xLTEwMDAwMg_aea27a81-a151-4176-97ca-83424045f938">137,556</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net change in cash flow hedges, net of tax</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3a6b9a20e4da4a9390822a15ead99b52_D20220101-20221231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjctMTMtMS0xLTEwMDAwMg_d93db7a3-1f5f-4b08-a7dc-e8c6e1c8a72a">40,787</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjctMTUtMS0xLTEwMDAwMg_83d01ef1-6e72-40cf-a2f2-e64df5a79ea9">40,787</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">BALANCE&#8212;December 31, 2022</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i4f8822b909a74993b4e9610fa2d43554_I20221231" decimals="INF" name="us-gaap:CommonStockSharesIssued" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjgtMS0xLTEtMTAwMDAy_011db0c8-d741-4a38-bf30-425fafb4088b">33,429,557</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4f8822b909a74993b4e9610fa2d43554_I20221231" decimals="-3" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjgtMy0xLTEtMTAwMDAy_b0a2df4e-987a-4e6c-b8d0-41ebaf97e5b0">334</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if0ab2703906c47e7a74df08dece46aa5_I20221231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjgtNS0xLTEtMTAwMDAy_e7c4434b-1c5e-4bfb-953b-f8cbcdbce896">228,827</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icf5f552de5ed49bd835bb72a19a828a4_I20221231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjgtNy0xLTEtMTAwMDAy_1d7cd69d-9f71-42ce-9b2e-9329b7da246d">513,095</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i07aff75a11ce4da89c613ba6c483bb6d_I20221231" decimals="INF" name="us-gaap:TreasuryStockCommonShares" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjgtOS0xLTEtMTAwMDAy_2d30e249-dadd-46cd-9bce-c6aad71bf290">5,123,075</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i07aff75a11ce4da89c613ba6c483bb6d_I20221231" decimals="-3" name="us-gaap:TreasuryStockCommonValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjgtMTEtMS0xLTEwMDAwMg_c81c0bc5-84ae-448b-b625-8d4c220b6666">289,317</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6c6f814c29be4e629a0656476f899878_I20221231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjgtMTMtMS0xLTEwMDAwMg_cb7fe1b8-5bd7-4573-90d8-ce2f09ee57d2">40,560</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjgtMTUtMS0xLTEwMDAwMg_294804db-63b2-4733-a0a7-f27981e8be25">493,499</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See accompanying notes to consolidated financial statements </span></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">52</span></div></div></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_79"></div><hr style="page-break-after:always"/><div style="min-height:76.5pt;width:100%"><div><span><br/></span></div><div><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">CONSOLIDATED STATEMENTS OF CASH FLOWS</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(in thousands)</span></div></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.976%"><tr><td style="width:1.0%"></td><td style="width:64.483%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.978%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.390%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.978%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.390%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.981%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Cash flows from operating activities</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net income</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:ProfitLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMy0xLTEtMS0xMDAwMDI_ec26baa6-1e74-4404-b422-5da7c9bdb26b">223,428</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:ProfitLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMy0zLTEtMS0xMDAwMDI_fb13144f-6c72-4f63-8e6b-91b4c9bf5db7">118,763</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:ProfitLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMy01LTEtMS0xMDAwMDI_fe6b8b8a-44f7-4d43-bcc1-f07fb34fcff5">97,239</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Adjustments to reconcile net income to net cash provided by operating activities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Depreciation and amortization of property and equipment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:DepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNS0xLTEtMS0xMDAwMDI_e214054d-21bc-4cd9-ac86-038e9079563e">47,283</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:DepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNS0zLTEtMS0xMDAwMDI_c23709a4-29ec-4b10-be5e-f58009029606">43,562</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:DepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNS01LTEtMS0xMDAwMDI_1c1aec74-ade9-4dea-893b-55ccc10b246a">41,339</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amortization of operating lease right-of-use assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNi0xLTEtMS0xMDAwMDI_76f526eb-9b3f-4cf0-becd-f20f971eb474">26,631</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNi0zLTEtMS0xMDAwMDI_c90e2c12-a796-47fd-9966-856c244d77c2">22,258</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNi01LTEtMS0xMDAwMDI_dbf6cd1c-de48-4a48-926c-017a37a1b604">18,122</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amortization of intangibles</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:AmortizationOfIntangibleAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNy0xLTEtMS0xMDAwMDI_58d0a8cb-0f74-47cd-bf60-3e782320c5a4">43,763</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:AmortizationOfIntangibleAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNy0zLTEtMS0xMDAwMDI_16751384-9751-41af-96ee-0578bff3e662">37,079</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:AmortizationOfIntangibleAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNy01LTEtMS0xMDAwMDI_112da20f-c291-4606-a1a1-ae6f041ce160">28,535</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amortization of deferred financing costs and debt discount</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:AmortizationOfFinancingCostsAndDiscounts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfOC0xLTEtMS0xMDAwMDI_76ff985a-88f6-420d-a160-9f078683ca5b">1,912</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:AmortizationOfFinancingCostsAndDiscounts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfOC0zLTEtMS0xMDAwMDI_4d590de8-2009-4a6b-a593-0aa895e44df7">1,354</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:AmortizationOfFinancingCostsAndDiscounts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfOC01LTEtMS0xMDAwMDI_a41220d9-47db-4fe4-beea-4e7c706b23fb">1,332</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Provision for credit losses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:ProvisionForDoubtfulAccounts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfOS0xLTEtMS0xMDAwMDI_12be6d2a-4a59-4b3b-9495-0da0a36593a0">4,129</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:ProvisionForDoubtfulAccounts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfOS0zLTEtMS0xMDAwMDI_b241414b-0fc6-4afd-aaa4-a0f2b2335e71">2,227</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:ProvisionForDoubtfulAccounts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfOS01LTEtMS0xMDAwMDI_e8cdb109-0ae8-4650-986f-6c407dd10fd9">4,444</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Write-off of debt issuance costs</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:WriteOffOfDeferredDebtIssuanceCost" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTAtMS0xLTEtMTAwMDAy_604f5408-7404-415a-82f4-11e4d81884b9">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:WriteOffOfDeferredDebtIssuanceCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTAtMy0xLTEtMTAwMDAy_9ed8eda1-88fd-4269-a38d-58a8512f8fd6">1,767</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:WriteOffOfDeferredDebtIssuanceCost" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTAtNS0xLTEtMTAwMDAy_d7c2efa6-23ff-4229-b8b6-731e3901814c">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gain on sale of property and equipment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:GainLossOnDispositionOfAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTEtMS0xLTEtMTAwMDAy_c4fffc1a-ea23-48eb-97b9-6172d4372423">1,419</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:GainLossOnDispositionOfAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTEtMy0xLTEtMTAwMDAy_e6f30257-0d8a-45d6-968a-9691de792347">1,840</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:GainLossOnDispositionOfAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTEtNS0xLTEtMTAwMDAy_4c78ba4d-b070-4588-9242-f3fd5f2abcbe">786</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Noncash stock compensation</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:ShareBasedCompensation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTItMS0xLTEtMTAwMDAy_4eb9d60b-cec3-4516-8d16-2609e6815f8b">13,816</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:ShareBasedCompensation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTItMy0xLTEtMTAwMDAy_6172ada7-d0c2-40e3-96fd-c0765c4f4ba2">13,752</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:ShareBasedCompensation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTItNS0xLTEtMTAwMDAy_082dff87-b852-4786-9f10-b09848ed9161">10,826</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gains on acquisition earnouts</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTMtMS0xLTEtMTA4OTQw_0f1d59e5-42fc-43e6-bfb8-0c09a92be584">16,109</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTMtMy0xLTEtMTA4OTQw_9b30864f-b1fc-4ab1-ab13-abd3284c7352">1,035</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTMtNS0xLTEtMTA4OTQw_b1be06d4-5d4f-42ab-9694-37ec8e34a70e">188</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred income taxes</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:DeferredIncomeTaxesAndTaxCredits" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTMtMS0xLTEtMTAwMDAy_a0821350-5f08-405d-a492-911bf78424d4">7,066</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:DeferredIncomeTaxesAndTaxCredits" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTMtMy0xLTEtMTAwMDAy_1aa80bc5-9eaf-412a-8107-7cb6bc35a8b8">438</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:DeferredIncomeTaxesAndTaxCredits" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTMtNS0xLTEtMTAwMDAy_088521db-7ee9-4c49-9a01-97bd4f5c3ca7">8,475</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other, net</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:OtherNoncashIncomeExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTQtMS0xLTEtMTAwMDAy_825f69e3-1f31-4cfb-8e93-c9c5850ad89d">91</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:OtherNoncashIncomeExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTQtMy0xLTEtMTAwMDAy_ff20f5a3-f579-4c9f-ae4c-a924b3725817">3,223</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:OtherNoncashIncomeExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTQtNS0xLTEtMTAwMDAy_612df85c-c039-450d-aa97-38d847774ac0">1,326</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Changes in assets and liabilities, excluding effects of acquisitions</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts receivable</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:IncreaseDecreaseInAccountsReceivable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTYtMS0xLTEtMTAwMDAy_56f43858-2d30-464d-8ca2-3f740d9202d5">76,486</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:IncreaseDecreaseInAccountsReceivable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTYtMy0xLTEtMTAwMDAy_20e93914-4516-4173-a3db-9b9a712ac31f">16,775</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:IncreaseDecreaseInAccountsReceivable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTYtNS0xLTEtMTAwMDAy_aff3a257-ea7e-423a-9423-a96af579f855">10,489</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventories</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:IncreaseDecreaseInInventories" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTctMS0xLTEtMTAwMDAy_80dd0d14-bc47-45ac-b345-dafbee355c04">16,495</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:IncreaseDecreaseInInventories" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTctMy0xLTEtMTAwMDAy_b7e0d666-66e8-40f9-880b-7ea3edde64b1">54,003</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInInventories" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTctNS0xLTEtMTAwMDAy_f0ba2f7d-b9f8-428b-96b2-93f9b72e7598">187</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Proceeds from termination of interest rate swap agreements</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="ibp:ProceedsFromTerminationOfDerivativeInstruments" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTgtMS0xLTEtMTA3NTc4_f1388154-1ccb-4ac7-aaf2-28dcc397fb76">25,462</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="ibp:ProceedsFromTerminationOfDerivativeInstruments" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTgtMy0xLTEtMTA3NTc4_523c1f0e-18d4-4290-9c2a-2c5e917f2180">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="ibp:ProceedsFromTerminationOfDerivativeInstruments" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTgtNS0xLTEtMTA3NTc4_f7dab058-4c80-4887-a7a0-1e0afa5bf4f9">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:IncreaseDecreaseInOtherOperatingAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTgtMS0xLTEtMTAwMDAy_e30f2cbb-2e56-4793-8b63-85fe9e95037e">2,586</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:IncreaseDecreaseInOtherOperatingAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTgtMy0xLTEtMTAwMDAy_afaf9b21-60b1-468f-abff-28bbd97fec7a">19,885</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:IncreaseDecreaseInOtherOperatingAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTgtNS0xLTEtMTAwMDAy_f2ed0e43-7482-4661-b429-1ae0cd2685a5">870</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts payable</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:IncreaseDecreaseInAccountsPayable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTktMS0xLTEtMTAwMDAy_9a6362bf-4731-49b5-8002-612710857e01">9,623</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:IncreaseDecreaseInAccountsPayable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTktMy0xLTEtMTAwMDAy_f0a39ece-8623-4965-8ec1-7756d09074b6">26,424</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccountsPayable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTktNS0xLTEtMTAwMDAy_8e152f24-a202-413a-ba8f-504d71905c19">203</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income taxes receivable/payable</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:IncreaseDecreaseInIncomeTaxes" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjAtMS0xLTEtMTAwMDAy_7d8a0608-314e-4a4a-9995-b4dd6aba17b2">3,207</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInIncomeTaxes" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjAtMy0xLTEtMTAwMDAy_82185f44-2609-4fa4-95f7-0971a2494e3b">4,403</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:IncreaseDecreaseInIncomeTaxes" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjAtNS0xLTEtMTAwMDAy_c4c70a47-7eb9-41d7-887d-18991d517bec">4,296</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInOtherOperatingLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjEtMS0xLTEtMTAwMDAy_41d35bce-f82f-4556-bc86-1a78ec5ec79a">15,230</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInOtherOperatingLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjEtMy0xLTEtMTAwMDAy_361ba489-c32f-4dc2-a80f-8bd20c0fb124">33,716</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInOtherOperatingLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjEtNS0xLTEtMTAwMDAy_83030aea-b673-4b40-b835-b8fabe33fdd5">5,846</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net cash provided by operating activities</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjItMS0xLTEtMTAwMDAy_6515d98e-0fae-4cd1-a72a-d94fccd5a4da">277,904</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjItMy0xLTEtMTAwMDAy_80208deb-63bf-4856-8914-a2934cddbc0d">138,314</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjItNS0xLTEtMTAwMDAy_2be81f38-603f-4a1b-87fc-922a2644b0ce">180,789</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Cash flows from investing activities</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Purchases of investments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:PaymentsToAcquireInvestments" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjQtMS0xLTEtMTAwMDAy_d13cc88a-813a-4d26-8377-61158ade3952">344,388</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:PaymentsToAcquireInvestments" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjQtMy0xLTEtMTAwMDAy_b11c55b3-ff76-4033-8db7-366e9fedb77c">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:PaymentsToAcquireInvestments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjQtNS0xLTEtMTAwMDAy_1dd75599-34f7-4303-b3f5-ee0061e18cd3">776</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Maturities of short term investments</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:ProceedsFromSaleOfShortTermInvestments" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjUtMS0xLTEtMTAwMDAy_44c02844-6a96-4c4e-af49-cbcc868e8f90">345,000</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:ProceedsFromSaleOfShortTermInvestments" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjUtMy0xLTEtMTAwMDAy_47bd7e4d-bf22-4767-87f2-c8fa7d8e093a">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:ProceedsFromSaleOfShortTermInvestments" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjUtNS0xLTEtMTAwMDAy_75389ef3-34a1-4152-bc58-c6d5cbcfaa06">38,693</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Purchases of property and equipment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjYtMS0xLTEtMTAwMDAy_07c92a7b-c142-41e5-a95c-47a06ab1aa5f">45,646</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjYtMy0xLTEtMTAwMDAy_6445be80-76fd-4bc9-91ea-270c9f03ffc4">36,979</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjYtNS0xLTEtMTAwMDAy_0163bdd7-463b-44c2-b49f-793641b0d6a6">33,587</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquisitions of businesses, net of cash acquired of $<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:CashAcquiredFromAcquisition" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjctMC0xLTEtMTAwMDAyL3RleHRyZWdpb246ODM2NzAyNDVjYzRjNDE3ZjhiZWM2NmM5NWJkMmYzY2NfNTY_c1463fdf-38c7-461c-9dc8-71c617dfef50">523</ix:nonFraction>, $<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:CashAcquiredFromAcquisition" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjctMC0xLTEtMTAwMDAyL3RleHRyZWdpb246ODM2NzAyNDVjYzRjNDE3ZjhiZWM2NmM5NWJkMmYzY2NfNjA_39872c3d-7da3-4e0d-857a-442b47bbcb3e">1,707</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:CashAcquiredFromAcquisition" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjctMC0xLTEtMTAwMDAyL3RleHRyZWdpb246ODM2NzAyNDVjYzRjNDE3ZjhiZWM2NmM5NWJkMmYzY2NfNjc_d8fc9795-fdc6-401b-8927-bb039ce4693b">0</ix:nonFraction> in 2022, 2021 and 2020, respectively</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjctMS0xLTEtMTAwMDAy_6bff067f-4bc3-4302-8e3d-f7f462091558">113,536</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjctMy0xLTEtMTAwMDAy_5ccb4bb1-f4f3-4581-a2d6-dedd77c2bc1c">241,308</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjctNS0xLTEtMTAwMDAy_e5d5a996-b7b0-4e4f-a9f0-8d21d7189a9b">76,446</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Proceeds from sale of property and equipment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjgtMS0xLTEtMTAwMDAy_c4fcee47-e313-44bc-aae3-deeb3288dc29">1,958</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjgtMy0xLTEtMTAwMDAy_76b0fb24-12ab-4000-adc6-aa8256dd8e49">2,694</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjgtNS0xLTEtMTAwMDAy_9e9fed0f-6864-4fa9-b2a5-e627dcd74e2e">1,187</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:PaymentsForProceedsFromOtherInvestingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjktMS0xLTEtMTAwMDAy_0981dbe0-33c3-45ff-a8f8-3add147acf64">2,057</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:PaymentsForProceedsFromOtherInvestingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjktMy0xLTEtMTAwMDAy_58f9892b-d263-4127-91d1-92044bc9a412">2,846</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:PaymentsForProceedsFromOtherInvestingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjktNS0xLTEtMTAwMDAy_03c854f7-4914-4c72-9a16-697bec5fa54c">6,865</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net cash used in investing activities</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzAtMS0xLTEtMTAwMDAy_1ed28bcb-d8f2-42b3-b458-fbb5b7a64056">158,669</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzAtMy0xLTEtMTAwMDAy_7eb72ddb-77f6-47d0-98b6-e93f4ba9706a">278,439</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzAtNS0xLTEtMTAwMDAy_8b0a4067-4482-480f-a9c3-bc3d1fb667d3">77,794</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="height:31.5pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">53</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:76.5pt;width:100%"><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">CONSOLIDATED STATEMENTS OF CASH FLOWS (Continued)</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(in thousands)</span></div></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.976%"><tr><td style="width:1.0%"></td><td style="width:64.483%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.978%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.390%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.978%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.390%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.981%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Cash flows from financing activities</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Proceeds from term loan (Note 8)</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:ProceedsFromIssuanceOfMediumTermNotes" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzMtMS0xLTEtMTAwMDAy_2571aae8-e623-42de-9a01-b5ea1b51d488">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:ProceedsFromIssuanceOfMediumTermNotes" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzMtMy0xLTEtMTAwMDAy_61b00b19-fffe-4a5e-a340-d1185d731281">500,000</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:ProceedsFromIssuanceOfMediumTermNotes" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzMtNS0xLTEtMTAwMDAy_417012be-077c-4924-bd9c-d268fed64d83">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Payments on term loan (Note 8)</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:RepaymentsOfMediumTermNotes" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzQtMS0xLTEtMTAwMDAy_26c2e10d-eb3f-489f-9c2c-ce5769ea03c5">5,000</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:RepaymentsOfMediumTermNotes" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzQtMy0xLTEtMTAwMDAy_4ef2a101-c00e-46b8-879d-9a2e3a22ab81">200,000</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:RepaymentsOfMediumTermNotes" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzQtNS0xLTEtMTAwMDAy_6475006f-d1d2-437d-8b09-06c99b185686">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Proceeds from vehicle and equipment notes payable</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:ProceedsFromNotesPayable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzUtMS0xLTEtMTAwMDAy_30324378-a5d3-498c-9e64-855466436c8f">30,940</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:ProceedsFromNotesPayable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzUtMy0xLTEtMTAwMDAy_737c8ac1-99b9-4ae0-a9f9-ad8c66cb024d">27,834</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:ProceedsFromNotesPayable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzUtNS0xLTEtMTAwMDAy_44accd08-5b03-44f3-960d-3ff77c98cf04">21,290</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Debt issuance costs</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:PaymentsOfDebtIssuanceCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzYtMS0xLTEtMTAwMDAy_f7e7f48c-1218-498c-8f44-01f61ed0ee8f">655</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:PaymentsOfDebtIssuanceCosts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzYtMy0xLTEtMTAwMDAy_884055d3-0e92-487f-995c-0b7b150d3d3d">7,520</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:PaymentsOfDebtIssuanceCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzYtNS0xLTEtMTAwMDAy_5817f533-49b6-41be-88fa-b6b3d058d126">157</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Principal payments on long-term debt</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:RepaymentsOfOtherLongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzctMS0xLTEtMTAwMDAy_39058c8b-7be3-4aaa-bfcd-8e230e30b150">30,173</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:RepaymentsOfOtherLongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzctMy0xLTEtMTAwMDAy_4bb8ee94-fddb-4559-9c6d-c2aa1a6f1d57">26,301</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:RepaymentsOfOtherLongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzctNS0xLTEtMTAwMDAy_03243d5d-461c-4dd7-9602-95a0977f228f">26,685</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Principal payments on finance lease obligations</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:FinanceLeasePrincipalPayments" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzktMS0xLTEtMTAwMDAy_9f9966da-72b4-49fc-99d8-5f7278b9b356">2,306</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:FinanceLeasePrincipalPayments" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzktMy0xLTEtMTAwMDAy_708d596a-0a2d-4f8b-b52e-cd3a04affdb0">2,125</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:FinanceLeasePrincipalPayments" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzktNS0xLTEtMTAwMDAy_45d511fd-64ef-4296-81e1-029812c4b63b">2,632</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquisition-related obligations</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:PaymentsOfMergerRelatedCostsFinancingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDAtMS0xLTEtMTAwMDAy_3d31fc2f-a155-4f02-ae54-d742f5608f0c">11,150</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:PaymentsOfMergerRelatedCostsFinancingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDAtMy0xLTEtMTAwMDAy_c1721d12-ff1e-4987-bf97-041ed27dd63f">8,918</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:PaymentsOfMergerRelatedCostsFinancingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDAtNS0xLTEtMTAwMDAy_420ecec2-58fe-4428-9ba3-7722ea856bb0">6,283</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Dividends paid</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:PaymentsOfDividends" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDEtMS0xLTEtMTAwMDAy_8a9b3fe0-d729-4ec5-9d02-80d20b36d530">62,671</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:PaymentsOfDividends" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDEtMy0xLTEtMTAwMDAy_e91b5b42-b5e0-47b0-ad3c-c47a60470169">35,294</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:PaymentsOfDividends" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDEtNS0xLTEtMTAwMDAy_cf801065-7e1b-4c3f-adf4-5f39d9f68963">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Repurchase of common stock</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:PaymentsForRepurchaseOfCommonStock" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDItMS0xLTEtMTAwMDAy_8889f9e3-3512-4e21-ac31-832d9dca0f96">137,556</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:PaymentsForRepurchaseOfCommonStock" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDItMy0xLTEtMTAwMDAy_cf08270a-804c-4940-8927-8fd4f433add8">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:PaymentsForRepurchaseOfCommonStock" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDItNS0xLTEtMTAwMDAy_331a476d-51b7-4edd-b960-14eb1e91b786">33,924</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Surrender of common stock awards by employees</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="ibp:SurrenderOfCommonStockAwardsByEmployees" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDMtMS0xLTEtMTAwMDAy_55618df9-2dd3-4a8e-8849-b9e2734bacda">4,522</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="ibp:SurrenderOfCommonStockAwardsByEmployees" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDMtMy0xLTEtMTAwMDAy_bda58933-a41f-42d9-a6aa-6cfdc68fd5c2">5,586</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="ibp:SurrenderOfCommonStockAwardsByEmployees" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDMtNS0xLTEtMTAwMDAy_647a7437-4072-43b0-bcb2-5b617a752799">973</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;Net cash (used in) provided by financing activities</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDQtMS0xLTEtMTAwMDAy_f9a8bc16-0d57-43ed-8132-feff790444a7">223,093</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDQtMy0xLTEtMTAwMDAy_cb3e2990-82a5-41fa-a607-a1487cfbb168">242,090</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDQtNS0xLTEtMTAwMDAy_3c71ceff-f4b8-49f9-acd7-645277379ee1">49,364</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net change in cash and cash equivalents</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDUtMS0xLTEtMTAwMDAy_fb1e8b0c-b666-414f-b464-a66c9c6398e4">103,858</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDUtMy0xLTEtMTAwMDAy_cdfaf513-9c8e-4bce-8249-5218dd94970e">101,965</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDUtNS0xLTEtMTAwMDAy_bed91685-e301-44a6-b7fc-c9b3435cae0a">53,631</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash and cash equivalents at beginning of period</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDYtMS0xLTEtMTAwMDAy_f75b7c8e-da7d-48f5-8ea7-d4d5ddd47364">333,485</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i61f3c1563a76427b8e6b9d432aa44d9a_I20201231" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDYtMy0xLTEtMTAwMDAy_66c8e451-7d26-4a9b-af12-d665332d3f03">231,520</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iff4d4f6f690d4bce8ad0aafed6fdedd3_I20191231" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDYtNS0xLTEtMTAwMDAy_17224540-692c-4f9e-a852-3e445ad8a1bc">177,889</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash and cash equivalents at end of period</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDctMS0xLTEtMTAwMDAy_b8579a60-1082-4dfd-ad78-76b7497917c9">229,627</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDctMy0xLTEtMTAwMDAy_124e4e2f-3281-4dfe-8f25-c0d7556bc751">333,485</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i61f3c1563a76427b8e6b9d432aa44d9a_I20201231" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDctNS0xLTEtMTAwMDAy_e4891163-9caa-49a8-b15b-f28971ceb820">231,520</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Supplemental disclosures of cash flow information</span></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net cash paid during the period for:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:InterestPaidNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTAtMS0xLTEtMTAwMDAy_51ba0f3a-34df-41ae-9d40-6d3c9b242f9e">40,278</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:InterestPaidNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTAtMy0xLTEtMTAwMDAy_532afb57-23e5-4186-a6c7-9bdc5aa4ea7c">25,976</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:InterestPaidNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTAtNS0xLTEtMTAwMDAy_05d0fb33-bf47-41ef-9986-afee85da3262">26,324</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income taxes, net of refunds</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:IncomeTaxesPaidNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTEtMS0xLTEtMTAwMDAy_587252e0-6d87-4f30-b34e-228f217f4934">69,076</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:IncomeTaxesPaidNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTEtMy0xLTEtMTAwMDAy_629195b1-eb2e-4d42-8fe7-9aec3a8cdf05">39,241</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:IncomeTaxesPaidNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTEtNS0xLTEtMTAwMDAy_eb263a4d-4dd1-4b25-b898-b323a9c3d42f">37,072</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Supplemental disclosure of noncash activities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Right-of-use assets obtained in exchange for operating lease obligations</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTMtMS0xLTEtMTAwMDAy_55b86f5c-6e91-49c0-87ef-cc6c94836055">32,677</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTMtMy0xLTEtMTAwMDAy_255ec433-b8a2-4473-96d6-c54514bb5c45">38,084</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTMtNS0xLTEtMTAwMDAy_3854ebb5-fd5e-4a75-baac-f36edf5630ac">26,001</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Release of indemnification of acquisition-related debt</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="ibp:NoncashActivitiesReleaseOfIndemnificationOfAcquisitionRelatedDebt" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTQtMS0xLTEtMTAwMDAy_ff21a849-dcf3-4e1a-960d-4ed9bf1c6384">980</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="ibp:NoncashActivitiesReleaseOfIndemnificationOfAcquisitionRelatedDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTQtMy0xLTEtMTAwMDAy_e1e17974-3589-41e1-abd7-e4041d432da0">2,036</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="ibp:NoncashActivitiesReleaseOfIndemnificationOfAcquisitionRelatedDebt" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTQtNS0xLTEtMTAwMDAy_27e39a1f-85e8-4e18-83d8-83925db4cbba">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment obtained in exchange for finance lease obligations</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="ibp:FinanceLeaseObligationsIncurred" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTYtMS0xLTEtMTAwMDAy_f2384afb-5a48-4956-8125-1d8b9fc15db2">6,241</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="ibp:FinanceLeaseObligationsIncurred" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTYtMy0xLTEtMTAwMDAy_6e7e5900-da27-43b0-9b3b-d82f0267644d">2,735</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="ibp:FinanceLeaseObligationsIncurred" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTYtNS0xLTEtMTAwMDAy_2b5892dd-3c65-46e5-bfe4-c224b6835340">1,000</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Seller obligations in connection with acquisition of businesses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:BusinessCombinationConsiderationTransferredLiabilitiesIncurred" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTctMS0xLTEtMTAwMDAy_f8e51e0d-73cd-4fc1-81a2-03924017a560">26,978</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:BusinessCombinationConsiderationTransferredLiabilitiesIncurred" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTctMy0xLTEtMTAwMDAy_e811db30-b2b2-4bf8-841c-031cb9d13df9">29,169</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:BusinessCombinationConsiderationTransferredLiabilitiesIncurred" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTctNS0xLTEtMTAwMDAy_a78060e4-f696-40df-bfba-6e6548459a5f">14,086</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unpaid purchases of property and equipment included in accounts payable</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:CapitalExpendituresIncurredButNotYetPaid" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTgtMS0xLTEtMTAwMDAy_73c80661-a561-423f-b4dc-f5a84f9be927">935</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:CapitalExpendituresIncurredButNotYetPaid" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTgtMy0xLTEtMTAwMDAy_e34fbbdb-46cb-4ab9-874e-172725a8d05e">441</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:CapitalExpendituresIncurredButNotYetPaid" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTgtNS0xLTEtMTAwMDAy_b464952b-34d3-42e8-be83-f6f2fe6c8cca">1,013</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See accompanying notes to consolidated financial statements </span></div><div style="height:31.5pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">54</span></div></div></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_82"></div><hr style="page-break-after:always"/><div style="min-height:63pt;width:100%"><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:4pt;font-weight:400;line-height:120%"> </span></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_85"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 1 &#8211; <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84NS9mcmFnOjVlM2Y4OGE1YWUwOTRmOWFhMWQxM2VmZDJhM2NkZDBlL3RleHRyZWdpb246NWUzZjg4YTVhZTA5NGY5YWExZDEzZWZkMmEzY2RkMGVfMTk2NA_550093c2-f001-4b64-8a19-52981791e677" continuedAt="iba48179b02d1496bad320ec2d5dbc77a" escape="true">ORGANIZATION</ix:nonNumeric></span></div><ix:continuation id="iba48179b02d1496bad320ec2d5dbc77a"><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Installed Building Products (&#8220;IBP&#8221;), a Delaware corporation formed on October 28, 2011, and its wholly-owned subsidiaries (collectively referred to as the &#8220;Company,&#8221; and &#8220;we,&#8221; &#8220;us&#8221; and &#8220;our&#8221;) primarily install insulation, waterproofing, fire-stopping, fireproofing, garage doors, rain gutters, window blinds, shower doors, closet shelving and mirrors and other products for residential and commercial builders located in the continental United States. The Company operates in over <ix:nonFraction unitRef="location" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="INF" name="ibp:NumberOfLocationsInOperation" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84NS9mcmFnOjVlM2Y4OGE1YWUwOTRmOWFhMWQxM2VmZDJhM2NkZDBlL3RleHRyZWdpb246NWUzZjg4YTVhZTA5NGY5YWExZDEzZWZkMmEzY2RkMGVfNTA4_bb2bd52f-9938-4241-be85-b7c1ef10356a">230</ix:nonFraction> locations and its corporate office is located in Columbus, Ohio.</span></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In the first quarter of 2022, we realigned our operating segments to reflect recent changes in our business. We have <ix:nonFraction unitRef="segment" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="INF" name="us-gaap:NumberOfOperatingSegments" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84NS9mcmFnOjVlM2Y4OGE1YWUwOTRmOWFhMWQxM2VmZDJhM2NkZDBlL3RleHRyZWdpb246NWUzZjg4YTVhZTA5NGY5YWExZDEzZWZkMmEzY2RkMGVfNDM5ODA0NjUxNTYyOA_d2018e3f-38f3-407d-a54e-2bf6f621ed5c">three</ix:nonFraction> operating segments consisting of our Installation, Manufacturing and Distribution operations. See Note 11, Information on Segments, for further information.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The vast majority of our sales originate from our <ix:nonFraction unitRef="segment" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="INF" name="us-gaap:NumberOfReportableSegments" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84NS9mcmFnOjVlM2Y4OGE1YWUwOTRmOWFhMWQxM2VmZDJhM2NkZDBlL3RleHRyZWdpb246NWUzZjg4YTVhZTA5NGY5YWExZDEzZWZkMmEzY2RkMGVfMTY0OTI2NzQ0NjMyNw_46a3ce8d-edbc-4a5c-aff8-cf3d7c441290">one</ix:nonFraction> reportable segment, Installation. Substantially all of our Installation segment sales are derived from the service-based installation of various products in the residential new construction, repair and remodel and commercial construction end markets from our national network of branch locations. Each of our installation branches has the capacity to serve all of our end markets. See Note 3, Revenue Recognition, for information on our revenues by product and end market.</span></div></ix:continuation><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_88"></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 2 &#8211; <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:SignificantAccountingPoliciesTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMjM_585d8342-f9ae-4865-9182-01c68bc25b9f" continuedAt="i9fef360f4f804e7aba554124a9f486c2" escape="true">SIGNIFICANT ACCOUNTING POLICIES</ix:nonNumeric></span></div><ix:continuation id="i9fef360f4f804e7aba554124a9f486c2" continuedAt="i1da6f2b680134d1face6b9127a6d0a20"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Basis of Presentation and Principles of Consolidation</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:BasisOfAccountingPolicyPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMjc_2a744f2f-d4aa-46b0-a00c-0c9cd748b94b" escape="true">We prepare our consolidated financial statements in accordance with accounting principles generally accepted in the United States of America (&#8220;U.S. GAAP&#8221;).</ix:nonNumeric> <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:ConsolidationPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMTg_e53ce24e-0650-463d-8fb3-ea7640e6682f" escape="true">The accompanying consolidated financial statements include all of our wholly-owned subsidiaries. All intercompany accounts and transactions have been eliminated.</ix:nonNumeric></span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Reclassifications</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:PriorPeriodReclassificationAdjustmentDescription" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTY0OTI2NzUyMjQ0Ng_757c4933-71b8-4cc3-8e28-366f08ed6faf" escape="true">The change in reportable segments described in Note 1, Organization and Note 11, Information on Segments, requires certain prior year disclosures in Note 3, Revenue Recognition and Note 7, Goodwill and Intangibles to be recast to conform to the current year presentation. We expanded the presentation of our administrative operating expenses to separately present our gains on acquisition earnouts in the Consolidated Statements of Operation and Comprehensive Income in this Form 10-K.</ix:nonNumeric> This expansion resulted in the presentation of $<ix:nonFraction unitRef="usd" contextRef="i04a97e90464f4f5e8db3563629410f38_D20210101-20211231" decimals="-5" name="us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTY0OTI2NzUyMjQ4OA_107a8136-526c-453e-be79-10f2339b18eb">1.0</ix:nonFraction>&#160;million and $<ix:nonFraction unitRef="usd" contextRef="i9bcccabeefe04ca69c63b738147b9793_D20200101-20201231" decimals="-5" name="us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTY0OTI2NzUyMjQ3NA_7c878f70-3604-4d60-9a74-0b2ade916e6a">0.2</ix:nonFraction>&#160;million of gains on acquisition earnouts for the years ended December 31, 2021 and 2020, respectively, and a corresponding increase in administrative operating expenses as compared to the Form 10-K for the previous two years.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Use of Estimates</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:UseOfEstimates" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMDc_267a6165-1619-4b63-aae6-8994a2f8339e" escape="true">Preparation of the consolidated financial statements in conformity with U.S. GAAP requires management to make estimates, judgements and assumptions that affect the reported amounts in the consolidated financial statements and accompanying notes. Management believes the accounting estimates are appropriate and reasonably determined; however, due to the inherent uncertainties in making these estimates, actual amounts could differ from such estimates.</ix:nonNumeric></span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Cash and Cash Equivalents</span></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:CashAndCashEquivalentsPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMTQ_10591cf0-4c19-43a6-a220-7bc2c883084a" escape="true">We consider all highly-liquid investments purchased with original term to maturity of three months or less to be cash equivalents.</ix:nonNumeric> Substantially all cash is held in banks providing FDIC coverage of $<ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-4" name="us-gaap:CashFDICInsuredAmount" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTExMw_e6786889-632d-435f-b359-de454b60d211">0.25</ix:nonFraction> million per depositor.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Revenue and Cost Recognition</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our revenues are disaggregated between our Installation reportable segment and our Other category which includes our Manufacturing and Distribution operating segments. The reconciliation of the disaggregation of revenue is included in Note 11, Information on Segments. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Revenues for our Installation operating segment are derived primarily through contracts with customers whereby we install insulation and other complementary building products and are recognized when control of the promised goods or services is transferred to our customers, in an amount that reflects the consideration we expect to be entitled to in exchange for those goods or services. We account for a contract when it has approval and commitment from both parties, the rights of the parties are identified, payment terms are identified, the contract has commercial substance and collectability of consideration is probable. </span></div></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">55</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:63pt;width:100%"><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div></div><ix:continuation id="i1da6f2b680134d1face6b9127a6d0a20" continuedAt="i0f0b56b7495b410585aa0aa9807d6a40"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We offer assurance-type warranties on certain of our installed products and services that do not represent a separate performance obligation and, as such, do not impact the timing or extent of revenue recognition.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For contracts that are not complete at the reporting date, we recognize revenue over time utilizing a cost-to-cost input method as we believe this represents the best measure of when goods and services are transferred to the customer. When this method is used, we estimate the costs to complete individual contracts and record as revenue that portion of the total contract price that is considered complete based on the relationship of costs incurred to date to total anticipated costs. Under the cost-to-cost method, the use of estimated costs to complete each contract is a significant variable in the process of determining recognized revenue, requires judgment and can change throughout the duration of a contract due to contract modifications and other factors impacting job completion. The costs of earned revenue include all direct material and labor costs and those indirect costs related to contract performance, such as indirect labor, supplies, tools and repairs. Provisions for estimated losses on uncompleted contracts are made in the period in which such losses are determined.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our long-term contracts can be subject to modification to account for changes in contract specifications and requirements. We consider contract modifications to exist when the modification either creates new, or changes the existing, enforceable rights and obligations. Most of our contract modifications are for goods or services that are not distinct from the existing contract due to the significant integration service provided in the context of the contract and are accounted for as if they were part of that existing contract. The effect of a contract modification on the transaction price and our measure of progress for the performance obligation to which it relates, is recognized as an adjustment to revenue (either as an increase in or a reduction of revenue) on a cumulative catch-up basis.</span></div><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:RevenueFromContractWithCustomerPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMTk_e9e1d9a6-b448-4a52-b941-0c768240eaac" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Payment terms typically do not exceed <ix:nonNumeric contextRef="i7030ce37fae04cf69695a4b0ca65329b_D20220101-20221231" name="ibp:RevenueFromContractWithCustomerPaymentTerms" format="ixt-sec:durday" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfNDI5MQ_708aa26a-0b88-423e-a6c9-6d95eb348652">30</ix:nonNumeric> days for short-term contracts and typically do not exceed <ix:nonNumeric contextRef="i3a074bd43fbe424181ccfa73e65a0d18_D20220101-20221231" name="ibp:RevenueFromContractWithCustomerPaymentTerms" format="ixt-sec:durday" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfNDM1Mg_ea7a9197-e68d-4960-96c3-0f1f58886764">60</ix:nonNumeric> days for long-term contracts with customers. All contracts are billed either contractually or as work is performed. Billing on our long-term contracts occurs primarily on a monthly basis throughout the contract period whereby we submit invoices for customer payment based on actual or estimated costs incurred during the billing period. On certain of our long-term contracts the customer may withhold payment on an invoice equal to a percentage of the invoice amount, which will be subsequently paid after satisfactory completion of each installation project. This amount is referred to as retainage and is common practice in the construction industry, as it allows for customers to ensure the quality of the service performed prior to full payment. Retainage receivables are classified as current or long-term assets based on the expected time to project completion. See "Accounts Receivable" below for further discussion of our retainage receivables.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Revenues for our Distribution and Manufacturing operating segments included in the Other category are accounted for on a point-in-time basis when the sale occurs, adjusted accordingly for any return provisions. Sales taxes are not included in revenue as we act as a conduit for collecting and remitting sales taxes to the appropriate government authorities. The point-in-time recognition is when we transfer the promised products to the customer and the customer obtains control of the products depending upon the agreed upon terms in the contract. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We generally expense all sales commissions and other incremental costs of obtaining a contract when incurred because the amortization period is usually one year or less. Sales commissions are recorded within selling expenses on the Consolidated Statements of Operations and Comprehensive Income.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We do not disclose the value of unsatisfied performance obligations for contracts with an original expected length of one year or less.</span></div></ix:nonNumeric><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Derivative Instruments and Hedging Activities</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:DerivativesMethodsOfAccountingHedgingDerivatives" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMTI_7da002ca-692c-494b-9963-d3de7f4992df" escape="true">We record all derivatives on the balance sheet at fair value. The accounting for changes in the fair value of derivatives depends on the intended use of the derivative, whether we have elected to designate a derivative in a hedging relationship and apply hedge accounting and whether the hedging relationship has satisfied the criteria necessary to apply hedge accounting. Derivatives designated and qualifying as a hedge of the exposure to variability in expected future cash flows, or other types of forecasted transactions, are considered cash flow hedges. Hedge accounting generally provides for the matching of the timing of gain or loss recognition on the hedging instrument with the recognition of the earnings effect of the hedged forecasted transactions in a cash flow hedge. We may enter into derivative contracts that are intended to economically hedge certain of our risks, even though hedge accounting does not apply or we elect not to apply hedge accounting.</ix:nonNumeric> See Note 12, Derivatives and Hedging Activities, for additional information on our accounting policy for derivative instruments and hedging activities.</span></div></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">56</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:63pt;width:100%"><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div></div><ix:continuation id="i0f0b56b7495b410585aa0aa9807d6a40" continuedAt="i5781fee0af734b8ba1d578ddb0d1c503"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Business Combinations</span></div><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:BusinessCombinationsPolicy" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMjk_8b4933ed-c2e0-4ae8-9b7b-5489c2842b64" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The purchase price for business combinations is allocated to the estimated fair values of acquired tangible and intangible assets, including goodwill and assumed liabilities, where applicable. Additionally, we recognize customer relationships, trademarks and trade names, backlog and non-competition agreements as identifiable intangible assets. These assets are recorded at fair value as of the transaction date. The fair value of these intangibles is determined using either the income approach or the market approach using current industry information which involves significant unobservable inputs (Level 3 inputs). These inputs include projected sales, margin and tax rate. Contingent consideration is recorded at fair value at the acquisition date and any subsequent adjustments to these fair values would be recorded in earnings.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At times, the total purchase price for a business combination could be less than the estimated fair values of acquired tangible and intangible assets. In these cases, we record a gain on bargain purchase within other expenses in the Consolidated Statements of Operations and Comprehensive Income rather than goodwill in accordance with U.S. GAAP.</span></div></ix:nonNumeric><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Accounts Receivable</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:ReceivablesPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMTU_f2e5818d-68a7-4618-8cb5-7080458b922f" continuedAt="i0b9607d75fc842f2b15e51e2df9f7f73" escape="true">We account for trade receivables based on amounts billed to customers. Past due receivables are determined based on contractual terms. We do not accrue interest on any of our trade receivables.</ix:nonNumeric></span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="i0b9607d75fc842f2b15e51e2df9f7f73">Retainage receivables represent the amount retained by our customers to ensure the quality of the installation and is received after satisfactory completion of each installation project. Management regularly reviews aging of retainage receivables and changes in payment trends and records an allowance when collection of amounts due are considered at risk.</ix:continuation> Amounts retained by project owners under construction contracts and included in accounts receivable were $<ix:nonFraction unitRef="usd" contextRef="i916add5659e9483187a23c436172af58_I20221231" decimals="-5" name="us-gaap:AccountsReceivableNet" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfODYzMQ_70e5f4d6-fce6-463a-886b-0cf492fbde8c">49.8</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="iac9bd348abd04098bc3566be7ec90b65_I20211231" decimals="-5" name="us-gaap:AccountsReceivableNet" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfODYzOA_f3ae27e3-9c46-4436-a348-8fa471da6501">40.5</ix:nonFraction> million as of December&#160;31, 2022 and 2021, respectively. In addition, as of December&#160;31, 2022 and 2021, $<ix:nonFraction unitRef="usd" contextRef="i522dacc92fda49dca2761a231d5ffdf7_I20221231" decimals="-5" name="us-gaap:ConstructionContractorReceivableRetainage" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfODY5NQ_b394c7ee-cf8d-4ac0-b2b4-3de41d677e87">1.0</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="i554c55111f144a58ad00025d79e13e9b_I20211231" decimals="-5" name="us-gaap:ConstructionContractorReceivableRetainage" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTA5OTUxMTcwMjk0MQ_27e5f28d-89bb-4f46-9646-f923bb00231c">0.5</ix:nonFraction> million of long-term retainage receivables were recorded in other non-current assets, respectively.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accounts receivable are presented net of our allowance for credit losses. Credit losses are measured according to ASC 326, &#8220;Financial Instruments &#8211; Credit Losses: Measurement of Credit Losses on Financial Instruments.&#8221; We consider multiple factors to estimate expected credit losses for financial instruments, including trade receivables, retainage receivables and contract assets (unbilled receivables). </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our expected loss allowance methodology for accounts receivable is developed using historical losses, current economic conditions and current credit quality. We perform ongoing evaluations of our existing and potential customer&#8217;s creditworthiness. See Note 4, Credit Losses, for additional information.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Concentration of Credit Risk</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:ConcentrationRiskCreditRisk" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMDg_bc86f88e-b3b0-4e59-a6c3-d55fe52ccd48" escape="true">Credit risk is our risk of financial loss from the non-performance of a contractual obligation on the part of our counterparty. Such risk arises principally from our receivables from customers and cash and bank balances. Substantially all of our trade accounts receivable are from entities engaged in residential and commercial construction. We perform periodic credit evaluations of our customers&#8217; financial condition. The general credit risk of our counterparties is not considered to be significant.</ix:nonNumeric> In addition, no individual customer made up more than <ix:nonFraction unitRef="number" contextRef="i64d37377565942d7b62216f914464267_D20220101-20221231" decimals="INF" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTAxMjY_7c107eb3-bb5e-4f4e-a940-33375078ec82"><ix:nonFraction unitRef="number" contextRef="ibb4eb8b80ae1409c879096369623731a_D20210101-20211231" decimals="INF" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTAxMjY_bd9cdd09-fd64-4af0-94ec-9ec7538552d4"><ix:nonFraction unitRef="number" contextRef="i73dcc289e54247d5a9ee4500da7b929a_D20200101-20201231" decimals="INF" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTAxMjY_cc87d607-d70b-4dbd-a53c-469cbd3156c5">3</ix:nonFraction></ix:nonFraction></ix:nonFraction>% of accounts receivable or <ix:nonFraction unitRef="number" contextRef="idcbfa766a726450d8033269af5072004_D20220101-20221231" decimals="INF" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTAxNTU_53e604ab-bde5-4871-bd03-1fcd913eb6c3"><ix:nonFraction unitRef="number" contextRef="i5119f1a3a77b4ab090de134cabf394ea_D20210101-20211231" decimals="INF" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTAxNTU_6b04bf6e-ce78-47d0-a84f-632684b519cb"><ix:nonFraction unitRef="number" contextRef="icd9e31da4b4f4f98bbdc2f789ded5c25_D20200101-20201231" decimals="INF" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTAxNTU_6e9e00bc-d62e-4a84-9669-9e69af616916">5</ix:nonFraction></ix:nonFraction></ix:nonFraction>% of net revenue for the years ended December&#160;31, 2022, 2021 and 2020.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Inventories</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:InventoryPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMjQ_96e657f6-02fe-448e-8cd1-c128f50c925e" escape="true">Inventories consist of insulation, waterproofing materials, fireproofing and fire-stopping materials, garage doors, rain gutters, window blinds, shower doors, mirrors, closet shelving and other products. We value inventory at each balance sheet date to ensure that it is carried at the lower of cost or net realizable value with cost determined using the first-in, first-out (&#8220;FIFO&#8221;) method. Net realizable value is the estimated selling price in the ordinary course of business, less reasonably predictable cost of completion, disposal and transportation. As of December&#160;31, 2022 and 2021, substantially all inventory was finished goods. Inventory provisions are recorded to reduce inventory to the lower of cost or net realizable value for obsolete or slow moving inventory based on assumptions about future demand and marketability of products, the impact of new product introductions, inventory levels and turns, product spoilage, and specific identification of items such as product discontinuance, engineering/material changes, or regulatory-related changes.</ix:nonNumeric></span></div></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">57</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:63pt;width:100%"><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div></div><ix:continuation id="i5781fee0af734b8ba1d578ddb0d1c503" continuedAt="ifa23a293fb4e4f0fa262f99ba9b84056"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Property and Equipment</span></div><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:PropertyPlantAndEquipmentPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMjU_4ba8562d-9d90-4190-a37c-7b4029574266" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Property and equipment are stated at cost, less accumulated depreciation. We provide for depreciation and amortization of property and equipment using the straight-line method over the expected useful lives of the assets. Expected useful lives of property and equipment vary but generally are the shorter of lease life or <ix:nonNumeric contextRef="i0e330197b8cc466a87fd325ae1726f87_D20220101-20221231" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTE2MTM_c1ca1c93-472f-425a-87d7-9c7d8f5435bc"><ix:nonNumeric contextRef="ie678e6339f5846fb8e4681a3cc644073_D20220101-20221231" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTE2MTM_dd0e6e11-cd05-40ce-9281-26d47c2b40d7">five years</ix:nonNumeric></ix:nonNumeric> for vehicles and leasehold improvements, <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTE2NTc_a977f052-cdfa-4287-b1c2-2c13ccbb2ec3">three</span> to <ix:nonNumeric contextRef="i45802eccf5284f33b5a37c51a3ab3e77_D20220101-20221231" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTE2NjM_19fd8953-ab80-426d-b093-82102e6b5c1c">five years</ix:nonNumeric> for furniture, fixtures and equipment and <ix:nonNumeric contextRef="if32d292972dc421baf704f08cff66b78_D20220101-20221231" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTE3MDg_315a4167-4c77-44c8-b117-ff4169ee2385">30</ix:nonNumeric> years for buildings.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Major renewals and improvements are capitalized. Maintenance, repairs and minor renewals are expensed as incurred. When assets are retired or otherwise disposed of, the related cost and accumulated depreciation are removed from the accounts and any resulting gain or loss is recorded. These assets are regularly review for possible impairment if there are indicators that their carrying amounts are not recoverable.</span></div></ix:nonNumeric><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Goodwill</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:GoodwillAndIntangibleAssetsGoodwillPolicy" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMTY_d421100a-4755-49b7-81d9-e2e4d6593385" continuedAt="if894f7df5fe949568ba87054a68fe004" escape="true">Goodwill results from business combinations and represents the excess of the purchase price over the fair value of acquired tangible assets and liabilities and identifiable intangible assets. Annually, on October 1, or if conditions indicate an earlier review is necessary, we perform our goodwill impairment testing to determine if it is more likely than not that the fair value of a reporting unit is less than its carrying amount. As described in Note 1, Organization and Note 11, Information on Segments, we realigned our operating segments in 2022 to reflect recent changes in our business. We have determined that our reporting units are at the operating segment level.</ix:nonNumeric></span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="if894f7df5fe949568ba87054a68fe004">The estimate of a reporting unit&#8217;s fair value is determined by weighting a discounted cash flow model and a market-related model using current industry information that involve significant unobservable inputs (Level 3 inputs). In determining the estimated future cash flow, we consider and apply certain estimates and judgments using our historical knowledge, external valuation experts, current market trends and other information. These estimates and judgements include current and projected future levels of income based on management&#8217;s plans, business trends, prospects, market and economic conditions and market-participant considerations. An impairment charge is recognized for the amount by which the carrying value exceeds the reporting unit's fair value, not to exceed the total amount of goodwill allocated to each reporting unit.</ix:continuation> </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Impairment of Other Intangible and Long-Lived Assets</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMTA_37954a32-dc44-44ff-8ceb-23c9a9669b79" continuedAt="i6c719b55b096412f948a90288934ab59" escape="true">Other intangible assets consist of customer relationships, backlog, non-competition agreements and business trademarks and trade names. Amortization of finite lived intangible assets is recorded to reflect the pattern of economic benefits based on projected revenues over their respective estimated useful lives (customer relationships &#8211; <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTM1NTU_ef0ebe6a-c7b3-48eb-8f8b-5ddf39ff0efb">eight</span> to <ix:nonNumeric contextRef="ie9cf8ce2ee8c464086e5b3058b55476c_D20220101-20221231" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTM1NjE_6817493b-1443-4240-bb8e-9b385a1b4f04">15</ix:nonNumeric> years, backlog &#8211; <ix:nonNumeric contextRef="ie4319ae880b543cbbcc6d05a87520cb6_D20220101-20221231" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" format="ixt-sec:durmonth" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTM1NzU_03bd376e-e8ca-4b18-b2d6-0aa78bef3a04">12</ix:nonNumeric> to <ix:nonNumeric contextRef="i8ab06223d33149249774cf08ad138b35_D20220101-20221231" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" format="ixt-sec:durmonth" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTM1ODE_73213ad5-9296-4ab0-bb29-a7018d541004">36</ix:nonNumeric> months, non-competition agreements &#8211; <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTM2MTQ_9876c3d1-52c9-4958-8348-18d296904de3">one</span> to <ix:nonNumeric contextRef="ifbf801f2701b4b64a3a73f7d5f4ce37a_D20220101-20221231" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTM2MjA_e11cf5e0-8c0a-4ebc-ae50-c15f0163c51e">five years</ix:nonNumeric> and business trademarks and trade names &#8211; <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTM2NjU_f0c11354-8793-4523-b059-4ab1963f4cfb">two</span> to <ix:nonNumeric contextRef="i5ec1d9c191cb4a73b7803b756c514cbe_D20220101-20221231" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTM2NzE_5a03a0ff-04af-4e34-b808-f89f21d4e7e5">15</ix:nonNumeric> years). We do not have any indefinite-lived intangible assets other than goodwill.</ix:nonNumeric></span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="i6c719b55b096412f948a90288934ab59">We review long-lived assets and intangible assets whenever events or changes in circumstances indicate that the carrying value of an asset may not be recoverable. An impairment loss is recognized when estimated future cash flows expected to result from the use of an asset and its eventual disposition are less than its carrying amount. When impairment is identified, the carrying amount of the asset is reduced to its estimated fair value. Assets to be disposed of are recorded at the lower of net book value or fair net realizable value less cost to sell at the date management commits to a plan of disposal.</ix:continuation> There was <ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="INF" name="us-gaap:ImpairmentOfLongLivedAssetsHeldForUse" format="ixt:fixed-zero" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTQzNzI_65686c8b-dcf9-4e8f-9314-773a94b4b4e9"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="INF" name="us-gaap:ImpairmentOfLongLivedAssetsHeldForUse" format="ixt:fixed-zero" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTQzNzI_76a0e057-298c-4e01-a885-ff4cb2cc05ca"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="INF" name="us-gaap:ImpairmentOfLongLivedAssetsHeldForUse" format="ixt:fixed-zero" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTQzNzI_f7b88714-a6ec-47f4-b5f3-812e68222a26">no</ix:nonFraction></ix:nonFraction></ix:nonFraction> impairment loss for the years ended December&#160;31, 2022, 2021, and 2020.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Other Liabilities</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="ibp:OtherLiabilitiesPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMjY_16c11c8d-9999-4934-b972-7e53c84424f9" continuedAt="i63a1013f2085456cb2cf70cc47eae314" escape="true">Our workers&#8217; compensation insurance program, for a significant portion of our business, is considered a high deductible program whereby we are responsible for the cost of claims under approximately $<ix:nonFraction unitRef="usd" contextRef="ic3ce87d770614921b8e95c96cbaef621_I20221231" decimals="-5" name="us-gaap:WorkersCompensationLiabilityCurrentAndNoncurrent" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTQ2NDM_5c23f75c-67cc-464e-b602-516482ea79a5">0.8</ix:nonFraction> million. Our general liability insurance program is considered a high retention program whereby we are responsible for the cost of claims up to approximately $<ix:nonFraction unitRef="usd" contextRef="ia8f02ef2a4ed497f84af0c7912d9023c_I20221231" decimals="-5" name="us-gaap:WorkersCompensationLiabilityCurrentAndNoncurrent" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTQ3OTY_1316bd2e-5a5c-4b54-872e-130ae90ae5c8">5.0</ix:nonFraction> million, subject to an aggregate cap of $<ix:nonFraction unitRef="usd" contextRef="ia8f02ef2a4ed497f84af0c7912d9023c_I20221231" decimals="-5" name="ibp:AggregateCapWorkersCompensationLiability" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTQ4MzE_b3583585-4356-486f-8243-7c6b9805513f">10.0</ix:nonFraction> million. Our vehicle liability insurance program is considered a high deductible program whereby we are responsible for the cost of claims under approximately $<ix:nonFraction unitRef="usd" contextRef="i32b91c3b49e24b33a71b7c34db3b11fa_I20221231" decimals="-5" name="us-gaap:WorkersCompensationLiabilityCurrentAndNoncurrent" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTQ5ODU_061fe140-baf6-4c2b-be51-6145329f3492">1.0</ix:nonFraction> million. In each case, if we do not pay these claims, our insurance carriers are required to make these payments to the claimants on our behalf. The liabilities represent our best estimate of our costs, using generally accepted actuarial reserving methods, of the ultimate obligations for reported claims plus those incurred but not reported for all claims incurred through December&#160;31, 2022 and 2021. We establish case reserves for reported claims using case-basis evaluation of the underlying claims data and we update as information becomes known. We regularly monitor the potential for changes in estimates, evaluate our insurance accruals and adjust our recorded provisions.</ix:nonNumeric></span></div></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">58</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:63pt;width:100%"><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div></div><ix:continuation id="ifa23a293fb4e4f0fa262f99ba9b84056" continuedAt="i183c0b9a735a4822b2811800693113f4"><ix:continuation id="i63a1013f2085456cb2cf70cc47eae314" continuedAt="i476535198d944f1bae9f2ee473a8f3b0"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The assumptions underlying the ultimate costs of existing claim losses are subject to a high degree of unpredictability, which can affect the liability recorded for such claims. For example, variability in inflation rates of health care costs inherent in workers&#8217; compensation claims can affect the ultimate costs. Similarly, changes in legal trends and interpretations, as well as a change in the nature and method of how claims are settled, can affect ultimate costs. Our estimates of liabilities incurred do not anticipate significant changes in historical trends for these variables and any changes could have a considerable effect on future claim costs and currently recorded liabilities.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We carry insurance for a number of risks, including, but not limited to, workers&#8217; compensation, general liability, vehicle liability, property and our obligation for employee-related health care benefits. Liabilities relating to claims associated with these risks are estimated by considering historical claims experience, including frequency, severity, demographic factors and other actuarial assumptions. In estimating our liability for such claims, we periodically analyze our historical trends, including loss development, and apply appropriate loss development factors to the incurred costs associated with the claims with the assistance of external actuarial consultants. While we do not expect the amounts ultimately paid to differ significantly from our estimates, our reserves and corresponding expenses could be affected if future claim experience differs significantly from historical trends and actuarial assumptions.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Treasury Stock</span></div></ix:continuation><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="i476535198d944f1bae9f2ee473a8f3b0">Repurchases of our common stock are recorded at cost and classified as Treasury Stock on our Consolidated Balance Sheets. As of December&#160;31, 2022, we have not re-issued any of our treasury stock, but may do so periodically.</ix:continuation> </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Advertising Costs</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:AdvertisingCostsPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMjg_995f91e0-d767-4143-8e27-04cfd0780738" escape="true">Advertising costs are generally expensed as incurred.</ix:nonNumeric> Advertising expense was approximately $<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-5" name="us-gaap:AdvertisingExpense" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTczNzc_c0a6f903-d7ef-4df7-96c2-085361c97675">4.9</ix:nonFraction> million, $<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-5" name="us-gaap:AdvertisingExpense" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTA5OTUxMTcwNDE4NQ_c966ef35-4b9d-4f2b-b602-2aea640bcdb3">4.6</ix:nonFraction> million, and $<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-5" name="us-gaap:AdvertisingExpense" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTA5OTUxMTcwNDE5NA_49ef24c9-0f7a-4781-b339-dd88ecc3c7f0">3.9</ix:nonFraction> million for the years ended December&#160;31, 2022 2021 and 2020, respectively. These costs are included in selling expense on the Consolidated Statements of Operations and Comprehensive Income.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Deferred Financing Costs</span></div><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="ibp:DeferredOfferingCostsPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMjE_47709a07-877c-44c0-a1d9-7fe5ee982ab9" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Deferred financing costs and debt issuance costs combined, totaling $<ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-5" name="us-gaap:DeferredFinanceCostsNet" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTc2NTk_19a8ffcb-302e-417f-8816-22ee31692fab">10.2</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-5" name="us-gaap:DeferredFinanceCostsNet" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTc2NjY_29912073-9b67-4c9c-93eb-324c8e17e528">11.4</ix:nonFraction> million, net of accumulated amortization as of December&#160;31, 2022 and 2021, respectively, are amortized over the term of the related debt on a straight-line basis which approximates the effective interest method. The deferred financing costs are included in other non-current assets while the debt issuance costs are included in long-term debt on the Consolidated Balance Sheets as of December&#160;31, 2022 and 2021, respectively. The related amortization expense of these costs combined was $<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-5" name="us-gaap:AmortizationOfFinancingCosts" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTgxMTQ_73661224-ea15-4eb7-a03b-624dc389328f">1.9</ix:nonFraction> million, $<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-5" name="us-gaap:AmortizationOfFinancingCosts" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTgxMTg_445a0aff-d6a6-4452-9c21-367485978433">1.4</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-5" name="us-gaap:AmortizationOfFinancingCosts" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTgxMjU_dd541ff4-b320-4257-b203-53e0993b7d00">1.3</ix:nonFraction> million and is included in interest expense, net on the Consolidated Statements of Operations and Comprehensive Income for the years ended December&#160;31, 2022, 2021 and 2020, respectively.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We wrote off $<ix:nonFraction unitRef="usd" contextRef="icc12c341ab264e4484bd54d854bbd417_D20210101-20211231" decimals="-5" name="us-gaap:WriteOffOfDeferredDebtIssuanceCost" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTA5OTUxMTcwNDMwNg_17fcb77a-60a9-4347-9e56-a1c2eb42d94d">0.2</ix:nonFraction> million in previously capitalized loan costs during the year ended December&#160;31, 2021. In addition, we expensed loan costs of approximately $<ix:nonFraction unitRef="usd" contextRef="id889bbe23ec44abf91d92688cfe07f1d_I20211231" decimals="-5" name="us-gaap:DeferredFinanceCostsNet" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTA5OTUxMTcwNDM1MQ_73ded883-df29-4b08-8798-950a87da1a37">1.6</ix:nonFraction> million for the year ended December&#160;31, 2021 associated with our credit facilities because they did not meet the requirements for capitalization. We had <ix:nonFraction unitRef="usd" contextRef="i1342bf92766544b088ad18cf1e74bf7c_D20220101-20221231" decimals="-5" name="us-gaap:WriteOffOfDeferredDebtIssuanceCost" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTg2MTM_0b93dd79-5a9a-4365-a89b-c2662e851a25"><ix:nonFraction unitRef="usd" contextRef="i2a9e98edaba24b94abaf2f7ee50e6387_I20221231" decimals="-5" name="us-gaap:DeferredFinanceCostsNet" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTg2MTM_cda34888-d0c1-412a-a224-dfb1b1577302">no</ix:nonFraction></ix:nonFraction> such write offs or expenses during the years ended December&#160;31, 2022 or 2020. These amounts are included in interest expense, net on the Consolidated Statements of Operations and Comprehensive Income. We also had $<ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-5" name="ibp:DebtRelatedFinancingCost" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTg4MDU_817d0f6e-f44b-4802-a008-a956bda79156">0.7</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-5" name="ibp:DebtRelatedFinancingCost" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTA5OTUxMTcwNDQwNw_a2def5e2-6d22-44b6-8e59-a1d9cf1e4120">7.5</ix:nonFraction> million in new costs associated with the debt-related financing transactions incurred during the years ended December&#160;31, 2022 and 2021. The deferred financing costs are included in other non-current assets while the debt issuance costs are included in long-term debt on the Consolidated Balance Sheets. These costs are amortized over the term of the related debt on a straight-line basis which approximates the effective interest method.</span></div></ix:nonNumeric><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For additional information on our debt instruments, see Note 8, Long-Term Debt.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Leases</span></div><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:LesseeLeasesPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMzE_1fe31f26-ba9d-48df-ab43-a259f17adc96" continuedAt="id625ccdeb34d4066a23f0a9023fdac32" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Leases are measured according to ASC 842, &#8220;Leases,&#8221; which requires substantially all leases, with the exception of leases with a term of one year or less, to be recorded as a lease liability measured as the present value of the future lease payments with a corresponding right-of-use asset. ASC 842 also requires disclosures designed to give financial statement users information on the amount, timing and uncertainty of cash flows. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We determine if an arrangement is a lease at inception. Most of our operating leases do not provide an implicit rate so we use our incremental borrowing rate based on the information available at the commencement date to determine the present value of future payments. Leases with an initial term of 12 months or less are not recorded on the balance sheet as we recognize lease expense for these leases on a straight-line basis over the lease term. We elect to not separate lease components from non-lease </span></div></ix:nonNumeric></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">59</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:63pt;width:100%"><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div></div><ix:continuation id="i183c0b9a735a4822b2811800693113f4" continuedAt="i731ce71c4bd44fceb8e4ed74deef4764"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="id625ccdeb34d4066a23f0a9023fdac32" continuedAt="i828529a82dfc40baab750d0c40c264e9">components for all fixed payments, and we exclude variable lease payments in the measurement of right-of-use assets and lease obligations.</ix:continuation></span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="i828529a82dfc40baab750d0c40c264e9">Most lease agreements include one or more renewal options, all of which are at our sole discretion. Generally, future renewal options that have not been executed as of the balance sheet date are excluded from right-of-use assets and related lease liabilities. Certain leases also include options to purchase the leased property. The depreciable life of assets and leasehold improvements are limited by the expected lease term, unless there is a transfer of title or purchase option reasonably certain of exercise. Some of our vehicle lease agreements include provisions for residual value guarantees and any expected payment is included in our lease liability.</ix:continuation> </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Share-Based Compensation</span></div><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMTc_0be33392-6854-49ec-8442-a5d2c5b66930" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our share-based compensation program is designed to attract and retain employees while also aligning employees&#8217; interests with the interests of our stockholders. Restricted stock awards are periodically granted to certain employees, officers and non-employee members of our board of directors under the stockholder-approved 2014 Omnibus Incentive Plan.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Certain of our stock awards are deemed to be equity-based with a service condition and do not contain a market or performance condition with the exception of performance-based awards granted to certain officers and performance-based stock units. Fair value of the non-performance-based awards to employees and officers is measured at the grant date and amortized to expense over the vesting period of the awards using the straight-line attribution method for all service-based awards with a graded vesting feature. This fair value is reduced by assumed forfeitures and adjusted for actual forfeitures until vesting. We also issue performance-based stock awards to certain officers under our 2014 Omnibus Incentive Plan. The performance-based compensation expense is recorded over the requisite service period using the graded-vesting method for the entire award. Performance-based stock awards are accounted for at fair value at date of grant. We also periodically grant performance-based stock units to certain employees under the stockholder-approved 2014 Omnibus Incentive Plan. These units convert to shares upon meeting time- and performance-based requirements.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Compensation expense for performance-based stock units is recorded based on an assessment each reporting period of the probability that certain performance goals will be met during the contingent vesting period. If performance goals are not probable to occur, no compensation expense will be recognized. If performance goals that were previously deemed probable are not or are not expected to be met, the previously recognized compensation cost related to such performance goals will be reversed. Employees and officers are subject to tax at the vesting date based on the market price of the shares on that date, or on the grant date if an election is made.</span></div></ix:nonNumeric><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Income Taxes</span></div><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:IncomeTaxPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMTM_47d4b63e-dbe9-48fc-bb2d-48a78540c6dd" continuedAt="i529b184bf0f148a28c630f9745df7306" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We account for income taxes using the asset and liability method. Under this method, the amount of taxes currently payable or refundable are accrued and deferred tax assets and liabilities are recognized for the estimated future tax consequences of temporary differences that currently exist between the tax basis and financial reporting basis of our assets and liabilities.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Valuation allowances are established against deferred tax assets when it is more likely than not that the realization of those deferred tax assets will not occur. In evaluating our ability to recover our deferred tax assets within the jurisdiction from which they arise, we consider all available positive and negative evidence, including scheduled reversals of deferred tax liabilities, the ability to produce future taxable income, prudent and feasible tax planning strategies and recent financial operations. In projecting future taxable income, we factor in historical results and changes in accounting policies and incorporate assumptions, including the amount of future federal and state pretax operating income, the reversal of temporary differences and the implementation of feasible and prudent tax planning strategies. These assumptions require significant judgment about the forecasts of future taxable income and are consistent with the plans and estimates we use to manage the underlying businesses.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Deferred tax assets and liabilities are measured using the enacted tax rates in effect in the years when those temporary differences are expected to reverse. The effect on deferred taxes from a change in tax rate is recognized through operations in the period that includes the enactment date of the change. Changes in tax laws and rates could also affect recorded deferred tax assets and liabilities in the future.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A tax benefit from an uncertain tax position may be recognized when it is more likely than not that the position will be sustained upon examination, including resolutions of any related appeals or litigation processes, based on the technical merits. Income tax positions must meet a more likely than not recognition threshold to be recognized.</span></div></ix:nonNumeric></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">60</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:63pt;width:100%"><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div></div><ix:continuation id="i731ce71c4bd44fceb8e4ed74deef4764"><ix:continuation id="i529b184bf0f148a28c630f9745df7306"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We recognize tax liabilities for uncertain tax positions and adjust these liabilities when our judgment changes as a result of the evaluation of new information not previously available. Liabilities related to uncertain tax positions are recorded in other long-term liabilities on the Consolidated Balance Sheets. Due to the complexity of some of these uncertainties, the ultimate resolution may result in a payment that is materially different from the current estimate of the tax liabilities. These differences will be reflected as increases or decreases to income tax expense and the effective tax rate in the period in which the new information becomes available. Interest and penalties related to unrecognized tax benefits are recognized within income tax expense in the Consolidated Statements of Operations and Comprehensive Income. Accrued interest and penalties are recognized in other current liabilities on the Consolidated Balance Sheets.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our income tax expense, deferred tax assets and liabilities and reserves for unrecognized tax benefits reflect management&#8217;s best assessment of estimated future taxes to be paid. We are subject to income taxes in the United States, which includes numerous state and local jurisdictions. Significant judgments and estimates are required in determining the income tax expense, deferred tax assets and liabilities and the reserve for unrecognized tax benefits.</span></div></ix:continuation><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Estimated Fair Value of Financial Instruments</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See Note 10, Fair Value Measurements, for related accounting policies.</span></div><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMTE_0d4589ca-2058-4169-8220-457ae0b51013" escape="true"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Recently Adopted Accounting Pronouncements</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:18.783%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:61.329%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Standard</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Effective&#160;Date</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Adoption</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ASU 2022-06, Reference Rate Reform (Topic 848): Deferral of the Sunset Date of Topic 848</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 21, 2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">This pronouncement amends ASU 2020-04 which provides temporary optional expedients and exceptions to certain transactions affected by reference rate reform. ASU 2022-06 defers the sunset date of applying ASU 2020-04 to December 31, 2024. We continue to evaluate whether to apply the optional guidance on an ongoing basis but do not expect it to have a material impact on our consolidated financial statements.</span></div></td></tr></table></div><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMDk_2697450a-8ce4-412b-817c-4fa6e973d553" escape="true"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Recently Issued Accounting Pronouncements Not Yet Adopted</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We are currently evaluating the impact of certain ASUs on our Consolidated Financial Statements or Notes to Consolidated Financial Statements, which are described below:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:21.560%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:22.438%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:20.391%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:29.459%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Standard</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Description</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Effective Date</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Effect&#160;on&#160;the&#160;financial&#160;<br/>statements&#160;or other significant matters</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ASU 2021-08, Business Combinations (Topic 805): Accounting for contract assets and contract liabilities from contracts with customers </span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">This pronouncement amends Topic 805 to require an acquirer to account for revenue contracts in a business combination in accordance with Topic 606 as if the acquirer had originated the contracts. </span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Annual periods beginning after December 15, 2022, including interim periods therein. Early adoption is permitted.</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">The Company will adopt and apply the guidance as prescribe by this ASU to future business combinations that occur after the effective date. This will not materially affect our consolidated financial statements.</span></td></tr></table></div></ix:nonNumeric></ix:nonNumeric></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">61</span></div></div></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_91"></div><hr style="page-break-after:always"/><div style="min-height:63pt;width:100%"><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 3 &#8211; <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:RevenueFromContractWithCustomerTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RleHRyZWdpb246ODZmZDQ2ODlkMTgzNDMyYTlmNjAxYTQzOGQxZjQ0OTFfMjA4MQ_2710a640-126c-454b-b061-27e241ea690f" continuedAt="i94129cdc22604ac59e68b8f4240e103a" escape="true">REVENUE RECOGNITION</ix:nonNumeric></span></div><ix:continuation id="i94129cdc22604ac59e68b8f4240e103a" continuedAt="i46b5e74286244775af20897e641e1610"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We disaggregate our revenue from contracts with customers for our Installation segment by end market and product, as we believe it best depicts how the nature, amount, timing and uncertainty of our revenue and cash flows are affected by economic factors. Revenues for the Other category are presented net of intercompany sales in the tables below. <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:DisaggregationOfRevenueTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RleHRyZWdpb246ODZmZDQ2ODlkMTgzNDMyYTlmNjAxYTQzOGQxZjQ0OTFfMjA4Mg_9e5fbf34-5cd1-44b7-a574-48c476baa749" continuedAt="icdfa418bfd154007ae56764bc2658717" escape="true">The following tables present our net revenues disaggregated by end market and product (in thousands):</ix:nonNumeric></span></div><ix:continuation id="icdfa418bfd154007ae56764bc2658717"><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:34.365%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.545%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.526%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:6.603%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.526%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.545%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.526%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:6.603%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.381%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.545%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.526%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:6.609%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="33" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Residential new construction</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i38b7d0939c754d40b80be6633db7bbf4_D20220101-20221231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfMi0xLTEtMS0xMDAwMDI_44f27990-7bce-43a6-bbf2-b804e4978103">1,980,253</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="iadb1e7802af343748059349466c2dffe_D20220101-20221231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfMi0zLTEtMS0xMDAwMDI_a6e5a9f9-a494-4822-8282-4e304b6903ca">74</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie2e6621047f347e39d52e7402fb8d506_D20210101-20211231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfMi01LTEtMS0xMDAwMDI_6e4d7302-8c2c-41c2-9b85-681dd5632e9a">1,488,674</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i16466f21bf074aa6bdb9dfd70ddd0297_D20210101-20211231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfMi03LTEtMS0xMDAwMDI_104bdc5c-af2b-41d3-a5f1-ffe1399339f8">76</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib6b83bc5b3a6460ab948f1bb1a8cbb8b_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfMi05LTEtMS0xMDAwMDI_22225b92-22e7-4c8f-a995-851aecbb8d64">1,230,955</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i9b153aa63d404cfea815107eb5ac75e6_D20200101-20201231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfMi0xMS0xLTEtMTAwMDAy_9077df60-dc9f-4b2b-86d7-9026f7349139">75</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Repair and remodel</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec7dfdafca094c3db95bd4bf49a07932_D20220101-20221231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfMy0xLTEtMS0xMDAwMDI_233718fc-8ee1-4cf8-88c4-c0974ae1ea92">151,761</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i5daa27ede578476da641f9475dee3b87_D20220101-20221231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfMy0zLTEtMS0xMDAwMDI_c61309a4-96fd-4a76-a976-902372ac189e">6</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id99f114512224c5a83108f9a2fe6363d_D20210101-20211231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfMy01LTEtMS0xMDAwMDI_674642d2-f73b-4aa9-bc6b-db0d6a175ae8">121,594</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i315c96619d474657ba97e7ee8029d62c_D20210101-20211231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfMy03LTEtMS0xMDAwMDI_2eb12848-b62d-4ea2-ac76-394fee928d99">6</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i631438c6f7e14c21b55fb772328773fa_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfMy05LTEtMS0xMDAwMDI_4e860683-42f4-4ae5-b28a-ef421fce0beb">106,486</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ifc7d9bf487234961aa107f17881d18f9_D20200101-20201231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfMy0xMS0xLTEtMTAwMDAy_81703d73-df2f-4338-8d57-8b5356df8f90">6</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Commercial</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i42851b36db8a48a592a794c5761827cf_D20220101-20221231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNC0xLTEtMS0xMDAwMDI_f9cc2c34-8c28-4d90-a6d8-6b11cffbf495">381,543</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i26d5aef9667648568af196e8591e4691_D20220101-20221231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNC0zLTEtMS0xMDAwMDI_a5f136b5-e0da-4bc8-9c32-96e931cbdf19">14</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibc157f1ceb8c4ee3ab03127e0eaf33d1_D20210101-20211231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNC01LTEtMS0xMDAwMDI_04874292-e551-4fdc-b965-d4baab0dae10">331,275</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i42d681ceeb5247058153ca9683ae758e_D20210101-20211231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNC03LTEtMS0xMDAwMDI_7a1c1240-2b3d-42ab-af7e-522cbc470c27">17</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib6538b6b192c4428bd408a1ff5fdd0b0_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNC05LTEtMS0xMDAwMDI_ebe10e81-c603-42b6-a1c6-1bd0be6b9d6c">298,920</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="idf631fca7b484f4dad2d1d1eac09fe71_D20200101-20201231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNC0xMS0xLTEtMTAwMDAy_88906a48-1b1a-44ac-801d-29bea3665169">18</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net revenue, Installation</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2dcec416818c48969db1a73c9648ef1f_D20220101-20221231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNS0xLTEtMS0xMDAwMDI_ae240102-c588-448e-9c3c-514b91d9ed4e">2,513,557</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i8b010fa35ae74bc89d55a0084fd68f10_D20220101-20221231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNS0zLTEtMS0xMDAwMDI_f1c67770-98d8-418b-9728-4d949be68c68">94</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iae38b25c26eb4db4b17c45442076a1b1_D20210101-20211231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNS01LTEtMS0xMDAwMDI_6a9ba8aa-9922-4386-9bca-290f06b63312">1,941,543</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i27b503aaebe24456ae400a653d2c4b49_D20210101-20211231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNS03LTEtMS0xMDAwMDI_447775c2-9d2a-4f6e-b537-711298d6a728">99</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i811d106b47bb480db96b87daa9a67986_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNS05LTEtMS0xMDAwMDI_a9134168-58e0-46af-9fe0-31d767e65822">1,636,361</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="iec5610518ace48b2ad4837afd8e5a92f_D20200101-20201231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNS0xMS0xLTEtMTAwMDAy_357da440-c450-4e62-9c3a-969dfef3ba72">99</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2077ad7500b6435b9595c4f5c24e513c_D20220101-20221231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNi0xLTEtMS0xMDI2NjQ_3bc1f4fc-28e3-4a18-aae3-a8b401490fc7">156,287</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i24d2df75193d4762b56086bf5022fe89_D20220101-20221231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNi0zLTEtMS0xMDEyNzM_4e3f31ee-8f90-4629-9937-70233b0d1ef5">6</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0685147c358f4206bdec20c4809180fa_D20210101-20211231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNi01LTEtMS0xMDI2NjQ_53b578e7-0ced-43c4-9104-50ffba31e42e">27,107</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ic887923852d94537a7a1c20e3622dda4_D20210101-20211231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNi03LTEtMS0xMDEyNzM_4084a2a9-fc7d-4280-91a6-1959ce4ce570">1</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i540141988e7242719e133d5431fc5bb5_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNi05LTEtMS0xMDI2NjQ_5fa222cc-d347-4959-8793-d514b50932ab">16,864</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i89ee79f637414a849b44e06dfbe18717_D20200101-20201231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNi0xMS0xLTEtMTAxMzAz_b28db70e-9989-4062-ba78-b6d68f7b79a2">1</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net revenue, as reported</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNy0xLTEtMS0xMDI2Njc_4025c990-6f69-4b0f-9f7a-3a86f46858c3">2,669,844</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i19c676a390874ae4a24140482758dc15_D20220101-20221231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNy0zLTEtMS0xMDEyNzM_930e593d-8b8a-48ce-9b57-9aa00cea39ba">100</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNy01LTEtMS0xMDI2Njc_6234b71d-3267-44eb-9470-f4483725b531">1,968,650</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i5e211949b1a84d18bc32aed42b26a5ea_D20210101-20211231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNy03LTEtMS0xMDEyNzM_3f4d4efc-6cd3-4d18-ac74-4c9f0d8443f0">100</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNy05LTEtMS0xMDI2Njc_dc4d6752-f366-4189-9d32-375fad155dd9">1,653,225</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ic087b4978606431f8e0c7a5794915904_D20200101-20201231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNy0xMS0xLTEtMTAxMzAz_6861254c-f617-4b69-aaa0-b68ebf865f51">100</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-top:5pt"><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:34.864%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.619%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:6.356%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.619%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:6.356%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.619%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:6.363%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="33" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Insulation</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3002f2ff2c6749afbf88a83ed53b632b_D20220101-20221231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMi0xLTEtMS0xMDAwMDI_a4e07d8c-62c3-480b-8d8f-9ca361ac1a94">1,611,037</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i831b540d2f8e47f889a534adfa41a137_D20220101-20221231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMi0zLTEtMS0xMDAwMDI_62d93fb6-2d39-40b3-a4de-cc6b82e11095">61</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7f0f9c9c1cb148bc8ffc9b9c4d1cb3ae_D20210101-20211231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMi01LTEtMS0xMDAwMDI_2f648f52-8802-41ab-9cd9-56bc8072f098">1,235,583</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ia6d99bdfef2e4afe81b42420edbdb4ad_D20210101-20211231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMi03LTEtMS0xMDAwMDI_1ac5bdc0-a543-4529-bc34-2f6ef9633d2d">63</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if0f0009cb4634f89adb4be8b61570156_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMi05LTEtMS0xMDAwMDI_bd03c9d5-fa9e-4a6a-85a2-177ffb9c4712">1,041,453</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i00115601cc8c4042bd43ab8f01b73bb6_D20200101-20201231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMi0xMS0xLTEtMTAwMDAy_e28a9218-f42d-48c4-81a0-978cb1f08c6f">63</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Shower doors, shelving and mirrors</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifb10bd8b8b764e0595f8e0ce3d7594fe_D20220101-20221231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMy0xLTEtMS0xMDAwMDI_5d4cb3d0-8fa3-4b28-a9b8-a078b025ff09">172,979</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i721e4cbc587c48298ba896443a7d2a34_D20220101-20221231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMy0zLTEtMS0xMDAwMDI_2b1a9e9f-c330-4837-ab52-8fd0d21eccdb">7</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i33adb71f8ff94ca0a3af98c2736a7f6b_D20210101-20211231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMy01LTEtMS0xMDAwMDI_9308f3ea-f36f-44e2-aaf7-ceea6c7abaa4">138,797</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i0ac77e101efc491c8cb0cad3a11c7504_D20210101-20211231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMy03LTEtMS0xMDAwMDI_d4812eb8-0b1b-457e-82cc-771e1d23f6cd">7</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="idebff648b7b445a69becf52762761086_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMy05LTEtMS0xMDAwMDI_94648048-4cb8-4f2c-ad85-93adc9c87d89">117,131</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i362583cc4e704d399a6f6a1f64e23000_D20200101-20201231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMy0xMS0xLTEtMTAwMDAy_6f354f32-9f0e-49c3-9a07-c547c5c9bd7e">7</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Garage doors</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iac222aed281f4d4fb765d77df79bd6f8_D20220101-20221231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNS0xLTEtMS0xMDAwMDI_4580098a-a192-4470-9657-eea6c322dcae">168,800</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i8fa8b822eaf546ee8193ae6d06195bdc_D20220101-20221231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNS0zLTEtMS0xMDAwMDI_e920b86c-7a1c-4868-ae9d-926c34e129ce">6</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if0f0a117014f46709ebd632e068c8545_D20210101-20211231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNS01LTEtMS0xMDAwMDI_66e21f2e-8124-4bc4-8757-707a2246e100">108,675</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="idd9694b536cf4359b63849ececc1051a_D20210101-20211231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNS03LTEtMS0xMDAwMDI_a010354d-db6e-4785-87da-9d23b6df99b3">6</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5afae2b77b494812a7c281cfa743c50b_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNS05LTEtMS0xMDAwMDI_559bb89a-8791-4e74-9607-35de4d23160f">93,516</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ia6d0f6ced8d048a585748a46b9036043_D20200101-20201231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNS0xMS0xLTEtMTAwMDAy_7909dcf5-b1c7-4e4e-ab84-3993071d70a0">6</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Waterproofing</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4af9336cf8644af4a2a54d63f458febd_D20220101-20221231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNS0xLTEtMS0xMDg4MDg_451be8ad-30a6-4568-af98-f30720b34588">124,808</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ie68dee1b238247c8bcda473545d08d3c_D20220101-20221231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNS0zLTEtMS0xMDg4MDg_f069a6b5-96f3-4ba9-8ac2-e23c19c8aec8">5</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0b02a0e6e9304460bfa26721db27311e_D20210101-20211231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNS01LTEtMS0xMDg4MDg_7ded8e71-48cf-409c-b369-4a99bd6424e0">130,924</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ic796520033134acfbb5cc92697ab0940_D20210101-20211231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNS03LTEtMS0xMDg4MDg_a74a9364-f739-4a03-a462-fe0e1ac8b6be">6</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia5f935417e794e2687aa7772fa649538_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNS05LTEtMS0xMTIzODU_b1fe47c7-48d5-4526-a162-6bb1bf6bb9be">122,962</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="iac456e4d85334d1fa785dc56bb25d8ef_D20200101-20201231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNS0xMS0xLTEtMTEyMzg1_5302ec8a-6375-4f42-9e8d-c4f1b03d4dc0">7</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Rain gutters</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifbd2bcfa5cfd4b1791de98dd0dd0434c_D20220101-20221231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNi0xLTEtMS0xMDAwMDI_b6432b83-5344-4d3d-87b0-00458eea1886">114,022</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i0cad56f764494289bf4f2c006ba73045_D20220101-20221231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNi0zLTEtMS0xMDAwMDI_45a4b678-9d29-4e30-a828-a3fe72712d7c">4</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i20ba381216004a9ab923d1069a5dfb1c_D20210101-20211231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNi01LTEtMS0xMDAwMDI_0160c94c-cd3f-49b8-97d7-69eec3c81cd7">86,406</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i539cb43050d34fc192acf5628e380dda_D20210101-20211231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNi03LTEtMS0xMDAwMDI_06cd7193-ccf0-4943-9b16-a1f39a5dbdd9">4</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibbe89c0040d246b0824189e23bb7c352_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNi05LTEtMS0xMDAwMDI_383b8e00-155e-40cd-85ba-8a0d4a6fee4f">62,672</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i2e43f1472ff149b8995b7e90c7664e3a_D20200101-20201231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNi0xMS0xLTEtMTAwMDAy_cfb98eef-b456-441d-8b1a-19c5b817360b">4</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fireproofing/firestopping</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7f31d5a0f769466eb8d01b8a18e6b3ec_D20220101-20221231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNy0xLTEtMS0xMDAwMDI_1d75eab1-0975-4f83-a5c7-5a94285a3b8b">63,498</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ic6778f5307c143028eadf8e698c38873_D20220101-20221231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNy0zLTEtMS0xMDAwMDI_5269794e-edcd-47bd-be59-72ca1989ba5d">2</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i15b0e10fba8f416dab5e5dc5b6fc32b5_D20210101-20211231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNy01LTEtMS0xMDAwMDI_8630c432-f092-403e-8dc7-bd977a1395fd">59,381</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i9a158b469e8348eba5d70f3904827c6a_D20210101-20211231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNy03LTEtMS0xMDAwMDI_bb02cd44-fc44-4ef3-b012-126c9b296df4">3</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icbc083716032440bb12d8c170a33e188_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNy05LTEtMS0xMDAwMDI_4d76d544-646a-4eef-81c5-352bef9b31b1">49,648</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ie5c1bccd5ca74442b64b86677f204b31_D20200101-20201231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNy0xMS0xLTEtMTAwMDAy_ae042ab0-4020-45cd-b36d-c22686351d2b">3</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Window blinds</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2387e609defe4bfbbd48129aacba1557_D20220101-20221231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfOC0xLTEtMS0xMDAwMDI_3a709743-db55-4f3d-afe0-4b2e9f975aad">61,295</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i6574fc1beb3b4269b75d343e412a7512_D20220101-20221231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfOC0zLTEtMS0xMDAwMDI_f6fffbfe-535a-40bb-9a5e-e6419832fc86">2</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0450661597cd47d6acad7b0b043854c7_D20210101-20211231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfOC01LTEtMS0xMDAwMDI_059a7a11-c065-40ed-b144-9ac598fc8aad">50,255</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i577c77750b47425c8f33cdb1acbffaa0_D20210101-20211231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfOC03LTEtMS0xMDAwMDI_6330d854-6e13-4431-8d31-92c9f78b116e">3</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i579058115d854962852a0c0c020b848e_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfOC05LTEtMS0xMDAwMDI_293f590d-8744-4b86-af5b-b6cb8de8af76">46,984</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="iea170dfedd8342679726aaf6ee933209_D20200101-20201231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfOC0xMS0xLTEtMTAwMDAy_dbf583c5-1f1e-4b04-a346-b03dbc3690f1">3</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other building products</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i714c6a6e03a745a1960e415673ce94cc_D20220101-20221231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfOS0xLTEtMS0xMDAwMDI_fa0a5cf3-f069-4152-a242-5915ee4b3f9e">197,118</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i553fae334b394ef9b1db3a9c8f3018c3_D20220101-20221231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfOS0zLTEtMS0xMDAwMDI_55ba4712-4200-4f1f-87c5-8a53a55589f2">7</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7137fa9dac194edd89398633df6c11ee_D20210101-20211231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfOS01LTEtMS0xMDAwMDI_789ceb84-7d2b-46df-abe3-13caf9ba6b96">131,522</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ic5f159d9be6b4850bee5e384989093f6_D20210101-20211231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfOS03LTEtMS0xMDAwMDI_9879b9a1-bced-4aef-9a1d-73ea053f5c94">7</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9f4f7decae0a447485fdbda25b367517_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfOS05LTEtMS0xMDAwMDI_949d37d9-b0a6-4e7c-b81d-c73c2127ff31">101,995</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="iad72824efc0e468bbc47c1fbffa3bbdf_D20200101-20201231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfOS0xMS0xLTEtMTAwMDAy_c794a80c-8d51-44cb-ae73-fb7128f84b0d">6</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net revenues, Installation</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2d35d588ac814750960fa44ccd8924c7_D20220101-20221231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTAtMS0xLTEtMTAwMDAy_b39a2d9a-be9b-4d54-83ca-766e763c0352">2,513,557</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i640203d72028498cb58a2aada4477c30_D20220101-20221231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTAtMy0xLTEtMTAwMDAy_6c3949d5-f5d5-44c9-8d3a-f9fe0b79d172">94</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i058aee33e1ae4e7ea7c4e001acd0fe23_D20210101-20211231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTAtNS0xLTEtMTAwMDAy_b71a644d-5aee-4e2c-9aa2-5303f7ffe98e">1,941,543</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i12474e1f662f42fbbedc8f3efd6efafe_D20210101-20211231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTAtNy0xLTEtMTAwMDAy_f22dd053-2f66-48fd-ad47-da72f85ac3f5">99</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id2d41c8d41384eeeaf9ee426845b2878_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTAtOS0xLTEtMTAwMDAy_1cc478ed-80e6-4b89-878b-4bb6c9d790ff">1,636,361</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ia2a7cbed12734e45ae11bece11d00329_D20200101-20201231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTAtMTEtMS0xLTEwMDAwMg_3bd010c3-e1be-4b92-906f-e6854a86dc38">99</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i154b4f910769468197d54dd62cf18926_D20220101-20221231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTEtMS0xLTEtMTAyNjc3_8a33b412-d8e0-4598-8739-63b0591dca4f">156,287</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i3199543710734f1ab38102916fc0efa3_D20220101-20221231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTEtMy0xLTEtMTAxMzMx_355ea309-8816-491e-b79c-34d51973f68e">6</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2a0513d7c7cf474f830f5ebc3dd23679_D20210101-20211231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTEtNS0xLTEtMTAyNjc3_342c55be-27ef-49f6-88be-40bef46de81b">27,107</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="icb1e06985f2c497e9edb6973274e806d_D20210101-20211231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTEtNy0xLTEtMTAxMzMx_43eebbee-d8dd-4219-a15b-81d654d8e583">1</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7656c84a58b14f80b5f2e2b15f8f3885_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTEtOS0xLTEtMTAyNjc3_1afbbaba-327a-4e2a-b7ea-4761f0cb0ac8">16,864</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ifeafca1fab0e4768bd944624db05cf9d_D20200101-20201231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTEtMTEtMS0xLTEwMTMyMw_584a2883-cbf1-4282-942c-8b154fcdb0a5">1</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net revenue, as reported</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTItMS0xLTEtMTAyNjcy_d581e948-9c72-4afb-94db-5b77e420120a">2,669,844</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="iae4047cbe4fd44928d016f399247a6f8_D20220101-20221231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTItMy0xLTEtMTAxMzMx_a0949edd-9268-4e5f-b773-fa31627f3962">100</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTItNS0xLTEtMTAyNjcy_f3d5fb55-5386-4949-a215-20fac16124f6">1,968,650</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i36ae3d68230b48ceac0beacdffde9a61_D20210101-20211231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTItNy0xLTEtMTAxMzMx_6eef3bde-06d6-4d09-90d2-2faaa183603b">100</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTItOS0xLTEtMTAyNjcy_39ce9257-2120-46c6-a7e4-b980cc0776c3">1,653,225</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i046acb42ec684d8292fb6a29219493bf_D20200101-20201231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTItMTEtMS0xLTEwMTMyMw_c5c3a98c-8eda-4160-a230-e8e504bbeafb">100</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-top:12pt;padding-left:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">(1) </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net revenue for manufacturing operations are included in the Other category for all periods presented to conform with our change in composition of operating segments.</span></div></ix:continuation><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Contract Assets and Liabilities</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our contract assets consist of unbilled amounts typically resulting from sales under contracts when the cost-to-cost method of revenue recognition is utilized and revenue recognized, based on costs incurred, exceeds the amount billed to the customer. Our contract assets are recorded in other current assets in our Consolidated Balance Sheets. Our contract liabilities consist of customer deposits and billings in excess of revenue recognized, based on costs incurred and are included in other current liabilities in our Consolidated Balance Sheets.</span></div><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RleHRyZWdpb246ODZmZDQ2ODlkMTgzNDMyYTlmNjAxYTQzOGQxZjQ0OTFfMjA4Mw_8f12cb14-c29a-4b9f-9ae8-3cdf54fab20f" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Contract assets and liabilities related to our uncompleted contracts and customer deposits were as follows (in thousands):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:74.777%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.598%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Contract assets</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:ContractWithCustomerAssetNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOmQ2ZGQ5ODg3Nzg5MDQwMDE4MDI2MDI4OTg3MzRlNDljL3RhYmxlcmFuZ2U6ZDZkZDk4ODc3ODkwNDAwMTgwMjYwMjg5ODczNGU0OWNfMi0xLTEtMS0xMDAwMDI_a09a5987-295e-4d9b-b396-2c21a776c9f4">29,431</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:ContractWithCustomerAssetNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOmQ2ZGQ5ODg3Nzg5MDQwMDE4MDI2MDI4OTg3MzRlNDljL3RhYmxlcmFuZ2U6ZDZkZDk4ODc3ODkwNDAwMTgwMjYwMjg5ODczNGU0OWNfMi0zLTEtMS0xMDAwMDI_d350e49e-d0e9-4f04-8b7e-85a8584a9ef2">32,679</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Contract liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:ContractWithCustomerLiability" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOmQ2ZGQ5ODg3Nzg5MDQwMDE4MDI2MDI4OTg3MzRlNDljL3RhYmxlcmFuZ2U6ZDZkZDk4ODc3ODkwNDAwMTgwMjYwMjg5ODczNGU0OWNfMy0xLTEtMS0xMDAwMDI_b5981de4-1632-4bd4-8670-a9e45ce9ff51">18,884</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:ContractWithCustomerLiability" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOmQ2ZGQ5ODg3Nzg5MDQwMDE4MDI2MDI4OTg3MzRlNDljL3RhYmxlcmFuZ2U6ZDZkZDk4ODc3ODkwNDAwMTgwMjYwMjg5ODczNGU0OWNfMy0zLTEtMS0xMDAwMDI_2a531a9a-44c1-447f-9cbb-d92d31fc2ce5">14,153</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">62</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:63pt;width:100%"><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div></div><ix:continuation id="i46b5e74286244775af20897e641e1610"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="ibp:CostsAndEstimatedEarningsOnUncompletedContractsTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RleHRyZWdpb246ODZmZDQ2ODlkMTgzNDMyYTlmNjAxYTQzOGQxZjQ0OTFfMjA4NA_997e2c29-5996-4c31-a06e-5950347c3193" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Uncompleted contracts were as follows (in thousands):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:74.777%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.598%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Costs incurred on uncompleted contracts</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="ibp:CostsIncurredOnUncompletedContracts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU3YWZjNjQzYWE0ODRiYzY4NjMxMmVkZmU3NjgxYWNhL3RhYmxlcmFuZ2U6NTdhZmM2NDNhYTQ4NGJjNjg2MzEyZWRmZTc2ODFhY2FfMi0xLTEtMS0xMDAwMDI_9a249605-1898-45a7-83ee-86d7a24951f2">273,788</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="ibp:CostsIncurredOnUncompletedContracts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU3YWZjNjQzYWE0ODRiYzY4NjMxMmVkZmU3NjgxYWNhL3RhYmxlcmFuZ2U6NTdhZmM2NDNhYTQ4NGJjNjg2MzEyZWRmZTc2ODFhY2FfMi0zLTEtMS0xMDAwMDI_87c46786-0435-429f-8e61-84fe011d2db5">206,050</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Estimated earnings</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="ibp:EstimatedEarningsOnLongTermContracts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU3YWZjNjQzYWE0ODRiYzY4NjMxMmVkZmU3NjgxYWNhL3RhYmxlcmFuZ2U6NTdhZmM2NDNhYTQ4NGJjNjg2MzEyZWRmZTc2ODFhY2FfMy0xLTEtMS0xMDAwMDI_b60d4395-c5c6-4e5c-b7bd-7ea13bf7e7ee">114,781</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="ibp:EstimatedEarningsOnLongTermContracts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU3YWZjNjQzYWE0ODRiYzY4NjMxMmVkZmU3NjgxYWNhL3RhYmxlcmFuZ2U6NTdhZmM2NDNhYTQ4NGJjNjg2MzEyZWRmZTc2ODFhY2FfMy0zLTEtMS0xMDAwMDI_60fd9e4c-ff3b-4451-9c70-e6e7b9187b32">106,163</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:ReceivablesLongTermContractsOrPrograms" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU3YWZjNjQzYWE0ODRiYzY4NjMxMmVkZmU3NjgxYWNhL3RhYmxlcmFuZ2U6NTdhZmM2NDNhYTQ4NGJjNjg2MzEyZWRmZTc2ODFhY2FfNC0xLTEtMS0xMDAwMDI_21841b4e-0aa1-4651-92b5-080c3f85cea5">388,569</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:ReceivablesLongTermContractsOrPrograms" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU3YWZjNjQzYWE0ODRiYzY4NjMxMmVkZmU3NjgxYWNhL3RhYmxlcmFuZ2U6NTdhZmM2NDNhYTQ4NGJjNjg2MzEyZWRmZTc2ODFhY2FfNC0zLTEtMS0xMDAwMDI_88c19cdf-99b2-4ab2-b44b-90b4c004813f">312,213</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: Billings to date</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:BilledContractReceivables" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU3YWZjNjQzYWE0ODRiYzY4NjMxMmVkZmU3NjgxYWNhL3RhYmxlcmFuZ2U6NTdhZmM2NDNhYTQ4NGJjNjg2MzEyZWRmZTc2ODFhY2FfNS0xLTEtMS0xMDAwMDI_a94a2b0f-3922-4f98-87fb-1d22ff32f800">368,009</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:BilledContractReceivables" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU3YWZjNjQzYWE0ODRiYzY4NjMxMmVkZmU3NjgxYWNhL3RhYmxlcmFuZ2U6NTdhZmM2NDNhYTQ4NGJjNjg2MzEyZWRmZTc2ODFhY2FfNS0zLTEtMS0xMDAwMDI_b580135f-85f3-4781-81e0-837d5846b374">285,978</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net under billings</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="ibp:CostAndEstimatedEarningsUnderOverBillingsNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU3YWZjNjQzYWE0ODRiYzY4NjMxMmVkZmU3NjgxYWNhL3RhYmxlcmFuZ2U6NTdhZmM2NDNhYTQ4NGJjNjg2MzEyZWRmZTc2ODFhY2FfNi0xLTEtMS0xMDAwMDI_144c9cf6-9d13-4fde-9b43-67cc809989c7">20,560</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="ibp:CostAndEstimatedEarningsUnderOverBillingsNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU3YWZjNjQzYWE0ODRiYzY4NjMxMmVkZmU3NjgxYWNhL3RhYmxlcmFuZ2U6NTdhZmM2NDNhYTQ4NGJjNjg2MzEyZWRmZTc2ODFhY2FfNi0zLTEtMS0xMDAwMDI_b2c8098f-9049-4b9d-bd0d-820150299265">26,235</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:CostsInExcessOfBillingsAndBillingsInExcessOfCostsTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RleHRyZWdpb246ODZmZDQ2ODlkMTgzNDMyYTlmNjAxYTQzOGQxZjQ0OTFfMjA4NQ_4c47ff5e-e46d-456e-8331-3032bc105bf5" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net under billings were as follows (in thousands):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:74.777%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.598%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Costs and estimated earnings in excess of billings on uncompleted contracts (contract assets)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="ibp:CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOmJhNTg2ZDk4ZjZjOTQ3ZDQ5YjZkMDcwMGI5Y2I0ODY1L3RhYmxlcmFuZ2U6YmE1ODZkOThmNmM5NDdkNDliNmQwNzAwYjljYjQ4NjVfMi0xLTEtMS0xMDAwMDI_9fb3ad69-3178-4774-adb9-d3f4f6f543af">29,431</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="ibp:CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOmJhNTg2ZDk4ZjZjOTQ3ZDQ5YjZkMDcwMGI5Y2I0ODY1L3RhYmxlcmFuZ2U6YmE1ODZkOThmNmM5NDdkNDliNmQwNzAwYjljYjQ4NjVfMi0zLTEtMS0xMDAwMDI_2b07bb53-d849-4fd2-8baa-e22147844787">32,679</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Billings in excess of costs and estimated earnings on uncompleted contracts (contract liabilities)</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="ibp:BillingsInExcessOfCostOnUncompletedContracts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOmJhNTg2ZDk4ZjZjOTQ3ZDQ5YjZkMDcwMGI5Y2I0ODY1L3RhYmxlcmFuZ2U6YmE1ODZkOThmNmM5NDdkNDliNmQwNzAwYjljYjQ4NjVfMy0xLTEtMS0xMDAwMDI_00f95ff7-82e7-4455-a135-5e85c4e21ebd">8,871</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="ibp:BillingsInExcessOfCostOnUncompletedContracts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOmJhNTg2ZDk4ZjZjOTQ3ZDQ5YjZkMDcwMGI5Y2I0ODY1L3RhYmxlcmFuZ2U6YmE1ODZkOThmNmM5NDdkNDliNmQwNzAwYjljYjQ4NjVfMy0zLTEtMS0xMDAwMDI_b68d1791-d1bb-4663-9d28-349ba060c72b">6,444</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net under billings</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="ibp:CostAndEstimatedEarningsUnderOverBillingsNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOmJhNTg2ZDk4ZjZjOTQ3ZDQ5YjZkMDcwMGI5Y2I0ODY1L3RhYmxlcmFuZ2U6YmE1ODZkOThmNmM5NDdkNDliNmQwNzAwYjljYjQ4NjVfNC0xLTEtMS0xMDAwMDI_d7dc1605-f9fe-4577-a15b-8f07f905571a">20,560</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="ibp:CostAndEstimatedEarningsUnderOverBillingsNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOmJhNTg2ZDk4ZjZjOTQ3ZDQ5YjZkMDcwMGI5Y2I0ODY1L3RhYmxlcmFuZ2U6YmE1ODZkOThmNmM5NDdkNDliNmQwNzAwYjljYjQ4NjVfNC0zLTEtMS0xMDAwMDI_800c1c95-a19e-4791-957d-4c65bf11996c">26,235</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The difference between contract assets and contract liabilities as of December&#160;31, 2022 compared to December&#160;31, 2021 is primarily the result of timing differences between our performance of obligations under contracts and customer payments and billings. During the year ended December&#160;31, 2022, we recognized $<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-5" name="us-gaap:ContractWithCustomerLiabilityRevenueRecognized" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RleHRyZWdpb246ODZmZDQ2ODlkMTgzNDMyYTlmNjAxYTQzOGQxZjQ0OTFfMTQ0OA_cfd02d27-82b4-4ccf-b63f-ad9722cbe9ec">13.7</ix:nonFraction> million of revenue that was included in the contract liability balance at December&#160;31, 2021. We did <ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="INF" name="us-gaap:CapitalizedContractCostImpairmentLoss" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RleHRyZWdpb246ODZmZDQ2ODlkMTgzNDMyYTlmNjAxYTQzOGQxZjQ0OTFfMTUyOA_6facb4f7-4731-4639-b287-8568a60d2e35"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="INF" name="us-gaap:CapitalizedContractCostImpairmentLoss" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RleHRyZWdpb246ODZmZDQ2ODlkMTgzNDMyYTlmNjAxYTQzOGQxZjQ0OTFfMTUyOA_fa9efdc0-4599-4a5a-bc48-edec5dddc7e2">no</ix:nonFraction></ix:nonFraction>t recognize any impairment losses on our receivables and contract assets during the years ended December&#160;31, 2022 and 2021.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Remaining performance obligations represent the transaction price of contracts for which work has not been performed and excludes unexercised contract options and potential modifications. As of December&#160;31, 2022, the aggregate amount of the transaction price allocated to remaining uncompleted contracts was $<ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-5" name="us-gaap:RevenueRemainingPerformanceObligation" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RleHRyZWdpb246ODZmZDQ2ODlkMTgzNDMyYTlmNjAxYTQzOGQxZjQ0OTFfMTkzMQ_816b78b0-1f2c-4d83-9ea8-2afb5e135f6f">162.3</ix:nonFraction> million. We expect to satisfy remaining performance obligations and recognize revenue on substantially all of these uncompleted contracts over the next <ix:nonNumeric contextRef="ib30aa65e28784187b4011d9ec85050da_I20221231" name="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" format="ixt-sec:durmonth" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RleHRyZWdpb246ODZmZDQ2ODlkMTgzNDMyYTlmNjAxYTQzOGQxZjQ0OTFfMjA3OA_f93f8a1e-e54b-44eb-a8a0-a39ff4555d12">18</ix:nonNumeric> months.</span></div></ix:continuation><div><span><br/></span></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_94"></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 4 &#8211; <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:AllowanceForCreditLossesTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RleHRyZWdpb246ZmFmNzY5YzZmZTc0NDE4OGJhYWM5MjhjM2EwZjU4N2VfMTI3Mw_a118dc12-9e3f-4ece-b4e0-dcfd8f769234" continuedAt="i1fe93abad70b4cb3910b19afa9d3283d" escape="true">CREDIT LOSSES</ix:nonNumeric></span></div><ix:continuation id="i1fe93abad70b4cb3910b19afa9d3283d" continuedAt="idfed26e5a4364cec89d7351a60626ec2"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We account for credit losses under ASC 326 using an expected credit loss impairment model for financial instruments, including trade receivables, retainage receivables and contract assets (unbilled receivables). We consider information such as historical experience, present economic conditions and other relevant factors management considers relevant to estimate expected credit losses. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Upon adoption of ASC 326 on January 1, 2020 under the modified retrospective approach, we recorded a cumulative effect adjustment to retained earnings of $<ix:nonFraction unitRef="usd" contextRef="i3271f5b5175c4fc9a105b687f91568d7_I20200101" decimals="-5" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RleHRyZWdpb246ZmFmNzY5YzZmZTc0NDE4OGJhYWM5MjhjM2EwZjU4N2VfOTM1_a13269dc-8059-47f5-8385-17177d1a1486">1.2</ix:nonFraction> million, net of $<ix:nonFraction unitRef="usd" contextRef="id8d95aa0fd3544948b8bd65b4bc2fce9_I20200101" decimals="-5" name="us-gaap:DeferredIncomeTaxAssetsNet" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RleHRyZWdpb246ZmFmNzY5YzZmZTc0NDE4OGJhYWM5MjhjM2EwZjU4N2VfOTQ2_6d8161d0-3480-4686-91d1-36cc367efb84">0.4</ix:nonFraction> million of income taxes, on the opening consolidated balance sheet as of January 1, 2020. The adoption of the credit loss standard had no impact to cash from or used in operating, financing or investing activities on our consolidated cash flow statements.</span></div></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">63</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:63pt;width:100%"><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div></div><ix:continuation id="idfed26e5a4364cec89d7351a60626ec2"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RleHRyZWdpb246ZmFmNzY5YzZmZTc0NDE4OGJhYWM5MjhjM2EwZjU4N2VfMTI3NA_a6f976fd-f924-4a28-a451-0378a73e3e44" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Changes in our allowance for credit losses were as follows (in thousands):</span></div><div><span><br/></span></div><div style="text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:67.690%"><tr><td style="width:1.0%"></td><td style="width:83.565%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.235%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">January 1, 2020</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iff4d4f6f690d4bce8ad0aafed6fdedd3_I20191231" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RhYmxlOmIzM2UyOWEwMDQxNDQ4MjhhNDMxYzA2Y2VkOTY3YjY0L3RhYmxlcmFuZ2U6YjMzZTI5YTAwNDE0NDgyOGE0MzFjMDZjZWQ5NjdiNjRfMC0xLTEtMS0xMDAwMDI_aa4f6569-85df-4ae8-a662-be94a7961cf0">6,878</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cumulative effect of change in accounting principle</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i13c43fa46b9b49a2ac465da3f32b17f3_I20191231" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RhYmxlOmIzM2UyOWEwMDQxNDQ4MjhhNDMxYzA2Y2VkOTY3YjY0L3RhYmxlcmFuZ2U6YjMzZTI5YTAwNDE0NDgyOGE0MzFjMDZjZWQ5NjdiNjRfMS0xLTEtMS0xMDAwMDI_854dd15d-cd2c-48f0-b22a-ae2bd8499745">1,600</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current period provision</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:ProvisionForDoubtfulAccounts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RhYmxlOmIzM2UyOWEwMDQxNDQ4MjhhNDMxYzA2Y2VkOTY3YjY0L3RhYmxlcmFuZ2U6YjMzZTI5YTAwNDE0NDgyOGE0MzFjMDZjZWQ5NjdiNjRfMi0xLTEtMS0xMDAwMDI_a67c48f7-c63f-454f-a5a5-62a604c1afef">4,444</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Recoveries collected and additions</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RhYmxlOmIzM2UyOWEwMDQxNDQ4MjhhNDMxYzA2Y2VkOTY3YjY0L3RhYmxlcmFuZ2U6YjMzZTI5YTAwNDE0NDgyOGE0MzFjMDZjZWQ5NjdiNjRfMy0xLTEtMS0xMDAwMDI_a76f7945-c900-4026-83b6-addc5b06e181">503</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amounts written off</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RhYmxlOmIzM2UyOWEwMDQxNDQ4MjhhNDMxYzA2Y2VkOTY3YjY0L3RhYmxlcmFuZ2U6YjMzZTI5YTAwNDE0NDgyOGE0MzFjMDZjZWQ5NjdiNjRfNC0xLTEtMS0xMDAwMDI_cfcfd35a-eb93-4017-b6a3-3358b5967887">4,636</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2020</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i61f3c1563a76427b8e6b9d432aa44d9a_I20201231" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RhYmxlOmIzM2UyOWEwMDQxNDQ4MjhhNDMxYzA2Y2VkOTY3YjY0L3RhYmxlcmFuZ2U6YjMzZTI5YTAwNDE0NDgyOGE0MzFjMDZjZWQ5NjdiNjRfNS0xLTEtMS0xMDAwMDI_18f3359a-1bfc-46cc-9355-ca1b51a6582e">8,789</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current period provision</span></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:ProvisionForDoubtfulAccounts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RhYmxlOmIzM2UyOWEwMDQxNDQ4MjhhNDMxYzA2Y2VkOTY3YjY0L3RhYmxlcmFuZ2U6YjMzZTI5YTAwNDE0NDgyOGE0MzFjMDZjZWQ5NjdiNjRfNi0xLTEtMS0xMDAwMDI_df77fc30-09ff-4876-ac09-57824edb4bde">2,227</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Recoveries collected and additions</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RhYmxlOmIzM2UyOWEwMDQxNDQ4MjhhNDMxYzA2Y2VkOTY3YjY0L3RhYmxlcmFuZ2U6YjMzZTI5YTAwNDE0NDgyOGE0MzFjMDZjZWQ5NjdiNjRfNy0xLTEtMS0xMDAwMDI_3b2677a2-cf14-4cb8-941a-78506c07bf51">574</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amounts written off</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RhYmxlOmIzM2UyOWEwMDQxNDQ4MjhhNDMxYzA2Y2VkOTY3YjY0L3RhYmxlcmFuZ2U6YjMzZTI5YTAwNDE0NDgyOGE0MzFjMDZjZWQ5NjdiNjRfOC0xLTEtMS0xMDAwMDI_c70d0800-6883-4ba9-84e9-016e2a4f34d6">2,873</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2021</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RhYmxlOmIzM2UyOWEwMDQxNDQ4MjhhNDMxYzA2Y2VkOTY3YjY0L3RhYmxlcmFuZ2U6YjMzZTI5YTAwNDE0NDgyOGE0MzFjMDZjZWQ5NjdiNjRfOS0xLTEtMS0xMDAwMDI_460931be-0d38-4ca6-871d-e5270c8242cb">8,717</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current period provision</span></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:ProvisionForDoubtfulAccounts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RhYmxlOmIzM2UyOWEwMDQxNDQ4MjhhNDMxYzA2Y2VkOTY3YjY0L3RhYmxlcmFuZ2U6YjMzZTI5YTAwNDE0NDgyOGE0MzFjMDZjZWQ5NjdiNjRfMTEtMS0xLTEtMTAwMDAy_8e8d4e24-9628-469c-bd5f-d4f66d897159">4,129</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Recoveries collected and additions</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RhYmxlOmIzM2UyOWEwMDQxNDQ4MjhhNDMxYzA2Y2VkOTY3YjY0L3RhYmxlcmFuZ2U6YjMzZTI5YTAwNDE0NDgyOGE0MzFjMDZjZWQ5NjdiNjRfMTItMS0xLTEtMTAwMDAy_9e8f352a-a4d1-4c0d-97f4-cf347de37567"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RhYmxlOmIzM2UyOWEwMDQxNDQ4MjhhNDMxYzA2Y2VkOTY3YjY0L3RhYmxlcmFuZ2U6YjMzZTI5YTAwNDE0NDgyOGE0MzFjMDZjZWQ5NjdiNjRfMTItMS0xLTEtMTAwMDAy_dd790568-a1e9-4082-99dd-3a943a3d0838">334</ix:nonFraction></ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amounts written off</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RhYmxlOmIzM2UyOWEwMDQxNDQ4MjhhNDMxYzA2Y2VkOTY3YjY0L3RhYmxlcmFuZ2U6YjMzZTI5YTAwNDE0NDgyOGE0MzFjMDZjZWQ5NjdiNjRfMTMtMS0xLTEtMTAwMDAy_20f944e3-3f49-4c7b-88f9-9f0e781f03c8"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RhYmxlOmIzM2UyOWEwMDQxNDQ4MjhhNDMxYzA2Y2VkOTY3YjY0L3RhYmxlcmFuZ2U6YjMzZTI5YTAwNDE0NDgyOGE0MzFjMDZjZWQ5NjdiNjRfMTMtMS0xLTEtMTAwMDAy_b0f5a8f2-538c-4fcc-8019-e5b033abc21b">3,631</ix:nonFraction></ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2022</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RhYmxlOmIzM2UyOWEwMDQxNDQ4MjhhNDMxYzA2Y2VkOTY3YjY0L3RhYmxlcmFuZ2U6YjMzZTI5YTAwNDE0NDgyOGE0MzFjMDZjZWQ5NjdiNjRfMTQtMS0xLTEtMTAwMDAy_567c4e34-d564-4703-91f6-d02d975f2f37">9,549</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:continuation><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_97"></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 5 &#8211; <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85Ny9mcmFnOmU1Y2YyYTYzNTMzNzRiOTE4M2JiNzRlOTZkOTI5ZDllL3RleHRyZWdpb246ZTVjZjJhNjM1MzM3NGI5MTgzYmI3NGU5NmQ5MjlkOWVfMzU5_0aee6d20-6f0a-4149-ae3e-002bd88227ea" continuedAt="ia2d9b2d3805540a7bbf0e7565b08f5b2" escape="true">CASH AND CASH EQUIVALENTS</ix:nonNumeric></span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="ia2d9b2d3805540a7bbf0e7565b08f5b2">Cash and cash equivalents include highly liquid instruments with insignificant interest rate risk and original or remaining maturities of three months or less at the time of purchase. These instruments amounted to $<ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-5" name="us-gaap:MoneyMarketFundsAtCarryingValue" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85Ny9mcmFnOmU1Y2YyYTYzNTMzNzRiOTE4M2JiNzRlOTZkOTI5ZDllL3RleHRyZWdpb246ZTVjZjJhNjM1MzM3NGI5MTgzYmI3NGU5NmQ5MjlkOWVfMjU0_4bb93d70-b915-46c5-9cf9-b2ec148534e8">191.9</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-5" name="us-gaap:MoneyMarketFundsAtCarryingValue" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85Ny9mcmFnOmU1Y2YyYTYzNTMzNzRiOTE4M2JiNzRlOTZkOTI5ZDllL3RleHRyZWdpb246ZTVjZjJhNjM1MzM3NGI5MTgzYmI3NGU5NmQ5MjlkOWVfMjYx_309913e4-e65c-4156-83b4-7408f535adf3">258.1</ix:nonFraction> million as of December&#160;31, 2022 and 2021, respectively. See Note 10, Fair Value Measurements, for additional information.</ix:continuation></span></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_100"></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 6 &#8211; <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90ZXh0cmVnaW9uOmY3NWIzYzk2MGJlZTQxNzRiODg1ZjAxOGRiMWQ0MDNlXzM3OQ_21a62bad-80a7-454d-97bb-36e701958436" continuedAt="i1aae932a619e48c4ba3cc32e69dc132f" escape="true">PROPERTY AND EQUIPMENT</ix:nonNumeric></span></div><ix:continuation id="i1aae932a619e48c4ba3cc32e69dc132f"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:PropertyPlantAndEquipmentTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90ZXh0cmVnaW9uOmY3NWIzYzk2MGJlZTQxNzRiODg1ZjAxOGRiMWQ0MDNlXzM4MA_558a2e55-6154-4d2c-a5cf-1ae96797c003" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Property and equipment consisted of the following (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:76.315%"><tr><td style="width:1.0%"></td><td style="width:64.608%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.566%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.757%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.569%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Land</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iacff88296ee841948f6f8833f5d738e3_I20221231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpjYWM3YjBhZDY3NGM0NzIzODMzNDIzZTE5ZjZiOTIwMC90YWJsZXJhbmdlOmNhYzdiMGFkNjc0YzQ3MjM4MzM0MjNlMTlmNmI5MjAwXzItMS0xLTEtMTAwMDAy_f70f5ff3-e5d4-4efa-94ca-77c8b5e06058">108</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4749b30589424316bd69b23b56a606fe_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpjYWM3YjBhZDY3NGM0NzIzODMzNDIzZTE5ZjZiOTIwMC90YWJsZXJhbmdlOmNhYzdiMGFkNjc0YzQ3MjM4MzM0MjNlMTlmNmI5MjAwXzItMy0xLTEtMTAwMDAy_e0fbeb61-6001-4726-8d49-3f2c613003c5">108</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Buildings</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia0c4b431699c4f82bca0c162ff7d9a38_I20221231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpjYWM3YjBhZDY3NGM0NzIzODMzNDIzZTE5ZjZiOTIwMC90YWJsZXJhbmdlOmNhYzdiMGFkNjc0YzQ3MjM4MzM0MjNlMTlmNmI5MjAwXzMtMS0xLTEtMTAwMDAy_0e15c30c-c268-4fde-bfff-ff799526ce01">3,901</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i456d6630deea4c90975e809b465df5af_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpjYWM3YjBhZDY3NGM0NzIzODMzNDIzZTE5ZjZiOTIwMC90YWJsZXJhbmdlOmNhYzdiMGFkNjc0YzQ3MjM4MzM0MjNlMTlmNmI5MjAwXzMtMy0xLTEtMTAwMDAy_cb397e5f-c9d2-460e-8d32-d9b778e676af">3,901</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Leasehold improvements</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i33e19fcedb144007af8657125cb0236b_I20221231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpjYWM3YjBhZDY3NGM0NzIzODMzNDIzZTE5ZjZiOTIwMC90YWJsZXJhbmdlOmNhYzdiMGFkNjc0YzQ3MjM4MzM0MjNlMTlmNmI5MjAwXzQtMS0xLTEtMTAwMDAy_76a04da0-a9b3-433c-808f-2969c65a2483">12,620</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i26ccc3d3ad794632b64823eceb0d2ada_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpjYWM3YjBhZDY3NGM0NzIzODMzNDIzZTE5ZjZiOTIwMC90YWJsZXJhbmdlOmNhYzdiMGFkNjc0YzQ3MjM4MzM0MjNlMTlmNmI5MjAwXzQtMy0xLTEtMTAwMDAy_3bb00319-49b2-49cc-a1b7-5bc38eb8cf2a">10,935</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Furniture, fixtures and equipment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4679fc005b5e412a993a89dd24a90b64_I20221231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpjYWM3YjBhZDY3NGM0NzIzODMzNDIzZTE5ZjZiOTIwMC90YWJsZXJhbmdlOmNhYzdiMGFkNjc0YzQ3MjM4MzM0MjNlMTlmNmI5MjAwXzUtMS0xLTEtMTAwMDAy_7ecd0ac8-e2de-4b8e-b0c7-9b4244093ea8">74,175</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibe00fb2189aa4840b83da6f5086b247d_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpjYWM3YjBhZDY3NGM0NzIzODMzNDIzZTE5ZjZiOTIwMC90YWJsZXJhbmdlOmNhYzdiMGFkNjc0YzQ3MjM4MzM0MjNlMTlmNmI5MjAwXzUtMy0xLTEtMTAwMDAy_6a4c27f8-6854-4f6c-8e97-2956744ab173">64,556</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vehicles and equipment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifa3dd9bfe2f8438fb1c83033e00c2112_I20221231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpjYWM3YjBhZDY3NGM0NzIzODMzNDIzZTE5ZjZiOTIwMC90YWJsZXJhbmdlOmNhYzdiMGFkNjc0YzQ3MjM4MzM0MjNlMTlmNmI5MjAwXzYtMS0xLTEtMTAwMDAy_1b6484e4-436e-4789-b01e-74b9c916a60d">287,336</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2d43472522df43d295c3388a45db824c_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpjYWM3YjBhZDY3NGM0NzIzODMzNDIzZTE5ZjZiOTIwMC90YWJsZXJhbmdlOmNhYzdiMGFkNjc0YzQ3MjM4MzM0MjNlMTlmNmI5MjAwXzYtMy0xLTEtMTAwMDAy_6f046609-822e-496a-9469-1a0a05f6c67a">248,848</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpjYWM3YjBhZDY3NGM0NzIzODMzNDIzZTE5ZjZiOTIwMC90YWJsZXJhbmdlOmNhYzdiMGFkNjc0YzQ3MjM4MzM0MjNlMTlmNmI5MjAwXzctMS0xLTEtMTAwMDAy_2df3d692-63d8-4fd1-a5eb-a0359d1b6b75">378,140</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpjYWM3YjBhZDY3NGM0NzIzODMzNDIzZTE5ZjZiOTIwMC90YWJsZXJhbmdlOmNhYzdiMGFkNjc0YzQ3MjM4MzM0MjNlMTlmNmI5MjAwXzctMy0xLTEtMTAwMDAy_5b0edd61-7fb4-4c2a-9986-d27d18d84203">328,348</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: accumulated depreciation and amortization</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpjYWM3YjBhZDY3NGM0NzIzODMzNDIzZTE5ZjZiOTIwMC90YWJsZXJhbmdlOmNhYzdiMGFkNjc0YzQ3MjM4MzM0MjNlMTlmNmI5MjAwXzgtMS0xLTEtMTAwMDAy_cd3da408-8fa2-499f-b14a-814159301026">259,366</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpjYWM3YjBhZDY3NGM0NzIzODMzNDIzZTE5ZjZiOTIwMC90YWJsZXJhbmdlOmNhYzdiMGFkNjc0YzQ3MjM4MzM0MjNlMTlmNmI5MjAwXzgtMy0xLTEtMTAwMDAy_bee33351-50ce-43bc-9900-aae688fae133">222,415</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpjYWM3YjBhZDY3NGM0NzIzODMzNDIzZTE5ZjZiOTIwMC90YWJsZXJhbmdlOmNhYzdiMGFkNjc0YzQ3MjM4MzM0MjNlMTlmNmI5MjAwXzktMS0xLTEtMTAwMDAy_5f33ec98-ef5c-4c02-b142-80dd087c3936">118,774</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpjYWM3YjBhZDY3NGM0NzIzODMzNDIzZTE5ZjZiOTIwMC90YWJsZXJhbmdlOmNhYzdiMGFkNjc0YzQ3MjM4MzM0MjNlMTlmNmI5MjAwXzktMy0xLTEtMTAwMDAy_5e260ed6-ff0c-41e2-b834-7626bedffcdc">105,933</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="ibp:PropertyPlantAndEquipmentDepreciationAllocationCategoriesTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90ZXh0cmVnaW9uOmY3NWIzYzk2MGJlZTQxNzRiODg1ZjAxOGRiMWQ0MDNlXzM4MQ_56b1d164-1b60-444e-af76-807a48da3f2c" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We recorded the following depreciation and amortization expense on our property and equipment, by income statement category (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:65.058%"><tr><td style="width:1.0%"></td><td style="width:38.225%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.450%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.923%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.450%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.698%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.454%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of sales</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7a6eb5745a4144d2ab6e5aac808bcfc0_D20220101-20221231" decimals="-3" name="us-gaap:DepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpiNWViMjcwNDQ2OTU0ZGQ3OGQ5NGFjNzE2ZTUxMzZlMS90YWJsZXJhbmdlOmI1ZWIyNzA0NDY5NTRkZDc4ZDk0YWM3MTZlNTEzNmUxXzItMS0xLTEtMTAwMDAy_1bc3f6e1-5279-48c2-9cd4-1ba3040b751b">44,410</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0a4200e47afe46c5b7d789f3f7974feb_D20210101-20211231" decimals="-3" name="us-gaap:DepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpiNWViMjcwNDQ2OTU0ZGQ3OGQ5NGFjNzE2ZTUxMzZlMS90YWJsZXJhbmdlOmI1ZWIyNzA0NDY5NTRkZDc4ZDk0YWM3MTZlNTEzNmUxXzItMy0xLTEtMTAwMDAy_6c2cf0e3-5a05-4f54-b7ba-43ce250efb84">40,938</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0c7f2b33da3b468daa7598e99d5f9d12_D20200101-20201231" decimals="-3" name="us-gaap:DepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpiNWViMjcwNDQ2OTU0ZGQ3OGQ5NGFjNzE2ZTUxMzZlMS90YWJsZXJhbmdlOmI1ZWIyNzA0NDY5NTRkZDc4ZDk0YWM3MTZlNTEzNmUxXzItNS0xLTEtMTAwMDAy_74ccdcff-523f-4208-a342-1ba5a44c132f">39,011</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Administrative</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27ed6a1bdefe43098a08d48f9a6aa198_D20220101-20221231" decimals="-3" name="us-gaap:DepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpiNWViMjcwNDQ2OTU0ZGQ3OGQ5NGFjNzE2ZTUxMzZlMS90YWJsZXJhbmdlOmI1ZWIyNzA0NDY5NTRkZDc4ZDk0YWM3MTZlNTEzNmUxXzMtMS0xLTEtMTAwMDAy_4c9bd140-22ad-4c35-9855-ae8d9527f0c6">2,873</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8e9434eca1eb4912bd5cabf256b1ce98_D20210101-20211231" decimals="-3" name="us-gaap:DepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpiNWViMjcwNDQ2OTU0ZGQ3OGQ5NGFjNzE2ZTUxMzZlMS90YWJsZXJhbmdlOmI1ZWIyNzA0NDY5NTRkZDc4ZDk0YWM3MTZlNTEzNmUxXzMtMy0xLTEtMTAwMDAy_6b6a5abf-930e-46be-8b89-bc68a5628c30">2,623</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0696558d634d43589761ef303baf8924_D20200101-20201231" decimals="-3" name="us-gaap:DepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpiNWViMjcwNDQ2OTU0ZGQ3OGQ5NGFjNzE2ZTUxMzZlMS90YWJsZXJhbmdlOmI1ZWIyNzA0NDY5NTRkZDc4ZDk0YWM3MTZlNTEzNmUxXzMtNS0xLTEtMTAwMDAy_37ec4f5c-727a-47ca-9411-6e770199cace">2,328</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">64</span></div></div></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_103"></div><hr style="page-break-after:always"/><div style="min-height:63pt;width:100%"><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 7 &#8211; <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzI3MTM_65ec45d2-bc83-4bee-9da3-d3ea92a50c8a" continuedAt="i7f7c0d22cc464d28b290601870a2bd23" escape="true">GOODWILL AND INTANGIBLES</ix:nonNumeric></span></div><ix:continuation id="i7f7c0d22cc464d28b290601870a2bd23" continuedAt="i52548d8b66434002afa2a6009e50176f"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Goodwill</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In the first quarter of 2022, we changed our operating segments to align with recent changes in our business, resulting in <ix:nonFraction unitRef="reporting_unit" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="INF" name="us-gaap:NumberOfOperatingSegments" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzE2NDkyNjc0NTg2MjE_1852086f-00fc-4b8e-ac9d-a8efeb2aa6db">three</ix:nonFraction> operating segments: Installation, Manufacturing and Distribution. Our Installation operating segment remains our <ix:nonFraction unitRef="reporting_unit" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="INF" name="us-gaap:NumberOfReportingUnits" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzE2NDkyNjc0NTg2NDU_08dad7e7-fc24-48ee-8f9b-d2dc2cbc05e5">one</ix:nonFraction> reportable segment and our Manufacturing and Distribution operating segments are combined into our Other category. We also determined that our reporting units are at the operating segment level. See Note 11, Information on Segments, for additional details about our change in segment structure. Prior to this change, goodwill was combined into <ix:nonFraction unitRef="reporting_unit" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="INF" name="us-gaap:NumberOfReportingUnits" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzE2NDkyNjc0NTg2MzE_08dad7e7-fc24-48ee-8f9b-d2dc2cbc05e5">one</ix:nonFraction> reporting unit as reflected in the table below for the year ended December 31, 2021. Effective January 1, 2022, we reassigned our goodwill to each of our <ix:nonFraction unitRef="reporting_unit" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="INF" name="us-gaap:NumberOfReportingUnits" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzE2NDkyNjc0NTg2NDE_fb9606be-a0c3-468d-ad9d-e71763f8dab8">three</ix:nonFraction> reporting units using a relative fair value approach. </span></div><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:ScheduleOfGoodwillTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzI3MTQ_95b3b566-8093-460d-9ceb-2ca19ab211eb" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The change in carrying amount of goodwill by reportable segment for the year ended December&#160;31, 2021 was as follows (in thousands):</span></div><div style="margin-top:9pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:81.502%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:1.0%"></td><td style="width:16.298%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Installation</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill (gross) - January 1, 2021</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i61f3c1563a76427b8e6b9d432aa44d9a_I20201231" decimals="-3" name="us-gaap:GoodwillGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo0NzUyZDE0Y2UyMmU0OTk5YjRhMWFhMmI1NzQxMmFkMC90YWJsZXJhbmdlOjQ3NTJkMTRjZTIyZTQ5OTliNGExYWEyYjU3NDEyYWQwXzEtNS0xLTEtMTExNjY3_fc2f4fe5-3757-43e7-a3b2-ef65b9cca357">286,874</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Business combinations</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:GoodwillAcquiredDuringPeriod" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo0NzUyZDE0Y2UyMmU0OTk5YjRhMWFhMmI1NzQxMmFkMC90YWJsZXJhbmdlOjQ3NTJkMTRjZTIyZTQ5OTliNGExYWEyYjU3NDEyYWQwXzItNS0xLTEtMTExNjY3_085ec269-4f7e-44c1-8dc0-137a91378222">105,617</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other additions</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:GoodwillOtherIncreaseDecrease" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo0NzUyZDE0Y2UyMmU0OTk5YjRhMWFhMmI1NzQxMmFkMC90YWJsZXJhbmdlOjQ3NTJkMTRjZTIyZTQ5OTliNGExYWEyYjU3NDEyYWQwXzMtNS0xLTEtMTExNjY3_53f3e115-3195-486f-a309-6600803e1a1c">30</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill (gross) - December 31, 2021</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:GoodwillGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo0NzUyZDE0Y2UyMmU0OTk5YjRhMWFhMmI1NzQxMmFkMC90YWJsZXJhbmdlOjQ3NTJkMTRjZTIyZTQ5OTliNGExYWEyYjU3NDEyYWQwXzQtNS0xLTEtMTExNjY3_7cea1cac-bdd4-4c76-87c3-ffe7275ccc00">392,521</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accumulated impairment losses</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:GoodwillImpairedAccumulatedImpairmentLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo0NzUyZDE0Y2UyMmU0OTk5YjRhMWFhMmI1NzQxMmFkMC90YWJsZXJhbmdlOjQ3NTJkMTRjZTIyZTQ5OTliNGExYWEyYjU3NDEyYWQwXzUtNS0xLTEtMTExNjY3_588ee600-b81f-4798-a91c-6dc8e28baf79">70,004</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill (net) - December 31, 2021</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo0NzUyZDE0Y2UyMmU0OTk5YjRhMWFhMmI1NzQxMmFkMC90YWJsZXJhbmdlOjQ3NTJkMTRjZTIyZTQ5OTliNGExYWEyYjU3NDEyYWQwXzYtNS0xLTEtMTExNjY3_e47b8c71-c13d-4e0b-bf8b-8eb314b117d2">322,517</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The change in carrying amount of goodwill by reportable segment after the assignment of goodwill as noted above for the year ended December&#160;31, 2022 was as follows (in thousands):</span></div><div style="margin-top:9pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:59.572%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.619%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.619%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.622%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Installation</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Consolidated</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill (gross) - January 1, 2022, after change in reporting units</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia6ae7ad5a2e645a4b11ebedc5bb8e766_I20211231" decimals="-3" name="us-gaap:GoodwillGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzEtMS0xLTEtMTEwNjQ5_6bb5b9bb-6977-4f94-a5cd-042e4c1cf1f5">331,782</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibadf50e7a18740488f76ed7c7c099490_I20211231" decimals="-3" name="us-gaap:GoodwillGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzEtMy0xLTEtMTEwNjQ5_639f6eab-59f5-48d9-b682-56d268969623">60,739</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:GoodwillGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzEtNS0xLTEtMTEwNjQ5_f01ae406-f1cb-4527-9e5d-118d95a3654e">392,521</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Business combinations</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ee60c6c46b64377a7d9ef1866ddf1f4_D20220101-20221231" decimals="-3" name="us-gaap:GoodwillAcquiredDuringPeriod" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzItMS0xLTEtMTEwNjQ5_2f44ba0d-66c0-4858-ba34-438ed3515933"><ix:nonFraction unitRef="usd" contextRef="i7ee60c6c46b64377a7d9ef1866ddf1f4_D20220101-20221231" decimals="-3" name="us-gaap:GoodwillAcquiredDuringPeriod" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzItMS0xLTEtMTEwNjQ5_3093940e-5cca-4a52-98b9-bf38429033b3">21,700</ix:nonFraction></ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i57361177467942dca715f3205ca58976_D20220101-20221231" decimals="-3" name="us-gaap:GoodwillAcquiredDuringPeriod" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzItMy0xLTEtMTEwNjQ5_3b6e2b00-2bc9-4ea1-8dab-e331719145e7">27,594</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:GoodwillAcquiredDuringPeriod" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzItNS0xLTEtMTEwNjQ5_13598415-2572-41df-a6a6-48b8e5191794">49,294</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other additions</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ee60c6c46b64377a7d9ef1866ddf1f4_D20220101-20221231" decimals="-3" name="us-gaap:GoodwillOtherIncreaseDecrease" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzMtMS0xLTEtMTEwNjQ5_1138a813-2faa-4284-8cef-d7edaab081ff"><ix:nonFraction unitRef="usd" contextRef="i7ee60c6c46b64377a7d9ef1866ddf1f4_D20220101-20221231" decimals="-3" name="us-gaap:GoodwillOtherIncreaseDecrease" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzMtMS0xLTEtMTEwNjQ5_45fbf020-54b0-45ca-b1c4-62cf562a7cfa">1,744</ix:nonFraction></ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:GoodwillOtherIncreaseDecrease" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzMtNS0xLTEtMTEwNjQ5_f4a25ada-df1c-427f-b8f9-0640accbe439">1,744</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill (gross) - December 31, 2022</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3aff0b2379704afda9dd0958ab04b016_I20221231" decimals="-3" name="us-gaap:GoodwillGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzQtMS0xLTEtMTEwNjQ5_3a9526d5-df44-4f50-81ba-d1e91483e9fe">355,226</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6d1889ce16a04267a11cde2000035599_I20221231" decimals="-3" name="us-gaap:GoodwillGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzQtMy0xLTEtMTEwNjQ5_51c915ae-7538-44de-a589-fcbbdf37f518">88,333</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:GoodwillGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzQtNS0xLTEtMTEwNjQ5_d0869cea-ce12-4eee-ba77-d05833926b42">443,559</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accumulated impairment losses </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i3aff0b2379704afda9dd0958ab04b016_I20221231" decimals="-3" name="us-gaap:GoodwillImpairedAccumulatedImpairmentLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzUtMS0xLTEtMTEwNjQ5_2ebdf1ce-bb20-4e14-a9f1-2e78e0302acd">70,004</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:GoodwillImpairedAccumulatedImpairmentLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzUtNS0xLTEtMTEwNjQ5_24563a2b-41b3-4d30-8ab4-00411d2a3467">70,004</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill (net) - December 31, 2022</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3aff0b2379704afda9dd0958ab04b016_I20221231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzYtMS0xLTEtMTEwNjQ5_87a05444-8227-4829-aee7-61733eb0ca50">285,222</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6d1889ce16a04267a11cde2000035599_I20221231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzYtMy0xLTEtMTEwNjQ5_17360f91-f5e7-4902-b078-5e7c1aaceb2c">88,333</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzYtNS0xLTEtMTEwNjQ5_3a39bade-e822-428c-9f03-25e6919c943a">373,555</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Other additions for the Installation segment included in the above table for the year ended December&#160;31, 2022 include an adjustment to a prior year acquisition still within its measurement period of approximately $<ix:nonFraction unitRef="usd" contextRef="i063187198d8a4662a8e28042ad648f83_D20220101-20221231" decimals="-5" name="us-gaap:GoodwillPurchaseAccountingAdjustments" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzEwOTk1MTE2MzcwMjk_b08385f5-b7ad-4f68-b53e-7a70e4ed1fed">1.6</ix:nonFraction> million. We also made other minor adjustments for the allocation of certain acquisitions still under measurement which are included as other additions in the above table for the Installation segment for the years ended December&#160;31, 2022 and 2021. For additional information regarding changes to goodwill resulting from acquisitions, see Note 18, Business Combinations.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On October 1, 2022, our measurement date, we tested goodwill for impairment by reporting unit. We have the option to either assess goodwill for impairment by performing a qualitative assessment to determine whether it is more likely than not that the fair value is less than its carrying value, or to bypass the qualitative evaluation and perform a quantitative assessment. For the Installation and Manufacturing reporting units, we performed a one-step qualitative assessment in conformity with generally accepted accounting principles and determined that no impairment of goodwill was required. We considered the impacts of the COVID-19 pandemic in our analysis and concluded there were no associated impairment indicators. We performed a quantitative assessment for our Distribution reporting unit. This assessment determined the fair value of the distribution reporting unit by weighting a discounted cash flow model and a market-related model in consultation with an external valuation expert. Upon comparison of the calculated fair value to the carrying value of the reporting unit, it was determined <ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-5" name="us-gaap:GoodwillImpairmentLoss" format="ixt:fixed-zero" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzE1Njk_ea5ccde9-79c9-4c71-8436-d8cd341fe963">no</ix:nonFraction> impairment of goodwill needed to be recognized for the year ended December&#160;31, 2022. In addition, <ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="INF" name="us-gaap:GoodwillImpairmentLoss" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzE2NDY_75c6971d-aaff-4cd2-bbaf-455339da6bee"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="INF" name="us-gaap:GoodwillImpairmentLoss" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzE2NDY_b6c3e6a1-8913-4c95-9b18-b0c5f61bdb65">no</ix:nonFraction></ix:nonFraction> impairment of goodwill was recognized for the years ended December&#160;31, 2021 or 2020. Accumulated impairment losses included within the above table were incurred over multiple periods, with the latest impairment charge being recorded during the year ended December 31, 2010. These accumulated losses were assigned to our Installation reporting unit.</span></div></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">65</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:63pt;width:100%"><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div></div><ix:continuation id="i52548d8b66434002afa2a6009e50176f"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Intangibles, net</span></div><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzI3MTU_d0edc4ba-16f3-4d1a-855e-cbb92c3da7b2" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table provides the gross carrying amount, accumulated amortization and net book value for each major class of intangibles (in thousands):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:25.732%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.483%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.483%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.483%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.483%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.483%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.488%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="33" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross<br/>Carrying<br/>Amount</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accumulated<br/>Amortization</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net<br/>Book<br/>Value</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross<br/>Carrying<br/>Amount</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accumulated<br/>Amortization</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net<br/>Book<br/>Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amortized intangibles:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9aea8d337c2a4a158061feaff30010e0_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzQtMS0xLTEtMTAwMDAy_23566819-d61c-4644-9fa9-0c25a6f273c5">338,050</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9aea8d337c2a4a158061feaff30010e0_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzQtMy0xLTEtMTAwMDAy_493fcd29-67de-453a-b663-518febc3f793">145,722</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9aea8d337c2a4a158061feaff30010e0_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzQtNS0xLTEtMTAwMDAy_d057400c-8e8a-4ade-a5fe-d9fe41a847c0">192,328</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibcda928914984dab908ead68148bca5e_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzQtNy0xLTEtMTAwMDAy_53dee072-c6bc-4a8f-aecf-ee49b14857cf">292,113</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibcda928914984dab908ead68148bca5e_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzQtOS0xLTEtMTAwMDAy_75d28249-8965-4789-b15f-f921873755d9">113,849</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibcda928914984dab908ead68148bca5e_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzQtMTEtMS0xLTEwMDAwMg_09556038-4196-4311-933f-55bfd25f8a1d">178,264</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Covenants not-to-compete</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i60423e26f6d04d42a31f9c74ec4957e6_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzUtMS0xLTEtMTAwMDAy_21441103-7e1a-4ec8-a9a8-760273addab0">30,899</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i60423e26f6d04d42a31f9c74ec4957e6_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzUtMy0xLTEtMTAwMDAy_edb40730-9e96-4bfa-89cc-844350f6a52c">20,086</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i60423e26f6d04d42a31f9c74ec4957e6_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzUtNS0xLTEtMTAwMDAy_e01e1d08-a71d-4556-a030-858d0ce2c7be">10,813</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4701e44d54f8416c94e658d31cdcbc11_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzUtNy0xLTEtMTAwMDAy_18651618-de3b-4354-bb02-734bc568310b">27,717</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4701e44d54f8416c94e658d31cdcbc11_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzUtOS0xLTEtMTAwMDAy_cdd427c8-c8e5-4cc2-8388-1c60c47d5242">16,471</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4701e44d54f8416c94e658d31cdcbc11_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzUtMTEtMS0xLTEwMDAwMg_ade849a8-efc7-4ba1-9470-75fdddd5692e">11,246</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trademarks and tradenames</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iff0aa331a39e4a78810397ce09d6f176_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzYtMS0xLTEtMTAwMDAy_0d882f20-5a64-4c21-858b-d5b4ea4e5e33">119,612</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iff0aa331a39e4a78810397ce09d6f176_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzYtMy0xLTEtMTAwMDAy_dda0f676-1f0a-43c5-b0da-ac24279ef55a">39,638</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iff0aa331a39e4a78810397ce09d6f176_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzYtNS0xLTEtMTAwMDAy_4de70a71-23b3-446d-9095-5f6c481070f7">79,974</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2681812c248c4d1ea8f72b1c19f5bf44_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzYtNy0xLTEtMTAwMDAy_35f48d2b-069b-4b90-90de-b139d4910a47">103,007</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2681812c248c4d1ea8f72b1c19f5bf44_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzYtOS0xLTEtMTAwMDAy_c2e19e32-fb76-4ba5-808e-fbdfc49b9926">32,623</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2681812c248c4d1ea8f72b1c19f5bf44_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzYtMTEtMS0xLTEwMDAwMg_2e9de546-5faa-4ff1-b910-7c02d6312664">70,384</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Backlog</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2914866a0a3e48cab7cccecb0342c88a_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzctMS0xLTEtMTAwMDAy_9b051b8f-cc56-4565-9010-bde7fe3ce31a">20,815</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2914866a0a3e48cab7cccecb0342c88a_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzctMy0xLTEtMTAwMDAy_75258c92-a48a-43f6-9bdf-4065767e61a8">20,457</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2914866a0a3e48cab7cccecb0342c88a_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzctNS0xLTEtMTAwMDAy_4fac3733-7228-4210-b1ba-c9d8ed306466">358</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6f440aaf2b304fe89450e360641debc9_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzctNy0xLTEtMTAwMDAy_773638c0-05f1-4474-aa27-2df6f651b946">23,724</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6f440aaf2b304fe89450e360641debc9_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzctOS0xLTEtMTAwMDAy_0e7a97a9-f5d3-42b3-9da6-28fb77c9d973">19,197</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6f440aaf2b304fe89450e360641debc9_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzctMTEtMS0xLTEwMDAwMg_4fc51078-6035-4a68-9202-83605782b25f">4,527</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzgtMS0xLTEtMTAwMDAy_be972152-fe07-4c91-95dc-0f1dad30cd0b">509,376</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzgtMy0xLTEtMTAwMDAy_540fe5e7-59b2-4a6e-a262-223417871c45">225,903</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzgtNS0xLTEtMTAwMDAy_3fb091d3-357f-41b6-9538-86a102c711a0">283,473</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzgtNy0xLTEtMTAwMDAy_2e00fb5c-a3ad-4e73-9d9d-d7ae477ada8c">446,561</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzgtOS0xLTEtMTAwMDAy_ebfa4fea-03fa-4ca0-a8af-890531d82621">182,140</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzgtMTEtMS0xLTEwMDAwMg_07014d34-d359-4988-b3a9-ebc3d8007d83">264,421</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div><span><br/></span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We recorded <ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-5" name="us-gaap:ImpairmentOfIntangibleAssetsFinitelived" format="ixt:fixed-zero" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzIwODg_0c2fd593-8b2f-40ca-b50d-e225b46dd128"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-5" name="us-gaap:ImpairmentOfIntangibleAssetsFinitelived" format="ixt:fixed-zero" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzIwODg_6b317f2a-193e-41a6-abb7-170a3cc535b8"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-5" name="us-gaap:ImpairmentOfIntangibleAssetsFinitelived" format="ixt:fixed-zero" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzIwODg_6e7560c1-a75d-4497-9a60-f1e04bbd9eb2">no</ix:nonFraction></ix:nonFraction></ix:nonFraction> intangible asset impairment loss for the years ended December&#160;31, 2022, 2021 and 2020.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The gross carrying amount of intangibles increased approximately $<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-5" name="us-gaap:FiniteLivedIntangibleAssetsPeriodIncreaseDecrease" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzIyMjQ_04b516af-3b1a-4e67-8de9-3438f26a60c1">62.8</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-5" name="us-gaap:FiniteLivedIntangibleAssetsPeriodIncreaseDecrease" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzIyMzE_8e40c869-b8aa-4371-b8bb-b3474e573a50">130.1</ix:nonFraction> million during the years ended December&#160;31, 2022 and 2021, respectively. Intangibles associated with business combinations accounted for approximately $<ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-5" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzIzNjA_5e6022fa-caf1-432c-a7b1-b4ecbb5c684a">65.1</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-5" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzIzNjc_730e3488-8fba-4ab5-b9e7-f1a8d7e4f080">130.0</ix:nonFraction> million of the increases during the years ended December&#160;31, 2022 and 2021, respectively. For the year ended December&#160;31, 2022, there was a measurement period adjustment for a prior year acquisition that decreased gross intangibles by $<ix:nonFraction unitRef="usd" contextRef="if3685ad92b3748da94c030b96eb1db2c_I20221231" decimals="-5" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzEwOTk1MTE2Mzk4OTU_d17b1349-21f4-4646-b844-bb0e69f1c5b1">3.0</ix:nonFraction> million. For more information, see Note 18, Business Combinations. Amortization expense on intangible assets totaled approximately $<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-5" name="us-gaap:AmortizationOfIntangibleAssets" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzI1NTc_a33000a2-746f-47c9-8f37-d8c2d6dc5d70">43.8</ix:nonFraction> million, $<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-5" name="us-gaap:AmortizationOfIntangibleAssets" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzI1NjE_1f501937-2823-43ab-a1f4-f894560dfe5f">37.1</ix:nonFraction> million, and $<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-5" name="us-gaap:AmortizationOfIntangibleAssets" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzI1Njk_481f08c7-a052-4553-8d71-4f9881f5ab44">28.5</ix:nonFraction> million during the years ended December&#160;31, 2022, 2021 and 2020, respectively. <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzI3MTY_c3ce90d1-351d-4219-a9d4-50b38218d228" continuedAt="i2ce4a8b996bf464ba220e40b510ae34a" escape="true">Remaining estimated aggregate annual amortization expense is as follows (in thousands):</ix:nonNumeric></span></div><div style="margin-top:5pt;text-align:center"><ix:continuation id="i2ce4a8b996bf464ba220e40b510ae34a"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:32.017%"><tr><td style="width:1.0%"></td><td style="width:59.173%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:38.627%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2023</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTpmZWZhM2I0ZjE3Y2Y0MDNhOWUwNmI3MzhlMjc3YzA5Mi90YWJsZXJhbmdlOmZlZmEzYjRmMTdjZjQwM2E5ZTA2YjczOGUyNzdjMDkyXzAtMS0xLTEtMTAwMDAy_56d70462-83a1-4b25-9997-9f60f0632e87">42,460</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2024</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTpmZWZhM2I0ZjE3Y2Y0MDNhOWUwNmI3MzhlMjc3YzA5Mi90YWJsZXJhbmdlOmZlZmEzYjRmMTdjZjQwM2E5ZTA2YjczOGUyNzdjMDkyXzEtMS0xLTEtMTAwMDAy_0bb51fca-9325-41cf-8feb-f8c4ecec86e4">38,366</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTpmZWZhM2I0ZjE3Y2Y0MDNhOWUwNmI3MzhlMjc3YzA5Mi90YWJsZXJhbmdlOmZlZmEzYjRmMTdjZjQwM2E5ZTA2YjczOGUyNzdjMDkyXzItMS0xLTEtMTAwMDAy_8db9729f-9c0a-4775-974e-2dbe12f2c7a6">32,961</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTpmZWZhM2I0ZjE3Y2Y0MDNhOWUwNmI3MzhlMjc3YzA5Mi90YWJsZXJhbmdlOmZlZmEzYjRmMTdjZjQwM2E5ZTA2YjczOGUyNzdjMDkyXzMtMS0xLTEtMTAwMDAy_20f541a1-efc8-4362-afb4-38a918fa6c44">29,010</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTpmZWZhM2I0ZjE3Y2Y0MDNhOWUwNmI3MzhlMjc3YzA5Mi90YWJsZXJhbmdlOmZlZmEzYjRmMTdjZjQwM2E5ZTA2YjczOGUyNzdjMDkyXzQtMS0xLTEtMTAwMDAy_2b522904-5e0d-49d7-9802-6d518282d51d">24,724</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTpmZWZhM2I0ZjE3Y2Y0MDNhOWUwNmI3MzhlMjc3YzA5Mi90YWJsZXJhbmdlOmZlZmEzYjRmMTdjZjQwM2E5ZTA2YjczOGUyNzdjMDkyXzUtMS0xLTEtMTAwMDAy_b46a7094-a27f-4086-ac33-4693fa863bc0">115,952</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></ix:continuation></div></ix:continuation><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_106"></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 8 &#8211; <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:LongTermDebtTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzgyNTY_56d84377-2278-4eab-8828-d8369cf9fe37" continuedAt="if187402586fe44ee84714ee3ba8e8a38" escape="true">LONG-TERM DEBT</ix:nonNumeric></span></div><ix:continuation id="if187402586fe44ee84714ee3ba8e8a38" continuedAt="i46edc22ba4f048c797a9e6f064a8e2fa"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:ScheduleOfDebtTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzgyNTc_9beffc23-ac50-414c-b329-b31b5849f4c3" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Long-term debt consisted of the following (in thousands):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:72.730%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.619%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.621%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Senior Notes due 2028, net of unamortized debt issuance costs of $<ix:nonFraction unitRef="usd" contextRef="i34c4e4e26cd94add8200e3c231ad6e6f_I20221231" decimals="-3" name="us-gaap:DebtInstrumentUnamortizedDiscount" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzItMC0xLTEtMTAwMDAyL3RleHRyZWdpb246ZGM3MzI0NTk0NGVhNDkxZTk2NTEzOWZiNTFkZDJkODRfNjk_4b8a3955-9e13-4aa4-a5dd-d62c7354fe8e">3,036</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="i13d232b775794fd09035702b88fc8efd_I20211231" decimals="-3" name="us-gaap:DebtInstrumentUnamortizedDiscount" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzItMC0xLTEtMTAwMDAyL3RleHRyZWdpb246ZGM3MzI0NTk0NGVhNDkxZTk2NTEzOWZiNTFkZDJkODRfNzY_76ba5412-64b5-4a80-b216-74dce918d1ff">3,633</ix:nonFraction>, respectively</span></div></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i34c4e4e26cd94add8200e3c231ad6e6f_I20221231" decimals="-3" name="us-gaap:LongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzItMS0xLTEtMTAwMDAy_90422fb9-389d-4e05-a57d-7ab5005b7273">296,964</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i13d232b775794fd09035702b88fc8efd_I20211231" decimals="-3" name="us-gaap:LongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzItMy0xLTEtMTAwMDAy_9c29ce92-38e3-4055-a19a-e0e089b0f2a8">296,367</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Term loan, net of unamortized debt issuance costs of $<ix:nonFraction unitRef="usd" contextRef="i540d045957764edda6de786acb29f5ce_I20221231" decimals="-3" name="us-gaap:DebtInstrumentUnamortizedDiscount" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzMtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246NjQyOTk3ZjUyNTU0NDE2Njg3MjE5YzFhYTZlMDAyOTdfNTc_f201b4a0-8956-48b4-916b-7bd924ddf348">5,767</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="i4a484ea7c8f345e0adf9c0b0c88da255_I20211231" decimals="-3" name="us-gaap:DebtInstrumentUnamortizedDiscount" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzMtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246NjQyOTk3ZjUyNTU0NDE2Njg3MjE5YzFhYTZlMDAyOTdfNjQ_b0493eaa-8a82-48bb-890c-5a11f57b2d31">6,735</ix:nonFraction>, respectively</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i540d045957764edda6de786acb29f5ce_I20221231" decimals="-3" name="us-gaap:LongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzMtMS0xLTEtMTAwMDAy_95372a80-eded-49c8-af66-0072f8a639d2">489,233</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4a484ea7c8f345e0adf9c0b0c88da255_I20211231" decimals="-3" name="us-gaap:LongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzMtMy0xLTEtMTAwMDAy_9d62e511-fb2e-44f2-a176-20067cc41ff0">493,265</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vehicle and equipment notes, maturing through December 2027; payable in various monthly installments, including interest rates ranging from <ix:nonFraction unitRef="number" contextRef="i018182100c9b4faf8e0b0ca98b72dc09_I20221231" decimals="3" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzQtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246ZTE5YWY5YjQ5ZTYxNDc5NmE1Mzk2NmFmZWI5YTY1MDhfMTMz_4da2c3a9-aab0-4b77-bd27-98790c40420a">1.9</ix:nonFraction>% to <ix:nonFraction unitRef="number" contextRef="i834063c3b1454e2f866fe8e743de57c7_I20221231" decimals="3" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzQtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246ZTE5YWY5YjQ5ZTYxNDc5NmE1Mzk2NmFmZWI5YTY1MDhfMTM5_b68c3560-9bf0-435e-8046-b6c33089ffd1">6.1</ix:nonFraction>% </span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6a87d84186b04f3383be05898cb0dc9b_I20221231" decimals="-3" name="us-gaap:LongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzQtMS0xLTEtMTAwMDAy_58333db9-a45c-41b9-a64a-6d08a5a3fae1">72,984</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i737a44fc03054b2d8bc05385476ba2b7_I20211231" decimals="-3" name="us-gaap:LongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzQtMy0xLTEtMTAwMDAy_208830f2-06a7-479d-aa42-2d92480d8cc7">69,228</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Various notes payable, maturing through April 2025; payable in various monthly installments, including interest rates ranging from <ix:nonFraction unitRef="number" contextRef="i2beda86d04974e408bae431827dee988_I20221231" decimals="2" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzUtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246ZWIwMTllYmExN2VlNDU1NWI5NWQ4ZDA5YjZhYTFhNzBfMTI3_e4296867-79c2-452d-9489-705487c25a6e">2.0</ix:nonFraction>% to <ix:nonFraction unitRef="number" contextRef="i5936bc2238984dac8588a7283fd3bee5_I20221231" decimals="2" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzUtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246ZWIwMTllYmExN2VlNDU1NWI5NWQ4ZDA5YjZhYTFhNzBfMTMz_eb53b09f-c781-421b-947d-fd019ca2de82">5.0</ix:nonFraction>%</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iee545d8b2e7b474d9f3df5bba463a629_I20221231" decimals="-3" name="us-gaap:LongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzUtMS0xLTEtMTAwMDAy_18715f3b-fd5c-4938-97f3-620d9e6fd9ae">1,973</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iffa4f907555945d5a29eed4b703ec3aa_I20211231" decimals="-3" name="us-gaap:LongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzUtMy0xLTEtMTAwMDAy_d76c717a-aa2e-45d1-9efc-30319a4e1bb0">4,172</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:LongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzYtMS0xLTEtMTAwMDAy_854cce87-f5af-4c6f-9294-d802a6d69ac0">861,154</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:LongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzYtMy0xLTEtMTAwMDAy_b2cc1419-cbbe-45b5-94bd-204bf3bc186d">863,032</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: current maturities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:LongTermDebtCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzctMS0xLTEtMTAwMDAy_cd960939-ab9a-450f-8184-424514db8f99">30,983</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:LongTermDebtCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzctMy0xLTEtMTAwMDAy_9b2cb214-fd2c-422f-a15c-1f4205bebf9b">30,839</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term debt, less current maturities</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:LongTermDebtNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzgtMS0xLTEtMTAwMDAy_4891c678-96f4-417b-babb-a63280c5a96f">830,171</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:LongTermDebtNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzgtMy0xLTEtMTAwMDAy_953f3a19-9118-436a-bae1-ad54c178d57b">832,193</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">66</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:63pt;width:100%"><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div></div><ix:continuation id="i46edc22ba4f048c797a9e6f064a8e2fa" continuedAt="ia2ce6840031743359dede0e9e6097028"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzgyNTM_45204cd9-7dd2-4042-ae38-83dc100d0b1a" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Remaining required repayments of debt principal, gross of unamortized debt issuance costs, as of December&#160;31, 2022 are as follows (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:32.163%"><tr><td style="width:1.0%"></td><td style="width:59.354%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:38.446%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2023</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZTo1Yjk1Mzg5NGIzMGE0NzgyOTM4YzMwYjdjYmI5YjZiMS90YWJsZXJhbmdlOjViOTUzODk0YjMwYTQ3ODI5MzhjMzBiN2NiYjliNmIxXzAtMS0xLTEtMTAwMDAy_fa39e24f-c0a2-4d8d-bc94-4ed4bf260d50">30,983</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2024</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZTo1Yjk1Mzg5NGIzMGE0NzgyOTM4YzMwYjdjYmI5YjZiMS90YWJsZXJhbmdlOjViOTUzODk0YjMwYTQ3ODI5MzhjMzBiN2NiYjliNmIxXzEtMS0xLTEtMTAwMDAy_dd063dc9-4a20-4d2d-a4f4-d996ff6dfb32">25,570</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZTo1Yjk1Mzg5NGIzMGE0NzgyOTM4YzMwYjdjYmI5YjZiMS90YWJsZXJhbmdlOjViOTUzODk0YjMwYTQ3ODI5MzhjMzBiN2NiYjliNmIxXzItMS0xLTEtMTAwMDAy_df37c53a-63e2-4ea2-bfb2-78d818c083c5">19,630</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZTo1Yjk1Mzg5NGIzMGE0NzgyOTM4YzMwYjdjYmI5YjZiMS90YWJsZXJhbmdlOjViOTUzODk0YjMwYTQ3ODI5MzhjMzBiN2NiYjliNmIxXzMtMS0xLTEtMTAwMDAy_79a92d68-68fd-4d6d-ae9a-b97d950b0686">14,576</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZTo1Yjk1Mzg5NGIzMGE0NzgyOTM4YzMwYjdjYmI5YjZiMS90YWJsZXJhbmdlOjViOTUzODk0YjMwYTQ3ODI5MzhjMzBiN2NiYjliNmIxXzQtMS0xLTEtMTAwMDAy_082d8da0-b641-48e1-a577-aff5cf54ab84">9,198</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZTo1Yjk1Mzg5NGIzMGE0NzgyOTM4YzMwYjdjYmI5YjZiMS90YWJsZXJhbmdlOjViOTUzODk0YjMwYTQ3ODI5MzhjMzBiN2NiYjliNmIxXzUtMS0xLTEtMTAwMDAy_27c7a510-3b2e-4d6e-9702-8899da9a95e7">770,000</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr></table></div></ix:nonNumeric><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><ix:nonFraction unitRef="number" contextRef="if0144e02c38f4ce7ac717e9cd6b2c470_I20190930" decimals="INF" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzIyNA_fea7ef3d-e4c1-42e7-b2bd-5c35b782d41a">5.75</ix:nonFraction>% Senior Notes due 2028</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In September 2019, we issued $<ix:nonFraction unitRef="usd" contextRef="if0144e02c38f4ce7ac717e9cd6b2c470_I20190930" decimals="INF" name="us-gaap:DebtInstrumentFaceAmount" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzI3OA_6c487611-bf8f-4cd5-b104-9c8d409b5045">300.0</ix:nonFraction> million in aggregate principal amount of <ix:nonFraction unitRef="number" contextRef="if0144e02c38f4ce7ac717e9cd6b2c470_I20190930" decimals="INF" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzMxNA_5f48ccf3-6317-4fff-b4ae-552d24635745">5.75</ix:nonFraction>% senior unsecured notes (the &#8220;Senior Notes&#8221;). The Senior Notes will mature on February&#160;1, 2028 and interest is payable semi-annually in cash in arrears on February 1 and August 1, commencing on February&#160;1, 2020. The net proceeds from the Senior Notes offering were $<ix:nonFraction unitRef="usd" contextRef="i3d558231c934484486d62133717c8d67_D20190901-20190930" decimals="-5" name="us-gaap:ProceedsFromDebtNetOfIssuanceCosts" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzU0Mg_b5042f5d-40c8-455e-96cd-4b3676d331a2">295.0</ix:nonFraction> million after debt issuance costs.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The indenture covering the Senior Notes contains restrictive covenants that, among other things, limit the ability of the Company and certain of our subsidiaries (subject to certain exceptions) to: (i) incur additional debt and issue preferred stock; (ii) pay dividends on, redeem or repurchase stock in an aggregate amount exceeding <ix:nonFraction unitRef="number" contextRef="i3d558231c934484486d62133717c8d67_D20190901-20190930" decimals="INF" name="ibp:DebtInstrumentCovenantMarketCapitalizationThreshold" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzkwNg_5540425d-1767-4f03-a5ea-39ef2cb1bcd8">2.0</ix:nonFraction>% of market capitalization per fiscal year, or in an aggregate amount exceeding certain applicable restricted payment baskets; (iii) prepay subordinated debt; (iv) create liens; (v) make specified types of investments; (vi) apply net proceeds from certain asset sales; (vii) engage in transactions with affiliates; (viii) merge, consolidate or sell substantially all of our assets; and (ix) pay dividends and make other distributions from subsidiaries.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Credit Facilities</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In February 2022, we amended and extended the term of our asset-based lending credit agreement (the "ABL Credit Agreement"). The ABL Credit Agreement increased the commitment under the asset-based lending credit facility (the "ABL Revolver") to $<ix:nonFraction unitRef="usd" contextRef="i7d6c36cf84a243a3bf41547086bb67bd_I20220228" decimals="INF" name="us-gaap:DebtInstrumentFaceAmount" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzE0MTg_59eef5d6-f1b7-4120-a7c6-5b61ccdb12f7">250</ix:nonFraction> million from $<ix:nonFraction unitRef="usd" contextRef="ia189161bf80746ea964b0f8fe835b158_I20220227" decimals="-5" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzU0OTc1NTgzNTIwNw_3cc42c40-24df-4111-b92b-9e1384df1b9b">200.0</ix:nonFraction> million, and permits us to further increased the commitment amount up to $<ix:nonFraction unitRef="usd" contextRef="i86035a77f81d4b539b5f1ce46301da8c_I20220228" decimals="-5" name="ibp:LineOfCreditFacilityAccordionFeatureIncreaseLimit" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzU0OTc1NTgzNTI4MA_0f999fd0-cf8c-417f-af10-090ea1effd25">300.0</ix:nonFraction> million. The amendment also extends the maturity date from September 26, 2024 to February 17, 2027. The ABL Revolver bears interest at either the base rate or the Secured Overnight Financing Rate ("Term SOFR"), at our election, plus a margin of <ix:nonFraction unitRef="number" contextRef="i9f001a3bfedc4b5ea368fad69dfc0f58_D20220201-20220228" decimals="INF" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzE5NTM_06effe11-60f4-485a-aafe-2b4de22805df">0.25</ix:nonFraction>% or <ix:nonFraction unitRef="number" contextRef="i7a375fef08ab451da4952c1783e82102_D20220201-20220228" decimals="INF" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzU0OTc1NTgzNjA3Ng_6a105cd7-b5c3-48c4-958f-f249b8d9d26c">0.50</ix:nonFraction>% in the case of base rate loans or <ix:nonFraction unitRef="number" contextRef="i07c36a7930b34ab8a7ea6aad1a369ca5_D20220228-20220228" decimals="INF" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzU0OTc1NTgzNjc0MA_60decf26-5e3e-41a3-af02-a50b3778780a">1.25</ix:nonFraction>% or <ix:nonFraction unitRef="number" contextRef="ib08adbc384934c028f3648ab9e362f6a_D20220228-20220228" decimals="INF" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzU0OTc1NTgzNjc0Nw_1c7be720-1c7f-4c07-b855-a88d677d92b1">1.50</ix:nonFraction>% for Term SOFR advances (in each case based on a measure of availability under the ABL Credit Agreement). The amendment also allows for modification of specified fees depend upon achieving certain sustainability targets, in addition to making other modifications to the ABL Credit Agreement. Including outstanding letters of credit, our remaining availability under the ABL Revolver as of December&#160;31, 2022 was $<ix:nonFraction unitRef="usd" contextRef="ic9fa014a79fb43d9af456a0f7d86258b_I20221231" decimals="-5" name="us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzU0OTc1NTgzNzIwMw_50d5491c-45b8-4ee7-9746-3972e93dea79">244.2</ix:nonFraction> million. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The ABL Revolver provides incremental revolving credit facility commitments of up to $<ix:nonFraction unitRef="usd" contextRef="ib76cd90aaa964f7e95f82ca5b9a26828_I20220228" decimals="INF" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTYyMDA_da30ec60-6f4a-403b-a955-26f6a5d622d3">50.0</ix:nonFraction> million. The terms and conditions of any incremental revolving credit facility commitments must be no more favorable than the terms of the ABL Revolver. The ABL Revolver also allows for the issuance of letters of credit of up to $<ix:nonFraction unitRef="usd" contextRef="i20d9bf47aa834d11bd9e0509d8abc5e6_I20220228" decimals="INF" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTY0MjU_595f2883-e8f5-453b-b71a-93599530a9ce">100.0</ix:nonFraction> million in aggregate and borrowing of swingline loans of up to $<ix:nonFraction unitRef="usd" contextRef="ibdb3b0ff1645425b99b05dca86fabd3b_I20220228" decimals="INF" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTY0ODQ_1448e5a7-aa04-4a1f-ac09-7b78adbf3341">25.0</ix:nonFraction> million in aggregate. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The ABL Credit Agreement contains a financial covenant requiring the satisfaction of a minimum of fixed charge coverage ratio of <ix:nonFraction unitRef="number" contextRef="i8e6d104c5e894a44972d31f3c2a54c03_D20220201-20220228" decimals="INF" name="ibp:FixedChargeCoverageRatio" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEyNjQ0MzgzNzUwNzM2_4212aae8-5b69-472c-a87c-75aef1c94e04">1.0</ix:nonFraction>x in the event that we do not meet a minimum measure of availability under the ABL Revolver. The ABL Credit Agreement and the Term Loan Agreement contain restrictive covenants that, among other things, limit the ability of the Company and certain of our subsidiaries (subject to certain exceptions) to: (i) incur additional debt and issue preferred stock; (ii) pay dividends on, redeem or repurchase stock in an aggregate amount exceeding the greater of <ix:nonFraction unitRef="number" contextRef="i8e6d104c5e894a44972d31f3c2a54c03_D20220201-20220228" decimals="INF" name="ibp:DebtInstrumentCovenantMarketCapitalizationThreshold" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTcwODk_959c882b-b686-46bc-9fe9-4acd00a5f24e">2.0</ix:nonFraction>% of market capitalization per fiscal year or certain applicable restricted payment basket amounts' (iii) prepay subordinated debt; (iv) create liens; (v) make specified types of investments; (vi) apply net proceeds from certain asset sales; (vii) engage in transactions with affiliates; (viii) merge, consolidate or sell substantially all of our assets; and (ix) pay dividends and make other distributions from subsidiaries. </span></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In December 2021, we entered into a new $<ix:nonFraction unitRef="usd" contextRef="i3626fc639f194097808d6c94273ca71f_I20211231" decimals="INF" name="us-gaap:DebtInstrumentFaceAmount" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTM4MjQ_32448fdd-73c2-42e6-a4f7-25256e8a8740">500</ix:nonFraction> million, <ix:nonNumeric contextRef="i348b56558ede44b8861dc95a4225ed0d_D20211201-20211231" name="us-gaap:DebtInstrumentTerm" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEyNjQ0MzgzNzUwNzQ4_48226a37-4103-40f8-869d-b8d79a513fff">seven-year</ix:nonNumeric> term loan facility due December 2028 (the &#8220;Term Loan&#8221;) under our credit agreement (the &#8220;Term Loan Agreement&#8221;), dated as of December 14, 2021 with Royal Bank of Canada as the administrative agent and collateral agent thereunder. The Term Loan amortizes in quarterly principal payments of $<ix:nonFraction unitRef="usd" contextRef="i348b56558ede44b8861dc95a4225ed0d_D20211201-20211231" decimals="-4" name="us-gaap:DebtInstrumentPeriodicPaymentPrincipal" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTQxMTU_77ceeccc-7e83-48e5-b847-bfd7e3eb0e5f">1.25</ix:nonFraction>&#160;million starting on March 31, 2022, with any remaining unpaid balances due on the maturity date of December 14, 2028. The Term Loan bears interest at either the base rate (which approximates the prime rate) or the Eurodollar rate, plus a margin of (A) <ix:nonFraction unitRef="number" contextRef="i369ef29f670e409d93c3900ac15f872c_D20191217-20191231" decimals="4" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTQzNjM_7114d905-5b07-4f60-8e59-79518beec1ce">1.25</ix:nonFraction>% in the case of base rate loans or (B) <ix:nonFraction unitRef="number" contextRef="ibb2d42a7a0d04941bc3037db4d367073_D20191217-20191231" decimals="4" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTQ0MDU_0046902e-8182-4ae4-a410-50d19a695d87">2.25</ix:nonFraction>% in the case of Eurodollar rate loans. Proceeds from the Term Loan were used </span></div></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">67</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:63pt;width:100%"><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div></div><ix:continuation id="ia2ce6840031743359dede0e9e6097028"><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">to refinance and repay in full all amounts outstanding under our previous term loan agreement. We intend to use the remaining funds for general corporate purposes, including acquisitions and other growth initiatives. As of December&#160;31, 2022, we had $<ix:nonFraction unitRef="usd" contextRef="i9da17e90d5044db980df1ac538041b4e_I20221231" decimals="-5" name="us-gaap:DeferredFinanceCostsNet" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTkwOTQ_4804f996-59b8-4c51-a60e-e9a827e0f2a5">489.2</ix:nonFraction>&#160;million, net of unamortized debt issuance costs, due on our Term Loan. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Subject to certain exceptions, the Term Loan will be subject to mandatory prepayments of (i) <ix:nonFraction unitRef="number" contextRef="i348b56558ede44b8861dc95a4225ed0d_D20211201-20211231" decimals="INF" name="ibp:DebtInstrumentPrepaymentsPercentageOfNetCashProceeds" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTQ5Njc_58375308-2d2e-43fa-8a10-e4d931e13ad4">100</ix:nonFraction>% of the net cash proceeds from issuances or incurrence of debt by the Company or any of its restricted subsidiaries (other than with respect to certain permitted indebtedness (excluding any refinancing indebtedness); (ii) <ix:nonFraction unitRef="number" contextRef="i348b56558ede44b8861dc95a4225ed0d_D20211201-20211231" decimals="INF" name="ibp:DebtInstrumentPrepaymentsPercentageOfNetCashProceeds" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTUxOTI_d38a308d-5e56-4362-8135-c40d99839a05">100</ix:nonFraction>% (with step-downs to <ix:nonFraction unitRef="number" contextRef="i1667b4619c3043ccb7ad8720ada33f65_D20211201-20211231" decimals="INF" name="ibp:DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTUyMTY_bba63b46-8bc2-4744-81e0-5868a4da3afc">50</ix:nonFraction>% and <ix:nonFraction unitRef="number" contextRef="ie7fc98e4645a435190e6c9695d751b2f_D20211201-20211231" decimals="INF" name="ibp:DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTUyMjQ_ee1ae666-603b-434d-b5ed-6fe26903bf50">0</ix:nonFraction>% based on achievement of specified net leverage ratios) of the net cash proceeds from certain sales or dispositions of assets by the Company or any of its restricted subsidiaries in excess of a certain amount and subject to reinvestment provision and certain other exception; and (iii) <ix:nonFraction unitRef="number" contextRef="i348b56558ede44b8861dc95a4225ed0d_D20211201-20211231" decimals="INF" name="ibp:DebtInstrumentPrepaymentsPercentageOfNetCashProceeds2" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTU1MTM_466334b5-e11d-452b-ae6a-df27136b7fbf">50</ix:nonFraction>% (with step-downs to <ix:nonFraction unitRef="number" contextRef="i1667b4619c3043ccb7ad8720ada33f65_D20211201-20211231" decimals="INF" name="ibp:DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds2" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTU1Mzc_06b5258e-b07f-4acc-a27c-5a411a47dda5">25</ix:nonFraction>% and <ix:nonFraction unitRef="number" contextRef="ie7fc98e4645a435190e6c9695d751b2f_D20211201-20211231" decimals="INF" name="ibp:DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds2" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTU1NDU_deac8bbb-a9dc-48c0-a9f5-cb3bfb5bf833">0</ix:nonFraction>% based upon achievement of specified net leverage ratios) of excess cash flow of the Company and its restricted subsidiaries in excess of $<ix:nonFraction unitRef="usd" contextRef="i348b56558ede44b8861dc95a4225ed0d_D20211201-20211231" decimals="INF" name="ibp:DebtInstrumentMaximumCashProceeds" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTU2ODY_858bb07a-10c4-415c-905f-dc0dfd7b843a">15</ix:nonFraction>&#160;million, subject to certain exceptions and limitations. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">All of the obligations under the Term Loan and ABL Revolver are guaranteed by all of the Company&#8217;s existing restricted subsidiaries and will be guaranteed by the Company&#8217;s future restricted subsidiaries. Additionally, all obligations under the Term Loan and ABL Revolver, and the guarantees of those obligations, are secured by substantially all of the assets of the Company and the guarantors, subject to certain exceptions and permitted liens, including a first-priority security interest in such assets that constitute ABL Priority Collateral, as defined in the ABL Credit Agreement, and a second-priority security interest in such assets that constitute Term Loan Priority Collateral, as defined in the Term Loan Agreement. </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Vehicle and Equipment Notes</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We are party to a Master Loan and Security Agreement (&#8220;Master Loan and Security Agreement&#8221;), a Master Equipment Lease Agreement (&#8220;Master Equipment Agreement&#8221;) and one or more Master Loan Agreements (&#8220;Master Loan Agreements&#8221; and together with the Master Loan and Security Agreement and Master Equipment Agreement the &#8220;Master Loan Equipment Agreements&#8221;) with various lenders to provide financing for the purpose of purchasing or leasing vehicles and equipment used in the normal course of business. Each financing arrangement under these agreements constitutes a separate note and obligation. Vehicles and equipment purchased or leased under each financing arrangement serve as collateral for the note applicable to such financing arrangement. Regular payments are due under each note for a period of typically <ix:nonNumeric contextRef="i05826b04b32d488fa2a32dad9066cdeb_D20220101-20221231" name="us-gaap:DebtInstrumentTerm" format="ixt-sec:durmonth" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2Xzc2NzI_6f47ff7e-a991-4d34-be21-ba480501682c">60</ix:nonNumeric> consecutive months after the incurrence of the obligation. The specific terms of each note are based on specific criteria, including the type of vehicle or equipment and the market interest rates at the time. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Total outstanding loan balances relating to our master loan and equipment agreements were $<ix:nonFraction unitRef="usd" contextRef="ib3d0c7e33c2948d7b16474ce673bdc63_I20221231" decimals="-5" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2Xzc5NjI_a4c3a309-f263-4427-ac54-905b9f1fc5e5">73.0</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="i5cee4ffe61be49c6ae7aacfc5b5b9775_I20211231" decimals="-5" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2Xzc5Njk_8fddeffe-5fcf-40c9-8767-d3f8f675ccb9">69.2</ix:nonFraction> million as of December&#160;31, 2022 and 2021, respectively. Depreciation of assets held under these agreements is included within cost of sales on the Consolidated Statements of Operations and Comprehensive Income.</span></div></ix:continuation><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_109"></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"> NOTE 9 &#8211; <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:LesseeFinanceLeasesTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90ZXh0cmVnaW9uOmUxMDBjZjczMjJhNjQxNjk5YWI4OTU2ZWY2Y2ExYmQ1XzEzNTA_4c0b2b52-ecac-4502-a1ff-aa35f8d7a4e3" continuedAt="ic06fb6342e1646b4b33f09695ae7fd1b" escape="true"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:LesseeOperatingLeasesTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90ZXh0cmVnaW9uOmUxMDBjZjczMjJhNjQxNjk5YWI4OTU2ZWY2Y2ExYmQ1XzEzNTA_742cfe6c-181d-4f08-80ef-b45749032bb3" continuedAt="i462b61a16cf64ad8b39d4109408eabd4" escape="true">LEASES</ix:nonNumeric></ix:nonNumeric></span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="ic06fb6342e1646b4b33f09695ae7fd1b" continuedAt="if05f10a3c3464ca6be3380b14bf476d3"><ix:continuation id="i462b61a16cf64ad8b39d4109408eabd4" continuedAt="i60509addfae94658b59b42ac8d31c953">We lease various assets in the ordinary course of business as follows: warehouses to store our materials and perform staging activities for certain products we install; various office spaces for selling and administrative activities to support our business; and certain vehicles and equipment to facilitate our operations, including, but not limited to, trucks, forklifts and office equipment. </ix:continuation></ix:continuation></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">68</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:63pt;width:100%"><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div></div><ix:continuation id="if05f10a3c3464ca6be3380b14bf476d3" continuedAt="i4046fd5dfa454909b70cd52ff55aaf59"><ix:continuation id="i60509addfae94658b59b42ac8d31c953" continuedAt="i58ff032fa4bf4a0b845bf81048637e8b"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="ibp:AssetsAndLiabilitiesLesseeTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90ZXh0cmVnaW9uOmUxMDBjZjczMjJhNjQxNjk5YWI4OTU2ZWY2Y2ExYmQ1XzEzNDY_215985dc-42cd-421e-9c5a-57d077d2b853" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The table below presents the lease-related assets and liabilities recorded on the Consolidated Balance Sheet:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:28.139%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:40.274%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.496%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.501%"></td><td style="width:0.1%"></td></tr><tr style="height:14pt"><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Classification</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr style="height:14pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-Current</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating&#160;lease&#160;right-of-use&#160;assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:OperatingLeaseRightOfUseAsset" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzQtNC0xLTEtMTAwMDAy_3a5cc0c6-1b7a-4946-a247-27a293cf3e19">76,174</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:OperatingLeaseRightOfUseAsset" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzQtNi0xLTEtMTAwMDAy_eae068b9-e944-426f-82e4-654852648861">69,871</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzUtMi0xLTEtMTAwMDAy_3f08309b-5457-499e-ae82-f8cdea3899fd"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzUtMi0xLTEtMTAwMDAy_b356578e-0cdd-4b5a-928c-9d4814d3c5ab">Property and equipment, net</span></span></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:FinanceLeaseRightOfUseAsset" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzUtNC0xLTEtMTAwMDAy_31c12028-3088-4ac0-8979-88a8267b2f9c">8,928</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:FinanceLeaseRightOfUseAsset" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzUtNi0xLTEtMTAwMDAy_cbf66c98-28b5-4aa9-a50a-de4ec05641fc">5,266</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="ibp:LeaseAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzYtNC0xLTEtMTAwMDAy_66cad2e6-f84b-40e8-a022-6a23bda6059c">85,102</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="ibp:LeaseAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzYtNi0xLTEtMTAwMDAy_9fc279b0-e601-454d-bb7e-67f06db97d9c">75,137</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Liabilities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current&#160;maturities&#160;of&#160;operating&#160;lease&#160;obligations</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:OperatingLeaseLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzktNC0xLTEtMTAwMDAy_3c6abcfd-0d51-44d7-8cc9-48a76ccab63c">26,145</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:OperatingLeaseLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzktNi0xLTEtMTAwMDAy_7029ca95-63e1-449c-90ea-7b20c8c50ffd">23,224</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Financing</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current maturities of finance lease obligations</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:FinanceLeaseLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzEwLTQtMS0xLTEwMDAwMg_ff2bbf15-79fd-4a99-9054-9381e8933790">2,508</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:FinanceLeaseLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzEwLTYtMS0xLTEwMDAwMg_142448a8-ea05-4099-a57c-90326795bd41">1,747</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-Current</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease obligations</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:OperatingLeaseLiabilityNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzEyLTQtMS0xLTEwMDAwMg_628c6df1-171c-4ebf-a69c-1b734872d9a7">49,789</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:OperatingLeaseLiabilityNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzEyLTYtMS0xLTEwMDAwMg_824c2c38-fb7b-4ac4-9840-49270e8b24a4">46,075</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Financing</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance lease obligations</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:FinanceLeaseLiabilityNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzEzLTQtMS0xLTEwMDAwMg_6f274213-1eb4-4326-941e-fa36f40e82b7">6,397</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:FinanceLeaseLiabilityNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzEzLTYtMS0xLTEwMDAwMg_6e684430-d269-4076-bad1-9a9f686a3ff4">3,297</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="ibp:LeaseLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzE0LTQtMS0xLTEwMDAwMg_721cc338-8584-4e7d-a70d-f9ba79732427">84,839</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="ibp:LeaseLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzE0LTYtMS0xLTEwMDAwMg_28a2766e-6dfe-4a6f-8753-50de0ab43823">74,343</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:70.829%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.496%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.375%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted-average remaining lease term</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating leases</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmMjBkNTIxYWRjOTk0ODdiODY5NjIyNTM3YWYxYzRiOS90YWJsZXJhbmdlOmYyMGQ1MjFhZGM5OTQ4N2I4Njk2MjI1MzdhZjFjNGI5XzEtMS0xLTEtMTAwMDAy_1e7fc9a5-3cd1-449f-887f-9bffe33ace5b">4.0</ix:nonNumeric> years</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmMjBkNTIxYWRjOTk0ODdiODY5NjIyNTM3YWYxYzRiOS90YWJsZXJhbmdlOmYyMGQ1MjFhZGM5OTQ4N2I4Njk2MjI1MzdhZjFjNGI5XzEtMi0xLTEtMTAwMDAy_3f699538-3a99-4cea-84b2-3d92a7810446">4.3</ix:nonNumeric> years</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance leases</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" name="us-gaap:FinanceLeaseWeightedAverageRemainingLeaseTerm1" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmMjBkNTIxYWRjOTk0ODdiODY5NjIyNTM3YWYxYzRiOS90YWJsZXJhbmdlOmYyMGQ1MjFhZGM5OTQ4N2I4Njk2MjI1MzdhZjFjNGI5XzItMS0xLTEtMTAwMDAy_0b6e62cc-2cb1-4f85-b8d4-8d51fdcd617b">3.6</ix:nonNumeric> years</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" name="us-gaap:FinanceLeaseWeightedAverageRemainingLeaseTerm1" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmMjBkNTIxYWRjOTk0ODdiODY5NjIyNTM3YWYxYzRiOS90YWJsZXJhbmdlOmYyMGQ1MjFhZGM5OTQ4N2I4Njk2MjI1MzdhZjFjNGI5XzItMi0xLTEtMTAwMDAy_f9afb586-1515-4233-884f-38dd4fef5809">3.3</ix:nonNumeric> years</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted-average discount rate</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating leases</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="4" name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmMjBkNTIxYWRjOTk0ODdiODY5NjIyNTM3YWYxYzRiOS90YWJsZXJhbmdlOmYyMGQ1MjFhZGM5OTQ4N2I4Njk2MjI1MzdhZjFjNGI5XzQtMS0xLTEtMTAwMDAy_ce4e7505-f50b-4e7f-bd1c-763634e61826">4.41</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="4" name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmMjBkNTIxYWRjOTk0ODdiODY5NjIyNTM3YWYxYzRiOS90YWJsZXJhbmdlOmYyMGQ1MjFhZGM5OTQ4N2I4Njk2MjI1MzdhZjFjNGI5XzQtMi0xLTEtMTAwMDAy_78390eff-ee68-4a58-822f-aefd390f2405">3.38</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance leases</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="4" name="us-gaap:FinanceLeaseWeightedAverageDiscountRatePercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmMjBkNTIxYWRjOTk0ODdiODY5NjIyNTM3YWYxYzRiOS90YWJsZXJhbmdlOmYyMGQ1MjFhZGM5OTQ4N2I4Njk2MjI1MzdhZjFjNGI5XzUtMS0xLTEtMTAwMDAy_cd15b980-c805-4eb9-a0f2-1a653306842d">5.76</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="4" name="us-gaap:FinanceLeaseWeightedAverageDiscountRatePercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmMjBkNTIxYWRjOTk0ODdiODY5NjIyNTM3YWYxYzRiOS90YWJsZXJhbmdlOmYyMGQ1MjFhZGM5OTQ4N2I4Njk2MjI1MzdhZjFjNGI5XzUtMi0xLTEtMTAwMDAy_ad2f7c1f-e084-43d4-9b49-53d0bbbf3f12">4.96</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div></ix:nonNumeric><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Lease Costs</span></div><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:LeaseCostTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90ZXh0cmVnaW9uOmUxMDBjZjczMjJhNjQxNjk5YWI4OTU2ZWY2Y2ExYmQ1XzEzNTE_e0214a57-2bc0-43d3-8fbb-93ca96231717" continuedAt="i8418f110f03748a188435fd17dc56ff1" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The table below presents certain information related to the lease costs for finance and operating leases during 2022, 2021 and 2020:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:41.005%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.221%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.449%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.602%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Classification</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease cost</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"> (1)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Administrative</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:OperatingLeaseCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmM2UzNjUxZTg5YTI0NzQ0YmE3NmZjZjRiMWM0ZjU5NC90YWJsZXJhbmdlOmYzZTM2NTFlODlhMjQ3NDRiYTc2ZmNmNGIxYzRmNTk0XzItNC0xLTEtMTAwMDAy_f7b53fad-af4e-4c4e-b029-b44f1dc3b4ff">33,158</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:OperatingLeaseCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmM2UzNjUxZTg5YTI0NzQ0YmE3NmZjZjRiMWM0ZjU5NC90YWJsZXJhbmdlOmYzZTM2NTFlODlhMjQ3NDRiYTc2ZmNmNGIxYzRmNTk0XzItNi0xLTEtMTAwMDAy_5075ff4a-3f1a-42c0-9596-ce2f67a73927">27,357</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:OperatingLeaseCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmM2UzNjUxZTg5YTI0NzQ0YmE3NmZjZjRiMWM0ZjU5NC90YWJsZXJhbmdlOmYzZTM2NTFlODlhMjQ3NDRiYTc2ZmNmNGIxYzRmNTk0XzItOC0xLTEtMTAwMDAy_0ec7d72a-4194-4a12-8e0d-26b3b087c1c5">23,454</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance lease cost</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:6.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amortization of leased assets </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(2)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of sales</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:FinanceLeaseRightOfUseAssetAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmM2UzNjUxZTg5YTI0NzQ0YmE3NmZjZjRiMWM0ZjU5NC90YWJsZXJhbmdlOmYzZTM2NTFlODlhMjQ3NDRiYTc2ZmNmNGIxYzRmNTk0XzQtNC0xLTEtMTAwMDAy_009801b5-5e12-4a91-aa03-7695305aa335">3,241</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:FinanceLeaseRightOfUseAssetAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmM2UzNjUxZTg5YTI0NzQ0YmE3NmZjZjRiMWM0ZjU5NC90YWJsZXJhbmdlOmYzZTM2NTFlODlhMjQ3NDRiYTc2ZmNmNGIxYzRmNTk0XzQtNi0xLTEtMTAwMDAy_b241c5b6-8e58-4a47-a95f-14d8092fb690">3,083</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:FinanceLeaseRightOfUseAssetAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmM2UzNjUxZTg5YTI0NzQ0YmE3NmZjZjRiMWM0ZjU5NC90YWJsZXJhbmdlOmYzZTM2NTFlODlhMjQ3NDRiYTc2ZmNmNGIxYzRmNTk0XzQtOC0xLTEtMTAwMDAy_c25d2478-7ec6-45bf-99f6-f668e7b67b68">3,645</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest on finance lease obligations</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest&#160;expense,&#160;net</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:FinanceLeaseInterestExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmM2UzNjUxZTg5YTI0NzQ0YmE3NmZjZjRiMWM0ZjU5NC90YWJsZXJhbmdlOmYzZTM2NTFlODlhMjQ3NDRiYTc2ZmNmNGIxYzRmNTk0XzUtNC0xLTEtMTAwMDAy_45729bcf-4f60-4bab-b46d-142b64be90b0">324</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:FinanceLeaseInterestExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmM2UzNjUxZTg5YTI0NzQ0YmE3NmZjZjRiMWM0ZjU5NC90YWJsZXJhbmdlOmYzZTM2NTFlODlhMjQ3NDRiYTc2ZmNmNGIxYzRmNTk0XzUtNi0xLTEtMTAwMDAy_9924bcc1-c051-4568-846a-88da3ee49d47">218</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:FinanceLeaseInterestExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmM2UzNjUxZTg5YTI0NzQ0YmE3NmZjZjRiMWM0ZjU5NC90YWJsZXJhbmdlOmYzZTM2NTFlODlhMjQ3NDRiYTc2ZmNmNGIxYzRmNTk0XzUtOC0xLTEtMTAwMDAy_1cb92bc4-0d6d-4ff1-9f99-841172708d49">268</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease costs</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:LeaseCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmM2UzNjUxZTg5YTI0NzQ0YmE3NmZjZjRiMWM0ZjU5NC90YWJsZXJhbmdlOmYzZTM2NTFlODlhMjQ3NDRiYTc2ZmNmNGIxYzRmNTk0XzYtNC0xLTEtMTAwMDAy_f99eecec-01ae-42e6-b3d4-07f849e8b298">36,723</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:LeaseCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmM2UzNjUxZTg5YTI0NzQ0YmE3NmZjZjRiMWM0ZjU5NC90YWJsZXJhbmdlOmYzZTM2NTFlODlhMjQ3NDRiYTc2ZmNmNGIxYzRmNTk0XzYtNi0xLTEtMTAwMDAy_cf7deb72-8e39-4b43-9b2c-97987b68bf38">30,658</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:LeaseCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmM2UzNjUxZTg5YTI0NzQ0YmE3NmZjZjRiMWM0ZjU5NC90YWJsZXJhbmdlOmYzZTM2NTFlODlhMjQ3NDRiYTc2ZmNmNGIxYzRmNTk0XzYtOC0xLTEtMTAwMDAy_1d85982b-87b8-4790-b1ea-797d6b66f45b">27,367</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div style="padding-left:27pt;text-indent:-27pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(1)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:15.34pt">Includes variable lease costs of $<ix:nonFraction unitRef="usd" contextRef="i44030115f3dc47f394d19aada0ec45cc_D20220101-20221231" decimals="-5" name="us-gaap:VariableLeaseCost" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90ZXh0cmVnaW9uOmUxMDBjZjczMjJhNjQxNjk5YWI4OTU2ZWY2Y2ExYmQ1XzcwOA_59265237-6812-4ff5-b350-6fafb2fbf62f">3.7</ix:nonFraction> million, $<ix:nonFraction unitRef="usd" contextRef="i9722915df0974c458f470a40cb51bcc3_D20210101-20211231" decimals="-5" name="us-gaap:VariableLeaseCost" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90ZXh0cmVnaW9uOmUxMDBjZjczMjJhNjQxNjk5YWI4OTU2ZWY2Y2ExYmQ1XzcxMg_ea9e7dd5-969a-4dbe-957d-760140d8bd06">3.0</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="i23f641ea860741b4898eb88a1038ed66_D20200101-20201231" decimals="-5" name="us-gaap:VariableLeaseCost" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90ZXh0cmVnaW9uOmUxMDBjZjczMjJhNjQxNjk5YWI4OTU2ZWY2Y2ExYmQ1XzcxOQ_c4a1777f-1b49-4109-a9c6-c9fc17dd01cb">2.9</ix:nonFraction> million for the years ended December&#160;31, 2022, 2021 and 2020, respectively, and short-term lease costs of $<ix:nonFraction unitRef="usd" contextRef="i44030115f3dc47f394d19aada0ec45cc_D20220101-20221231" decimals="-5" name="us-gaap:ShortTermLeaseCost" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90ZXh0cmVnaW9uOmUxMDBjZjczMjJhNjQxNjk5YWI4OTU2ZWY2Y2ExYmQ1XzgwMQ_86049be0-def5-4428-9b94-cd97b7fb8b7c">1.1</ix:nonFraction> million, $<ix:nonFraction unitRef="usd" contextRef="i9722915df0974c458f470a40cb51bcc3_D20210101-20211231" decimals="-5" name="us-gaap:ShortTermLeaseCost" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90ZXh0cmVnaW9uOmUxMDBjZjczMjJhNjQxNjk5YWI4OTU2ZWY2Y2ExYmQ1XzgwNQ_22ee150b-ce23-4205-a655-5af99fcffd96">1.1</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="i23f641ea860741b4898eb88a1038ed66_D20200101-20201231" decimals="-5" name="us-gaap:ShortTermLeaseCost" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90ZXh0cmVnaW9uOmUxMDBjZjczMjJhNjQxNjk5YWI4OTU2ZWY2Y2ExYmQ1XzgxMg_4a30fdb6-b2c1-4fb7-ada9-71fdbd4c3c9f">0.8</ix:nonFraction> million for the years ended December&#160;31, 2022, 2021 and 2020, respectively. </span></div><div style="padding-left:27pt;text-indent:-27pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(2)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:15.34pt">Includes variable lease costs of $<ix:nonFraction unitRef="usd" contextRef="i08920745a8f5413683e3316127588e2a_D20200101-20201231" decimals="-5" name="us-gaap:VariableLeaseCost" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90ZXh0cmVnaW9uOmUxMDBjZjczMjJhNjQxNjk5YWI4OTU2ZWY2Y2ExYmQ1XzkwOQ_bb77f3c4-3d99-49fb-a1e0-e72fc58e2d09">0.7</ix:nonFraction> million for each of the three years ended December&#160;31, 2022, 2021 and 2020, respectively.</span></div></ix:nonNumeric></ix:continuation></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">69</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:63pt;width:100%"><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div></div><ix:continuation id="i4046fd5dfa454909b70cd52ff55aaf59"><ix:continuation id="i58ff032fa4bf4a0b845bf81048637e8b"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Other Information</span></div><ix:continuation id="i8418f110f03748a188435fd17dc56ff1"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The table below presents supplemental cash flow information related to leases during 2022, 2021 and 2020:</span></div><div><span><br/></span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:62.642%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.600%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash paid for amounts included in the measurement of lease liabilities:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating cash flows for operating leases</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:OperatingLeasePayments" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpiM2M2ZDZhZWNjMTY0MGQxODk1ZjdhZWU1NzQ4OTViNi90YWJsZXJhbmdlOmIzYzZkNmFlY2MxNjQwZDE4OTVmN2FlZTU3NDg5NWI2XzMtMS0xLTEtMTAwMDAy_795d2888-53e9-4b7b-bb73-308e7ce6d01e">27,710</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:OperatingLeasePayments" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpiM2M2ZDZhZWNjMTY0MGQxODk1ZjdhZWU1NzQ4OTViNi90YWJsZXJhbmdlOmIzYzZkNmFlY2MxNjQwZDE4OTVmN2FlZTU3NDg5NWI2XzMtMy0xLTEtMTAwMDAy_8296fd88-3c89-446f-a6a9-899f300b3d54">22,930</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:OperatingLeasePayments" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpiM2M2ZDZhZWNjMTY0MGQxODk1ZjdhZWU1NzQ4OTViNi90YWJsZXJhbmdlOmIzYzZkNmFlY2MxNjQwZDE4OTVmN2FlZTU3NDg5NWI2XzMtNS0xLTEtMTAwMDAy_045f6e4b-ccc3-45a9-871e-52825e4ee735">19,668</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating cash flows for finance leases</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:FinanceLeaseInterestPaymentOnLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpiM2M2ZDZhZWNjMTY0MGQxODk1ZjdhZWU1NzQ4OTViNi90YWJsZXJhbmdlOmIzYzZkNmFlY2MxNjQwZDE4OTVmN2FlZTU3NDg5NWI2XzQtMS0xLTEtMTAwMDAy_c27c530f-80fb-4520-b85d-6bf0b8424657">324</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:FinanceLeaseInterestPaymentOnLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpiM2M2ZDZhZWNjMTY0MGQxODk1ZjdhZWU1NzQ4OTViNi90YWJsZXJhbmdlOmIzYzZkNmFlY2MxNjQwZDE4OTVmN2FlZTU3NDg5NWI2XzQtMy0xLTEtMTAwMDAy_33c1e685-4fbe-4e52-857e-3caa1cfc1e53">218</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:FinanceLeaseInterestPaymentOnLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpiM2M2ZDZhZWNjMTY0MGQxODk1ZjdhZWU1NzQ4OTViNi90YWJsZXJhbmdlOmIzYzZkNmFlY2MxNjQwZDE4OTVmN2FlZTU3NDg5NWI2XzQtNS0xLTEtMTAwMDAy_0a295e41-0c95-426c-9526-387c4369ac38">268</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Financing cash flows for finance leases</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:FinanceLeasePrincipalPayments" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpiM2M2ZDZhZWNjMTY0MGQxODk1ZjdhZWU1NzQ4OTViNi90YWJsZXJhbmdlOmIzYzZkNmFlY2MxNjQwZDE4OTVmN2FlZTU3NDg5NWI2XzUtMS0xLTEtMTAwMDAy_d7e0a27d-f053-4413-b9b4-74e21bbc98b6">2,306</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:FinanceLeasePrincipalPayments" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpiM2M2ZDZhZWNjMTY0MGQxODk1ZjdhZWU1NzQ4OTViNi90YWJsZXJhbmdlOmIzYzZkNmFlY2MxNjQwZDE4OTVmN2FlZTU3NDg5NWI2XzUtMy0xLTEtMTAwMDAy_45d955c4-d6e4-473c-9b2d-5957a49f6276">2,125</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:FinanceLeasePrincipalPayments" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpiM2M2ZDZhZWNjMTY0MGQxODk1ZjdhZWU1NzQ4OTViNi90YWJsZXJhbmdlOmIzYzZkNmFlY2MxNjQwZDE4OTVmN2FlZTU3NDg5NWI2XzUtNS0xLTEtMTAwMDAy_0e41ea2f-c387-4682-8765-212fffb8a7de">2,632</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr></table></div></ix:continuation><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Undiscounted Cash Flows</span></div><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90ZXh0cmVnaW9uOmUxMDBjZjczMjJhNjQxNjk5YWI4OTU2ZWY2Y2ExYmQ1XzEzNDg_03ca2487-ec19-4751-8fc8-44ff7cc8e426" escape="true"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90ZXh0cmVnaW9uOmUxMDBjZjczMjJhNjQxNjk5YWI4OTU2ZWY2Y2ExYmQ1XzEzNDk_04920df1-f317-408e-b602-ba19a5a78dd3" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The table below reconciles the undiscounted cash flows for each of the first five years and total of the remaining years for the finance lease obligations and operating lease obligations recorded on the Consolidated Balance Sheet as of December&#160;31, 2022:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:97.953%"><tr><td style="width:1.0%"></td><td style="width:43.676%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.183%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.546%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.885%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.546%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.885%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.546%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.633%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance&#160;Leases</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating Leases</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Related&#160;Party</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total&#160;Operating</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2023</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzItMS0xLTEtMTAwMDAy_9eb2aacb-88eb-42f7-8cd5-3d87618b70ae">2,954</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25b223b5601449dca61b5ffe8caa493f_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzItMy0xLTEtMTAwMDAy_4061962f-f744-4c92-aa9b-5568f186dee9">1,421</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2a806add24c44945bfa06ae48dc2a5fb_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzItNS0xLTEtMTAwMDAy_7c03c2d9-75bf-4d8b-9df0-e98f5d418c41">27,512</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzItNy0xLTEtMTAwMDAy_1721c51f-9072-4419-b3d5-2b317c30972b">28,933</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2024</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:FinanceLeaseLiabilityPaymentsDueYearTwo" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzMtMS0xLTEtMTAwMDAy_fbdecc8b-26dc-4ad3-af3b-6651e5045ff4">2,438</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25b223b5601449dca61b5ffe8caa493f_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzMtMy0xLTEtMTAwMDAy_bd5c5fa5-4419-4ba6-8119-a3678668e418">1,175</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2a806add24c44945bfa06ae48dc2a5fb_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzMtNS0xLTEtMTAwMDAy_31b02862-5b33-42b3-9d51-c9b6cce551f9">19,222</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzMtNy0xLTEtMTAwMDAy_0a6a16c7-20b9-4a34-b7c9-0f8047fba3c9">20,397</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:FinanceLeaseLiabilityPaymentsDueYearThree" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzQtMS0xLTEtMTAwMDAy_a85c33ff-fefa-44b8-b577-5908970e321c">2,075</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25b223b5601449dca61b5ffe8caa493f_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzQtMy0xLTEtMTAwMDAy_f4e8afe8-a7f0-4ec7-bdd1-a1ba1e65382e">1,017</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2a806add24c44945bfa06ae48dc2a5fb_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzQtNS0xLTEtMTAwMDAy_f22c78b5-1252-4efa-8e99-0ac8cd7ff998">12,837</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzQtNy0xLTEtMTAwMDAy_852c09e7-85e2-445c-af28-667a21024c61">13,854</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:FinanceLeaseLiabilityPaymentsDueYearFour" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzUtMS0xLTEtMTAwMDAy_d9592e96-488a-4484-bccb-a7e9d18f5e1b">1,745</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><ix:nonFraction unitRef="usd" contextRef="i25b223b5601449dca61b5ffe8caa493f_I20221231" xsi:nil="true" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzUtMy0xLTEtMTAwMDAy_d34533a5-5019-427f-b649-9f19d710a87e"></ix:nonFraction></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2a806add24c44945bfa06ae48dc2a5fb_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzUtNS0xLTEtMTAwMDAy_5f53b954-2691-4033-846e-943b40030285">9,114</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzUtNy0xLTEtMTAwMDAy_b18fad1b-1c2f-4d07-8cda-aed696c78f45">9,114</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:FinanceLeaseLiabilityPaymentsDueYearFive" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzYtMS0xLTEtMTAwMDAy_d80d2df3-6586-4682-87d2-42d7e05b311e">774</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25b223b5601449dca61b5ffe8caa493f_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzYtMy0xLTEtMTAwMDAy_3001c353-fbe0-4dfa-8d64-1b7f9bdec4eb">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2a806add24c44945bfa06ae48dc2a5fb_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzYtNS0xLTEtMTAwMDAy_16623ca9-b71e-4134-871d-4aae30effecf">5,252</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzYtNy0xLTEtMTAwMDAy_edb876b1-fba6-4b4b-9484-4a63b2cf46ef">5,252</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:FinanceLeaseLiabilityPaymentsDueAfterYearFive" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzctMS0xLTEtMTAwMDAy_3ef76b94-f7bf-4eaa-b3d5-506619ec1049">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25b223b5601449dca61b5ffe8caa493f_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzctMy0xLTEtMTAwMDAy_ca68ed30-1d3f-4ba7-8118-4a45ea1eb62e">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2a806add24c44945bfa06ae48dc2a5fb_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzctNS0xLTEtMTAwMDAy_3853aa13-6c02-4a29-b084-bae6fb9ecb8a">5,559</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzctNy0xLTEtMTAwMDAy_9eb0ab49-0c37-4cd2-8a50-5ee3b84d78ea">5,559</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total minimum lease payments</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:FinanceLeaseLiabilityPaymentsDue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzgtMS0xLTEtMTAwMDAy_fb2a485b-43af-4717-ad00-23fceed47c71">9,986</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25b223b5601449dca61b5ffe8caa493f_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzgtMy0xLTEtMTAwMDAy_23d5a6a4-d60d-4dae-ba47-7c9de573b85d">3,613</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2a806add24c44945bfa06ae48dc2a5fb_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzgtNS0xLTEtMTAwMDAy_c1d05bd1-608d-4dff-9f2d-d1452283ca4c">79,496</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzgtNy0xLTEtMTAwMDAy_fd0c9b89-26b9-4221-82de-c81e1db849d4">83,109</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: Amounts representing executory costs</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="ibp:FinanceLeaseExecutoryCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzktMS0xLTEtMTAwMDAy_70e29f42-4a78-477b-978d-286d5d74b262">6</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: Amounts representing interest</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:FinanceLeaseLiabilityUndiscountedExcessAmount" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzEwLTEtMS0xLTEwMDAwMg_7bf0eecb-82ef-480e-b583-7eec238b1ef6">1,075</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzEwLTctMS0xLTEwMDAwMg_ce052b2d-8db9-4518-bf14-e3f1084dfd7c">7,175</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Present value of future minimum lease payments</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:FinanceLeaseLiability" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzExLTEtMS0xLTEwMDAwMg_bc95af12-58e6-4523-88a0-9251e61faf11">8,905</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:OperatingLeaseLiability" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzExLTctMS0xLTEwMDAwMg_86bbdfa2-556a-45e8-830b-f409fc809a50">75,934</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: Current obligation under leases</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:FinanceLeaseLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzEyLTEtMS0xLTEwMDAwMg_0e0d8b2e-5ae9-43d5-ab86-956d65b9b931">2,508</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:OperatingLeaseLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzEyLTctMS0xLTEwMDAwMg_9b8b67ce-9e9e-4f09-8fa0-f5c3a0d8e6cc">26,145</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term lease obligations</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:FinanceLeaseLiabilityNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzEzLTEtMS0xLTEwMDAwMg_16956803-2c81-4aab-9146-c4c5c9e12592">6,397</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:OperatingLeaseLiabilityNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzEzLTctMS0xLTEwMDAwMg_e60e87ca-b303-414f-90ee-02c749cb81c0">49,789</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:nonNumeric></ix:continuation></ix:continuation><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_112"></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 10 &#8211; <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:FairValueDisclosuresTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90ZXh0cmVnaW9uOjcyYjQzMjQzZGRkOTQzNjM5MmNkZjNkYWE4NmRiMDQxXzUwMTc_b865259e-a891-4b52-bcc7-f8d007494df4" continuedAt="i4fccad61679b463e82b3e424920f5f73" escape="true">FAIR VALUE MEASUREMENTS</ix:nonNumeric></span></div><ix:continuation id="i4fccad61679b463e82b3e424920f5f73" continuedAt="i4d9dd948aec84ad8a5b2483ee4da1678"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Fair Values</span></div><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:FairValueOfFinancialInstrumentsPolicy" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90ZXh0cmVnaW9uOjcyYjQzMjQzZGRkOTQzNjM5MmNkZjNkYWE4NmRiMDQxXzUwMTg_1700d5b5-db35-4573-b395-d874b8ee4e8f" continuedAt="if4e058f25e45444897a57298bcc977d8" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Fair value is the price that would be received for an asset or paid to transfer a liability (an exit price) in the principal or most advantageous market for the asset or liability in an orderly transaction between market participants on the measurement date.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">ASC 820, &#8220;Fair Value Measurement,&#8221; establishes a fair value hierarchy that requires an entity to maximize the use of observable inputs and minimize the use of unobservable inputs when measuring fair value. The standard describes three levels of inputs that may be used to measure fair value:</span></div><div style="margin-top:6pt;padding-left:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Level 1: Quoted prices (unadjusted) for identical assets or liabilities in active markets that the entity has the ability to access as of the measurement date.</span></div><div style="margin-top:6pt;padding-left:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Level 2: Significant other observable inputs other than Level 1 prices such as quoted prices for similar assets or liabilities; quoted prices in markets that are not active; or other inputs that are observable or can be corroborated by observable market data.</span></div><div style="margin-top:6pt;padding-left:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Level 3: Significant unobservable inputs that reflect a reporting entity&#8217;s own assumptions about the assumptions that market participants would use in pricing an asset or liability.</span></div></ix:nonNumeric></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">70</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:63pt;width:100%"><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div></div><ix:continuation id="i4d9dd948aec84ad8a5b2483ee4da1678" continuedAt="i3fb9760db8d04b2aad68031b225492e2"><ix:continuation id="if4e058f25e45444897a57298bcc977d8" continuedAt="i94279141e202429aa75e2f94796490fb"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Assets and Liabilities Measured at Fair Value on a Recurring Basis</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In many cases, a valuation technique used to measure fair value includes inputs from multiple levels of the fair value hierarchy. The lowest level of significant input determines the placement of the entire fair value measurement in the hierarchy. During the periods presented, there were no transfers between fair value hierarchical levels.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Assets Measured at Fair Value on a Nonrecurring Basis</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Certain assets, specifically other intangible and long-lived assets, are measured at fair value on a nonrecurring basis in periods subsequent to initial recognition. Assets measured at fair value on a nonrecurring basis as of December&#160;31, 2022 and 2021 are categorized based on the lowest level of significant input to the valuation. The assets are measured at fair value when our impairment assessment indicates a carrying value for each of the assets in excess of the asset&#8217;s estimated fair value. Undiscounted cash flows, a Level 3 input, are utilized in determining estimated fair values. During each of the years ended December&#160;31, 2022, 2021 and 2020, we did not record any impairments on these assets required to be measured at fair value on a nonrecurring basis.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Estimated Fair Value of Financial Instruments</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accounts receivable, accounts payable and accrued liabilities as of December&#160;31, 2022 and 2021 approximate fair value due to the short-term maturities of these financial instruments. The carrying amounts of certain long-term debt, including the Term Loan and ABL Revolver as of December&#160;31, 2022 and 2021, approximate fair value due to the variable rate nature of the agreements. The carrying amounts of our operating lease right-of-use assets and the obligations associated with our operating and finance leases as well as our vehicle and equipment notes approximate fair value as of December&#160;31, 2022 and 2021. All debt classifications represent Level 2 fair value measurements. Derivative financial instruments are measured at fair value based on observable market information and appropriate valuation methods. </span></div></ix:continuation><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="i94279141e202429aa75e2f94796490fb">Contingent consideration liabilities arise from future earnout payments to the sellers associated with certain acquisitions and are based on predetermined calculations of certain future results. These future payments are estimated by considering various factors, including business risk and projections. The contingent consideration liabilities are measured at fair value by discounting estimated future payments to their net present value.</ix:continuation> </span></div><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90ZXh0cmVnaW9uOjcyYjQzMjQzZGRkOTQzNjM5MmNkZjNkYWE4NmRiMDQxXzUwMTk_34bf4a0c-88d9-4277-a474-3652e7b5121f" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The fair values of financial assets and liabilities that are recorded at fair value in the Consolidated Balance Sheets and not described above were as follows (in thousands):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:27.408%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.671%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.671%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.233%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.233%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.379%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.233%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.233%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:6.951%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31, 2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31, 2021</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level&#160;1</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level&#160;2</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level&#160;3</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level&#160;1</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level&#160;2</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level&#160;3</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Financial assets:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash equivalents</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzMtMS0xLTEtMTAwMDAy_caf7a98f-1a1f-4eeb-9890-5f409e56e644">191,881</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i373c10e1730d46369af7a873abf1918a_I20221231" decimals="-3" name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzMtMy0xLTEtMTAwMDAy_b087d393-047d-4ffc-8102-a79cb2d7d99e">191,881</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7a34ba2de1b84650b248fe94476806f2_I20221231" decimals="-3" name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzMtNS0xLTEtMTAwMDAy_6891790f-97dd-47e4-85fa-a9f98c7800f1">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib5c4594d67d3429582152cf3aeab11e4_I20221231" decimals="-3" name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzMtNy0xLTEtMTAwMDAy_28aedc81-89da-4947-b728-fcd7ae447bd5">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzMtOS0xLTEtMTAwMDAy_111063e7-a46b-4733-849e-3c6b4442bf14">258,055</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id8b7a65da01c466384496dc24aeb67db_I20211231" decimals="-3" name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzMtMTEtMS0xLTEwMDAwMg_46d4d604-7335-44b5-ac94-5271ad0bece0">258,055</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i71c3fa225acf48de82e4fa30f1967289_I20211231" decimals="-3" name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzMtMTMtMS0xLTEwMDAwMg_295a85ba-cbbd-4fa7-a72a-42544f82c80c">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i338142ec4a614695bfabab290899055c_I20211231" decimals="-3" name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzMtMTUtMS0xLTEwMDAwMg_80ce6867-0a38-41cc-8b34-87946a7fb350">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Derivative financial instruments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:DerivativeAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzQtMS0xLTEtMTAwMDAy_429c66be-1a1c-4c68-9c0c-42bb6f727bc8">38,671</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i373c10e1730d46369af7a873abf1918a_I20221231" decimals="-3" name="us-gaap:DerivativeAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzQtMy0xLTEtMTAwMDAy_f97288ee-a472-48cd-bc4b-569267e06119">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7a34ba2de1b84650b248fe94476806f2_I20221231" decimals="-3" name="us-gaap:DerivativeAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzQtNS0xLTEtMTAwMDAy_78333458-1190-42c8-876f-b6624242f245">38,671</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib5c4594d67d3429582152cf3aeab11e4_I20221231" decimals="-3" name="us-gaap:DerivativeAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzQtNy0xLTEtMTAwMDAy_5fba4142-d228-4d0b-946c-d5393d2552b1">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:DerivativeAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzQtOS0xLTEtMTAwMDAy_fe0a5fd1-9fca-48f2-bc41-517c31fd68c3">14,830</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id8b7a65da01c466384496dc24aeb67db_I20211231" decimals="-3" name="us-gaap:DerivativeAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzQtMTEtMS0xLTEwMDAwMg_03ac5fe7-b0ed-46d9-9705-b43855f55275">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i71c3fa225acf48de82e4fa30f1967289_I20211231" decimals="-3" name="us-gaap:DerivativeAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzQtMTMtMS0xLTEwMDAwMg_2ba3caf0-ff8f-4d7b-8816-4ce7aa10544c">14,830</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i338142ec4a614695bfabab290899055c_I20211231" decimals="-3" name="us-gaap:DerivativeAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzQtMTUtMS0xLTEwMDAwMg_0f7c3daa-b068-483b-8f67-5c0456deb2b9">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzUtMC0xLTEtMTAwMDAy_2f118e6b-355c-4162-8970-b998a5ae5450"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzUtMC0xLTEtMTAwMDAy_70c840c6-6a79-4f97-a58a-b08f6f1bdbef">Total financial assets</span></span></span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:AssetsFairValueDisclosure" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzUtMS0xLTEtMTAwMDAy_0dec2909-9c4d-4a48-9f96-c814141acff2">230,552</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i373c10e1730d46369af7a873abf1918a_I20221231" decimals="-3" name="us-gaap:AssetsFairValueDisclosure" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzUtMy0xLTEtMTAwMDAy_a9a8b526-3578-42f1-b43c-3db86c4c1b9d">191,881</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7a34ba2de1b84650b248fe94476806f2_I20221231" decimals="-3" name="us-gaap:AssetsFairValueDisclosure" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzUtNS0xLTEtMTAwMDAy_a43be496-7819-4f53-bbc0-8f9a70c8089a">38,671</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib5c4594d67d3429582152cf3aeab11e4_I20221231" decimals="-3" name="us-gaap:AssetsFairValueDisclosure" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzUtNy0xLTEtMTAwMDAy_fdcbb5ea-b8ff-4e82-9d0b-20f5dc50db56">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:AssetsFairValueDisclosure" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzUtOS0xLTEtMTAwMDAy_67c48c51-c674-4807-809f-167bfbd4b9a0">272,885</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id8b7a65da01c466384496dc24aeb67db_I20211231" decimals="-3" name="us-gaap:AssetsFairValueDisclosure" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzUtMTEtMS0xLTEwMDAwMg_b475d636-c226-442c-a152-60cb5bd4abbc">258,055</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i71c3fa225acf48de82e4fa30f1967289_I20211231" decimals="-3" name="us-gaap:AssetsFairValueDisclosure" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzUtMTMtMS0xLTEwMDAwMg_d1ae8c97-d827-48bd-8d88-dc363bc9a008">14,830</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i338142ec4a614695bfabab290899055c_I20211231" decimals="-3" name="us-gaap:AssetsFairValueDisclosure" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzUtMTUtMS0xLTEwMDAwMg_f9c07b08-6d0f-44e3-83df-91fc722c7ae1">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Financial liabilities:</span></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Contingent consideration</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:BusinessCombinationContingentConsiderationLiability" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzctMS0xLTEtMTAwMDAy_db23074c-17dd-406e-87f5-7dd7cdf960ea">1,858</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i373c10e1730d46369af7a873abf1918a_I20221231" decimals="-3" name="us-gaap:BusinessCombinationContingentConsiderationLiability" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzctMy0xLTEtMTAwMDAy_d9869050-5cbf-43a8-8a56-7f9741233b70">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7a34ba2de1b84650b248fe94476806f2_I20221231" decimals="-3" name="us-gaap:BusinessCombinationContingentConsiderationLiability" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzctNS0xLTEtMTAwMDAy_81ce7127-9324-434b-93e8-a27a2bb31a14">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib5c4594d67d3429582152cf3aeab11e4_I20221231" decimals="-3" name="us-gaap:BusinessCombinationContingentConsiderationLiability" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzctNy0xLTEtMTAwMDAy_81a79bd9-a75c-49f9-a917-6e1c9d1309e3">1,858</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:BusinessCombinationContingentConsiderationLiability" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzctOS0xLTEtMTAwMDAy_67657e29-480f-4f79-b54c-e019de553ee7">11,170</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id8b7a65da01c466384496dc24aeb67db_I20211231" decimals="-3" name="us-gaap:BusinessCombinationContingentConsiderationLiability" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzctMTEtMS0xLTEwMDAwMg_fa7f42a5-d4bf-43f1-8ef5-8a81b0bf2cf0">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i71c3fa225acf48de82e4fa30f1967289_I20211231" decimals="-3" name="us-gaap:BusinessCombinationContingentConsiderationLiability" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzctMTMtMS0xLTEwMDAwMg_9e3f4d2c-c91a-4260-9ad9-d790748c37b9">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i338142ec4a614695bfabab290899055c_I20211231" decimals="-3" name="us-gaap:BusinessCombinationContingentConsiderationLiability" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzctMTUtMS0xLTEwMDAwMg_a5053f20-17fb-4916-939f-0bc5494a80ea">11,170</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Derivative financial instruments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:DerivativeLiabilities" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzgtMS0xLTEtMTAwMDAy_8151f5f8-aede-44bb-870c-eb0ed1f442a2">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i373c10e1730d46369af7a873abf1918a_I20221231" decimals="-3" name="us-gaap:DerivativeLiabilities" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzgtMy0xLTEtMTAwMDAy_00eb96d3-894b-4646-bf92-e87ec938839e">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7a34ba2de1b84650b248fe94476806f2_I20221231" decimals="-3" name="us-gaap:DerivativeLiabilities" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzgtNS0xLTEtMTAwMDAy_209448be-a5c0-42b9-845e-8a4ab5ee3a4c">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib5c4594d67d3429582152cf3aeab11e4_I20221231" decimals="-3" name="us-gaap:DerivativeLiabilities" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzgtNy0xLTEtMTAwMDAy_faec5cee-f9e7-4aa0-99bc-df6713d31a88">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:DerivativeLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzgtOS0xLTEtMTAwMDAy_7357c88f-398b-43ca-bc6d-595e8d31daf7">1,937</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id8b7a65da01c466384496dc24aeb67db_I20211231" decimals="-3" name="us-gaap:DerivativeLiabilities" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzgtMTEtMS0xLTEwMDAwMg_4f3e2d93-7ed5-490e-b269-40fa32ede56a">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i71c3fa225acf48de82e4fa30f1967289_I20211231" decimals="-3" name="us-gaap:DerivativeLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzgtMTMtMS0xLTEwMDAwMg_58451c8c-41eb-4794-9b46-024949f1393f">1,937</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i338142ec4a614695bfabab290899055c_I20211231" decimals="-3" name="us-gaap:DerivativeLiabilities" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzgtMTUtMS0xLTEwMDAwMg_7e70d02a-25e2-4eec-a31e-9be9f26a3025">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzktMC0xLTEtMTAwMDAy_18ae74f0-19f1-4416-a30d-86ea73bdfe06"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzktMC0xLTEtMTAwMDAy_c8d93f89-6621-4092-8404-217ee2466660">Total financial liabilities</span></span></span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:LiabilitiesFairValueDisclosure" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzktMS0xLTEtMTAwMDAy_c08c976c-34b7-42dc-99d4-8b99da8c5acf">1,858</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i373c10e1730d46369af7a873abf1918a_I20221231" decimals="-3" name="us-gaap:LiabilitiesFairValueDisclosure" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzktMy0xLTEtMTAwMDAy_70e08dec-1ec4-432b-900c-5db9440085b3">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7a34ba2de1b84650b248fe94476806f2_I20221231" decimals="-3" name="us-gaap:LiabilitiesFairValueDisclosure" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzktNS0xLTEtMTAwMDAy_6a936099-1a11-4122-b5b1-3abc8e446949">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib5c4594d67d3429582152cf3aeab11e4_I20221231" decimals="-3" name="us-gaap:LiabilitiesFairValueDisclosure" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzktNy0xLTEtMTAwMDAy_7675cb79-bbe1-4abe-b8f7-a599a57795d2">1,858</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:LiabilitiesFairValueDisclosure" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzktOS0xLTEtMTAwMDAy_33e723a0-45f4-430e-93aa-df968ad1f861">13,107</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id8b7a65da01c466384496dc24aeb67db_I20211231" decimals="-3" name="us-gaap:LiabilitiesFairValueDisclosure" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzktMTEtMS0xLTEwMDAwMg_c8824375-1600-49a7-a961-b752d0959eac">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i71c3fa225acf48de82e4fa30f1967289_I20211231" decimals="-3" name="us-gaap:LiabilitiesFairValueDisclosure" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzktMTMtMS0xLTEwMDAwMg_4f5c6b00-d3fe-417a-8640-a10e1fa06b0a">1,937</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i338142ec4a614695bfabab290899055c_I20211231" decimals="-3" name="us-gaap:LiabilitiesFairValueDisclosure" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzktMTUtMS0xLTEwMDAwMg_dfecf59c-3996-415f-b479-d9bbc89addbd">11,170</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See Note 5, Cash and Cash Equivalents, for more information on cash equivalents included in the table above. Also see Note 12, Derivatives and Hedging Activities, for more information on derivative financial instruments.</span></div></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">71</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:63pt;width:100%"><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div></div><ix:continuation id="i3fb9760db8d04b2aad68031b225492e2"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90ZXh0cmVnaW9uOjcyYjQzMjQzZGRkOTQzNjM5MmNkZjNkYWE4NmRiMDQxXzUwMjA_3b4ad44e-6720-4ef9-a0aa-6b7ae47da527" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The change in fair value of the contingent consideration (a Level 3 input) was as follows (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:60.526%"><tr><td style="width:1.0%"></td><td style="width:77.885%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.915%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Contingent consideration liability&#8212;January 1, 2022</span></div></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZTpiZGIwOTFiMjVlNjQ0OWRjOGI1MGI2ODZkYWNlZTkwOS90YWJsZXJhbmdlOmJkYjA5MWIyNWU2NDQ5ZGM4YjUwYjY4NmRhY2VlOTA5XzAtMS0xLTEtMTAwMDAy_dd443d3b-1e73-4416-9f8a-cc6909fb1935">11,170</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Preliminary purchase price</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZTpiZGIwOTFiMjVlNjQ0OWRjOGI1MGI2ODZkYWNlZTkwOS90YWJsZXJhbmdlOmJkYjA5MWIyNWU2NDQ5ZGM4YjUwYjY4NmRhY2VlOTA5XzEtMS0xLTEtMTAwMDAy_82b1efdc-e87a-4368-a551-af8f560fb6c2">15,039</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fair value adjustments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZTpiZGIwOTFiMjVlNjQ0OWRjOGI1MGI2ODZkYWNlZTkwOS90YWJsZXJhbmdlOmJkYjA5MWIyNWU2NDQ5ZGM4YjUwYjY4NmRhY2VlOTA5XzItMS0xLTEtMTAwMDAy_a126835b-d78a-4cdb-bd6b-be3f58e80bda">994</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accretion in value</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="ibp:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityAccretionExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZTpiZGIwOTFiMjVlNjQ0OWRjOGI1MGI2ODZkYWNlZTkwOS90YWJsZXJhbmdlOmJkYjA5MWIyNWU2NDQ5ZGM4YjUwYjY4NmRhY2VlOTA5XzMtMS0xLTEtMTAwMDAy_135b89de-e641-4d0d-bdfe-6e06bc28f8e7">743</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gains on acquisition earnouts</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="ibp:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnContingentConsideration" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZTpiZGIwOTFiMjVlNjQ0OWRjOGI1MGI2ODZkYWNlZTkwOS90YWJsZXJhbmdlOmJkYjA5MWIyNWU2NDQ5ZGM4YjUwYjY4NmRhY2VlOTA5XzQtMS0xLTEtMTAwMDAy_74e9a319-c402-4055-926f-a9ffa410a23c">16,109</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Settlement adjustments</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZTpiZGIwOTFiMjVlNjQ0OWRjOGI1MGI2ODZkYWNlZTkwOS90YWJsZXJhbmdlOmJkYjA5MWIyNWU2NDQ5ZGM4YjUwYjY4NmRhY2VlOTA5XzUtMS0xLTEtMTA3Mzg4_9b6ee3be-01d2-4eab-acd2-971d934a6cc1">505</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amounts paid to sellers</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchasesSalesIssuancesSettlements" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZTpiZGIwOTFiMjVlNjQ0OWRjOGI1MGI2ODZkYWNlZTkwOS90YWJsZXJhbmdlOmJkYjA5MWIyNWU2NDQ5ZGM4YjUwYjY4NmRhY2VlOTA5XzUtMS0xLTEtMTAwMDAy_182f02a4-efcd-4230-a15f-841166f7167d">7,486</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Contingent consideration liability&#8212;December&#160;31, 2022</span></div></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZTpiZGIwOTFiMjVlNjQ0OWRjOGI1MGI2ODZkYWNlZTkwOS90YWJsZXJhbmdlOmJkYjA5MWIyNWU2NDQ5ZGM4YjUwYjY4NmRhY2VlOTA5XzYtMS0xLTEtMTAwMDAy_6b2fcc8a-d738-4d19-ae17-cd93b8fa609c">1,858</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr></table></div></ix:nonNumeric><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The gains on acquisition earnouts in the above table include a $<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-5" name="ibp:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnEarnoutLiability" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90ZXh0cmVnaW9uOjcyYjQzMjQzZGRkOTQzNjM5MmNkZjNkYWE4NmRiMDQxXzU0OTc1NTgxODk1Mg_073e6e26-13d6-41ca-a1ac-4b254fd390c7">15.1</ix:nonFraction> million gain that occurred in the fourth quarter on an earnout that was determined to no longer be probable of payment as a result of revised earnout target expectations. The earnout related to one of our 2022 acquisitions and is included within <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90ZXh0cmVnaW9uOjcyYjQzMjQzZGRkOTQzNjM5MmNkZjNkYWE4NmRiMDQxXzE2NDkyNjc0NTIzMDk_23ad3ebf-7c72-49be-a046-37d9cc2eb568"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90ZXh0cmVnaW9uOjcyYjQzMjQzZGRkOTQzNjM5MmNkZjNkYWE4NmRiMDQxXzE2NDkyNjc0NTIzMDk_639b19f3-3770-44c4-883d-81cef8dd0039">gains on acquisition earnouts</span></span> in operating expenses on the Consolidated Statements of Operations and Comprehensive Income. See Note 18, Business Combinations, for further information. The accretion in value of contingent consideration liabilities is included within administrative expenses on the Consolidated Statements of Operations and Comprehensive Income.</span></div><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:FairValueByBalanceSheetGroupingTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90ZXh0cmVnaW9uOjcyYjQzMjQzZGRkOTQzNjM5MmNkZjNkYWE4NmRiMDQxXzUwMjE_81dc6c05-03bf-4a8e-b05a-3429a3fa2cb2" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The carrying values and associated fair values of financial assets and liabilities that are not recorded at fair value in the Consolidated Balance Sheets and not described above include our Senior Notes. To estimate fair value of our Senior Notes, we utilized third-party quotes which are derived all or in part from model prices, external sources or market prices. The Senior Notes represent a Level 2 fair value measurement and are as follows (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:69.883%"><tr><td style="width:1.0%"></td><td style="width:21.284%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.937%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.846%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.100%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.846%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.937%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.846%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.104%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31, 2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31, 2021</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Carrying&#160;Value</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fair&#160;Value</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Carrying&#160;Value</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fair&#160;Value</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Senior Notes </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1ecef401d2d54e20b0a5fd6493a9fdee_I20221231" decimals="-3" name="us-gaap:LongTermDebtFairValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZTo0OGRiNDdiMGFmMDU0MDQwOThjYjRlN2ZkNDNlNTVmMi90YWJsZXJhbmdlOjQ4ZGI0N2IwYWYwNTQwNDA5OGNiNGU3ZmQ0M2U1NWYyXzMtMS0xLTEtMTAwMDAy_9e015b27-34ab-42cc-965b-62204ce24627">300,000</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib72425e5789e464eb55e91e39f29472a_I20221231" decimals="-3" name="us-gaap:LongTermDebtFairValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZTo0OGRiNDdiMGFmMDU0MDQwOThjYjRlN2ZkNDNlNTVmMi90YWJsZXJhbmdlOjQ4ZGI0N2IwYWYwNTQwNDA5OGNiNGU3ZmQ0M2U1NWYyXzMtMy0xLTEtMTAwMDAy_7ceecfad-7b1c-4640-93a1-0e8620ab5f00">270,993</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iee04fb3fcd05431d9f4a24a96a9218c6_I20211231" decimals="-3" name="us-gaap:LongTermDebtFairValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZTo0OGRiNDdiMGFmMDU0MDQwOThjYjRlN2ZkNDNlNTVmMi90YWJsZXJhbmdlOjQ4ZGI0N2IwYWYwNTQwNDA5OGNiNGU3ZmQ0M2U1NWYyXzMtNS0xLTEtMTAwMDAy_1601e7d6-77a6-40e0-abe4-39b829a63f43">300,000</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3033586cc36f48f0b3220b9deb8b4ed2_I20211231" decimals="-3" name="us-gaap:LongTermDebtFairValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZTo0OGRiNDdiMGFmMDU0MDQwOThjYjRlN2ZkNDNlNTVmMi90YWJsZXJhbmdlOjQ4ZGI0N2IwYWYwNTQwNDA5OGNiNGU3ZmQ0M2U1NWYyXzMtNy0xLTEtMTAwMDAy_ce8ce41c-e709-4a02-a9a1-b4855b6a30ec">311,028</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="padding-left:27pt;text-indent:49.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(1)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:19.84pt">Excludes the impact of unamortized debt issuance costs.</span></div></ix:nonNumeric><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Also see Note 8, Long-Term Debt, for more information on our Senior Notes.</span></div></ix:continuation><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_1514"></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 11 - <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:SegmentReportingDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGV4dHJlZ2lvbjpjOWM0MGMwYjIwZjY0YTI2YTQ2NzQ4MjRkMjBhMzBlM18xNjQ5MjY3NDQ0ODIz_fadbffd2-ce28-4139-bbfc-6bc76bfc0154" continuedAt="i68775efe52ce4ad3acdffc52455907cd" escape="true">INFORMATION ON SEGMENTS</ix:nonNumeric></span></div><ix:continuation id="i68775efe52ce4ad3acdffc52455907cd" continuedAt="i6f136b86ef2249ddbc9aec11bb884395"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the first quarter of 2022, our Chief Executive Officer, who is also our Chief Operating Decision Maker ("CODM"), changed the manner in which he reviews financial information for purposes of assessing business performance, managing the business and allocating resources. In conjunction with this change, we realigned our segment structure resulting in our Company having <ix:nonFraction unitRef="segment" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="INF" name="us-gaap:NumberOfOperatingSegments" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGV4dHJlZ2lvbjpjOWM0MGMwYjIwZjY0YTI2YTQ2NzQ4MjRkMjBhMzBlM181NDk3NTU4MTQzMDU_6f8b3661-acff-4acd-bb48-a92703c84699">three</ix:nonFraction> operating segments consisting of Installation, Distribution and Manufacturing. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our Installation operating segment represents the majority of our net revenue and gross profit and forms our <ix:nonFraction unitRef="segment" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="INF" name="us-gaap:NumberOfReportableSegments" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGV4dHJlZ2lvbjpjOWM0MGMwYjIwZjY0YTI2YTQ2NzQ4MjRkMjBhMzBlM181NDk3NTU4MTQ0OTg_688d0332-34e6-46e2-8912-775ad024f742">one</ix:nonFraction> reportable segment. This operating segment represents the service-based installation of insulation and complementary building products in the residential new construction, repair and remodel and commercial construction end markets from our national network of branch locations. These branch locations have similar economic and operating characteristics including the nature of products and services offered, operating procedures and risks, customer bases, employee incentives, material procurement and shared corporate resources which led us to conclude that they combine to form <ix:nonFraction unitRef="segment" contextRef="i7ee60c6c46b64377a7d9ef1866ddf1f4_D20220101-20221231" decimals="INF" name="us-gaap:NumberOfOperatingSegments" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGV4dHJlZ2lvbjpjOWM0MGMwYjIwZjY0YTI2YTQ2NzQ4MjRkMjBhMzBlM181NDk3NTU4MTUwODI_bf3212b3-f19d-4494-bb32-ccab47015246">one</ix:nonFraction> operating segment. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Other category reported below reflects the operations of our <ix:nonFraction unitRef="segment" contextRef="ie4442c3f4fa34930817b0baa33f7126e_D20220101-20221231" decimals="INF" name="us-gaap:NumberOfOperatingSegments" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGV4dHJlZ2lvbjpjOWM0MGMwYjIwZjY0YTI2YTQ2NzQ4MjRkMjBhMzBlM181NDk3NTU4MTUxNzE_e7fcc4d1-58a4-4ac5-be09-24618282d4f0">two</ix:nonFraction> remaining operating segments, Distribution and Manufacturing, which do not meet the quantitative thresholds for separate reporting. Our Distribution operating segment includes our recently acquired distribution businesses that sell insulation, gutters and accessories primarily to installers of these products who operate in multiple end markets. Our Manufacturing operating segment consists of our cellulose insulation manufacturing operation which was previously combined with our Installation operating segment. In addition to sales of cellulose insulation, revenues from this operating segment consist of sales of asphalt and industrial fibers to distributors and installers of these products. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Installation reportable segment includes substantially all of our net revenue from services while net revenue included in the Other category includes substantially all of our net revenue from sales of products. The intercompany sales from the Other category to the Installation reportable segment include a profit margin while our Installation segment records these transactions at cost. These transactions are shown in the Eliminations column in the tables below.</span></div></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">72</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:63pt;width:100%"><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div></div><ix:continuation id="i6f136b86ef2249ddbc9aec11bb884395" continuedAt="ic8cd30a267074d7e8ac583c44980ac3d"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The key metrics used to assess the performance of our operating segments are revenue and segment gross profit as these are the metrics used by our CODM to review results, assess performance and allocate resources. We define segment gross profit as revenue less cost of sales, excluding depreciation and amortization. We do not report total assets, depreciation and amortization expenses included in reported cost of sales, operating expenses or other expense, net by segment because our CODM does not use this information to assess segment performance or allocate resources. <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGV4dHJlZ2lvbjpjOWM0MGMwYjIwZjY0YTI2YTQ2NzQ4MjRkMjBhMzBlM18xNjQ5MjY3NDQ0ODI0_6c5cad89-7cc8-42f8-9fc6-d6c4a0f7b63e" continuedAt="ie2497c4d0d8a4c38b6d8317675bca068" escape="true">The following tables represents our segment information for the years ended December&#160;31, 2022, 2021 and 2020 (in thousands):</ix:nonNumeric></span></div><ix:continuation id="ie2497c4d0d8a4c38b6d8317675bca068" continuedAt="icc2c7f392e8f4c519008364c534571a0"><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:38.666%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.525%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Year ended December 31, 2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Installation</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Eliminations</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Consolidated</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2b3c149ccdaf411abf7c699fed56e802_D20220101-20221231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6YTIyODlhMzU2ZTAzNGE4Yjg4NzBkYzAxMjk3OTMwYjcvdGFibGVyYW5nZTphMjI4OWEzNTZlMDM0YThiODg3MGRjMDEyOTc5MzBiN18yLTEtMS0xLTEwMTU2Mg_9c36fce7-2290-4f9d-80f9-1ed60fd47cd3">2,513,557</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25a7fdace7a84c2d9575a891f8027ac0_D20220101-20221231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6YTIyODlhMzU2ZTAzNGE4Yjg4NzBkYzAxMjk3OTMwYjcvdGFibGVyYW5nZTphMjI4OWEzNTZlMDM0YThiODg3MGRjMDEyOTc5MzBiN18yLTMtMS0xLTEwMTU2Mg_5c7a8e0d-40a1-4464-931c-5f5146f49d0d">162,433</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i18b77c51bf3a4f958b8b0f2900724f08_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6YTIyODlhMzU2ZTAzNGE4Yjg4NzBkYzAxMjk3OTMwYjcvdGFibGVyYW5nZTphMjI4OWEzNTZlMDM0YThiODg3MGRjMDEyOTc5MzBiN18yLTUtMS0xLTEwMTU2Mg_b176dfa3-4080-4dea-805f-b5bdf324d90e">6,146</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6YTIyODlhMzU2ZTAzNGE4Yjg4NzBkYzAxMjk3OTMwYjcvdGFibGVyYW5nZTphMjI4OWEzNTZlMDM0YThiODg3MGRjMDEyOTc5MzBiN18yLTctMS0xLTEwMTU2Mg_0bff2f19-40d3-47f1-9c95-67384ea74688">2,669,844</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of sales </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2b3c149ccdaf411abf7c699fed56e802_D20220101-20221231" decimals="-3" name="us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6YTIyODlhMzU2ZTAzNGE4Yjg4NzBkYzAxMjk3OTMwYjcvdGFibGVyYW5nZTphMjI4OWEzNTZlMDM0YThiODg3MGRjMDEyOTc5MzBiN18zLTEtMS0xLTEwMTU2Mg_d5daba2b-cd1b-434e-bda9-b4228b0cddb6">1,678,771</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25a7fdace7a84c2d9575a891f8027ac0_D20220101-20221231" decimals="-3" name="us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6YTIyODlhMzU2ZTAzNGE4Yjg4NzBkYzAxMjk3OTMwYjcvdGFibGVyYW5nZTphMjI4OWEzNTZlMDM0YThiODg3MGRjMDEyOTc5MzBiN18zLTMtMS0xLTEwMTU2Mg_37894871-d7bd-41bf-9973-97b150e60362">123,705</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i18b77c51bf3a4f958b8b0f2900724f08_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6YTIyODlhMzU2ZTAzNGE4Yjg4NzBkYzAxMjk3OTMwYjcvdGFibGVyYW5nZTphMjI4OWEzNTZlMDM0YThiODg3MGRjMDEyOTc5MzBiN18zLTUtMS0xLTEwMTU2Mg_bd943f07-e8c2-415d-b163-9bcc5d0f618b">4,826</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6YTIyODlhMzU2ZTAzNGE4Yjg4NzBkYzAxMjk3OTMwYjcvdGFibGVyYW5nZTphMjI4OWEzNTZlMDM0YThiODg3MGRjMDEyOTc5MzBiN18zLTctMS0xLTEwMTU2Mg_0e3afc9b-bbd9-4afe-8e15-d9ff9cfa7754">1,797,650</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Segment gross profit</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2b3c149ccdaf411abf7c699fed56e802_D20220101-20221231" decimals="-3" name="ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6YTIyODlhMzU2ZTAzNGE4Yjg4NzBkYzAxMjk3OTMwYjcvdGFibGVyYW5nZTphMjI4OWEzNTZlMDM0YThiODg3MGRjMDEyOTc5MzBiN180LTEtMS0xLTEwMTU2Mg_59096e8f-2c0a-4633-ae1e-f569a17162af">834,786</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25a7fdace7a84c2d9575a891f8027ac0_D20220101-20221231" decimals="-3" name="ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6YTIyODlhMzU2ZTAzNGE4Yjg4NzBkYzAxMjk3OTMwYjcvdGFibGVyYW5nZTphMjI4OWEzNTZlMDM0YThiODg3MGRjMDEyOTc5MzBiN180LTMtMS0xLTEwMTU2Mg_3f2d621b-70ac-46da-9c4c-47edd57ed8e8">38,728</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i18b77c51bf3a4f958b8b0f2900724f08_D20220101-20221231" decimals="-3" sign="-" name="ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6YTIyODlhMzU2ZTAzNGE4Yjg4NzBkYzAxMjk3OTMwYjcvdGFibGVyYW5nZTphMjI4OWEzNTZlMDM0YThiODg3MGRjMDEyOTc5MzBiN180LTUtMS0xLTEwMTU2Mg_cfbd81bd-26ab-4c3a-bb44-4323e2a5f23b">1,320</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8575354b2fbb4902ae0b5a815b512e19_D20220101-20221231" decimals="-3" name="ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6YTIyODlhMzU2ZTAzNGE4Yjg4NzBkYzAxMjk3OTMwYjcvdGFibGVyYW5nZTphMjI4OWEzNTZlMDM0YThiODg3MGRjMDEyOTc5MzBiN180LTctMS0xLTEwMTU2Mg_19556562-53f4-49f2-a1b4-9faf897cd236">872,194</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Segment gross profit percentage</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i2b3c149ccdaf411abf7c699fed56e802_D20220101-20221231" decimals="3" name="ibp:AdjustedGrossProfitPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6YTIyODlhMzU2ZTAzNGE4Yjg4NzBkYzAxMjk3OTMwYjcvdGFibGVyYW5nZTphMjI4OWEzNTZlMDM0YThiODg3MGRjMDEyOTc5MzBiN181LTEtMS0xLTExNzE2Mg_06eefbe5-7226-4f6d-9925-bfebe0efc5a5">33.2</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i25a7fdace7a84c2d9575a891f8027ac0_D20220101-20221231" decimals="3" name="ibp:AdjustedGrossProfitPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6YTIyODlhMzU2ZTAzNGE4Yjg4NzBkYzAxMjk3OTMwYjcvdGFibGVyYW5nZTphMjI4OWEzNTZlMDM0YThiODg3MGRjMDEyOTc5MzBiN181LTMtMS0xLTExNzE2Mg_393a7322-5b09-425d-a30b-59c41cc7fc6e">23.8</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i18b77c51bf3a4f958b8b0f2900724f08_D20220101-20221231" decimals="3" name="ibp:AdjustedGrossProfitPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6YTIyODlhMzU2ZTAzNGE4Yjg4NzBkYzAxMjk3OTMwYjcvdGFibGVyYW5nZTphMjI4OWEzNTZlMDM0YThiODg3MGRjMDEyOTc5MzBiN181LTUtMS0xLTExNzE2Mg_bca32be5-3266-4e31-a901-2c6f2e79f2a1">21.5</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="3" name="ibp:AdjustedGrossProfitPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6YTIyODlhMzU2ZTAzNGE4Yjg4NzBkYzAxMjk3OTMwYjcvdGFibGVyYW5nZTphMjI4OWEzNTZlMDM0YThiODg3MGRjMDEyOTc5MzBiN181LTctMS0xLTExNzE2Mg_d0910f15-a726-4913-9cc8-af025fb06133">32.7</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:38.666%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.525%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Year ended December 31, 2021</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Installation</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Eliminations</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Consolidated</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0a90c295d4394ee39a429acf25490e2c_D20210101-20211231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ZTgwNGQ3M2JlODA0NDYyN2IyZGJjMjhlMDM3ZDhkYTUvdGFibGVyYW5nZTplODA0ZDczYmU4MDQ0NjI3YjJkYmMyOGUwMzdkOGRhNV8yLTEtMS0xLTEwMTYxMA_78069de4-c659-4fac-8f50-149c86f8b6e4">1,941,543</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i553d5969138e460a9bf309e11f5f8a26_D20210101-20211231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ZTgwNGQ3M2JlODA0NDYyN2IyZGJjMjhlMDM3ZDhkYTUvdGFibGVyYW5nZTplODA0ZDczYmU4MDQ0NjI3YjJkYmMyOGUwMzdkOGRhNV8yLTMtMS0xLTEwMTYxMA_ca5837d0-5db6-4244-9b1a-9b65409d4ff2">29,332</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia59f114338e14376874dfbd1aaebd2a7_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ZTgwNGQ3M2JlODA0NDYyN2IyZGJjMjhlMDM3ZDhkYTUvdGFibGVyYW5nZTplODA0ZDczYmU4MDQ0NjI3YjJkYmMyOGUwMzdkOGRhNV8yLTUtMS0xLTEwMTYxMA_afe99753-a82c-4167-81df-41a797efd32e">2,225</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ZTgwNGQ3M2JlODA0NDYyN2IyZGJjMjhlMDM3ZDhkYTUvdGFibGVyYW5nZTplODA0ZDczYmU4MDQ0NjI3YjJkYmMyOGUwMzdkOGRhNV8yLTctMS0xLTEwMTYxMA_8af0540b-bfb1-43c2-95d6-80eaa08735fb">1,968,650</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of sales </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0a90c295d4394ee39a429acf25490e2c_D20210101-20211231" decimals="-3" name="us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ZTgwNGQ3M2JlODA0NDYyN2IyZGJjMjhlMDM3ZDhkYTUvdGFibGVyYW5nZTplODA0ZDczYmU4MDQ0NjI3YjJkYmMyOGUwMzdkOGRhNV8zLTEtMS0xLTEwMTYxMA_785d774c-2b86-439f-95a1-3bdb5ab6c60f">1,317,739</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i553d5969138e460a9bf309e11f5f8a26_D20210101-20211231" decimals="-3" name="us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ZTgwNGQ3M2JlODA0NDYyN2IyZGJjMjhlMDM3ZDhkYTUvdGFibGVyYW5nZTplODA0ZDczYmU4MDQ0NjI3YjJkYmMyOGUwMzdkOGRhNV8zLTMtMS0xLTEwMTYxMA_6b2a9815-c833-495c-9e4e-7c4fb692b169">22,155</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia59f114338e14376874dfbd1aaebd2a7_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ZTgwNGQ3M2JlODA0NDYyN2IyZGJjMjhlMDM3ZDhkYTUvdGFibGVyYW5nZTplODA0ZDczYmU4MDQ0NjI3YjJkYmMyOGUwMzdkOGRhNV8zLTUtMS0xLTEwMTYxMA_9df7830e-29e1-4d67-a38c-c6fb7f0c71bd">1,701</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ZTgwNGQ3M2JlODA0NDYyN2IyZGJjMjhlMDM3ZDhkYTUvdGFibGVyYW5nZTplODA0ZDczYmU4MDQ0NjI3YjJkYmMyOGUwMzdkOGRhNV8zLTctMS0xLTEwMTYxMA_3d16ffb7-6454-4769-8b88-235a30002f3b">1,338,193</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Segment gross profit</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0a90c295d4394ee39a429acf25490e2c_D20210101-20211231" decimals="-3" name="ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ZTgwNGQ3M2JlODA0NDYyN2IyZGJjMjhlMDM3ZDhkYTUvdGFibGVyYW5nZTplODA0ZDczYmU4MDQ0NjI3YjJkYmMyOGUwMzdkOGRhNV80LTEtMS0xLTEwMTYxMA_71f4be4c-9fb9-46ab-b1d3-12cf9430634a">623,804</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i553d5969138e460a9bf309e11f5f8a26_D20210101-20211231" decimals="-3" name="ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ZTgwNGQ3M2JlODA0NDYyN2IyZGJjMjhlMDM3ZDhkYTUvdGFibGVyYW5nZTplODA0ZDczYmU4MDQ0NjI3YjJkYmMyOGUwMzdkOGRhNV80LTMtMS0xLTEwMTYxMA_3febd83e-d129-487c-90cc-a247e6409bc5">7,177</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia59f114338e14376874dfbd1aaebd2a7_D20210101-20211231" decimals="-3" sign="-" name="ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ZTgwNGQ3M2JlODA0NDYyN2IyZGJjMjhlMDM3ZDhkYTUvdGFibGVyYW5nZTplODA0ZDczYmU4MDQ0NjI3YjJkYmMyOGUwMzdkOGRhNV80LTUtMS0xLTEwMTYxMA_13099b47-b27f-4634-988a-afa7de5d3283">524</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie5905ba0719040438b112fb99f9b953c_D20210101-20211231" decimals="-3" name="ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ZTgwNGQ3M2JlODA0NDYyN2IyZGJjMjhlMDM3ZDhkYTUvdGFibGVyYW5nZTplODA0ZDczYmU4MDQ0NjI3YjJkYmMyOGUwMzdkOGRhNV80LTctMS0xLTEwMTYxMA_1e9da2a8-c651-4da0-8cdc-8aa409fd02dd">630,457</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Segment gross profit percentage</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i0a90c295d4394ee39a429acf25490e2c_D20210101-20211231" decimals="3" name="ibp:AdjustedGrossProfitPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ZTgwNGQ3M2JlODA0NDYyN2IyZGJjMjhlMDM3ZDhkYTUvdGFibGVyYW5nZTplODA0ZDczYmU4MDQ0NjI3YjJkYmMyOGUwMzdkOGRhNV81LTEtMS0xLTExNzIxMg_66732278-a583-4615-af27-8c46bc6ed3ac">32.1</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i553d5969138e460a9bf309e11f5f8a26_D20210101-20211231" decimals="3" name="ibp:AdjustedGrossProfitPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ZTgwNGQ3M2JlODA0NDYyN2IyZGJjMjhlMDM3ZDhkYTUvdGFibGVyYW5nZTplODA0ZDczYmU4MDQ0NjI3YjJkYmMyOGUwMzdkOGRhNV81LTMtMS0xLTExNzIxMg_f1197e93-20c9-4919-9854-d8ff62d37096">24.5</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ia59f114338e14376874dfbd1aaebd2a7_D20210101-20211231" decimals="3" name="ibp:AdjustedGrossProfitPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ZTgwNGQ3M2JlODA0NDYyN2IyZGJjMjhlMDM3ZDhkYTUvdGFibGVyYW5nZTplODA0ZDczYmU4MDQ0NjI3YjJkYmMyOGUwMzdkOGRhNV81LTUtMS0xLTExNzIxMg_1898c38a-8c46-4798-b995-6b945f6d5806">23.6</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="3" name="ibp:AdjustedGrossProfitPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ZTgwNGQ3M2JlODA0NDYyN2IyZGJjMjhlMDM3ZDhkYTUvdGFibGVyYW5nZTplODA0ZDczYmU4MDQ0NjI3YjJkYmMyOGUwMzdkOGRhNV81LTctMS0xLTExNzIxMg_0a379e92-187c-4786-8d5d-be2a9f38b3af">32.0</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:38.666%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.525%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Year ended December 31, 2020</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Installation</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Eliminations</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Consolidated</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic7e64d94fc2142a586ef4f2fe8cabba2_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6MmNiOGVjNGJlZjU3NDVhY2I3Y2UxYjJkNjA1MDhiZjgvdGFibGVyYW5nZToyY2I4ZWM0YmVmNTc0NWFjYjdjZTFiMmQ2MDUwOGJmOF8yLTEtMS0xLTEwMTYzNg_e2ac8e39-86d8-470f-b72a-753b77cec519">1,636,361</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i83b10d3c03c148f6843d6898a799af1b_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6MmNiOGVjNGJlZjU3NDVhY2I3Y2UxYjJkNjA1MDhiZjgvdGFibGVyYW5nZToyY2I4ZWM0YmVmNTc0NWFjYjdjZTFiMmQ2MDUwOGJmOF8yLTMtMS0xLTEwMTYzNg_22affeb8-09d2-4aad-882b-8804745f6a68">17,762</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2a61f156f4a841368d04ac31fb199848_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6MmNiOGVjNGJlZjU3NDVhY2I3Y2UxYjJkNjA1MDhiZjgvdGFibGVyYW5nZToyY2I4ZWM0YmVmNTc0NWFjYjdjZTFiMmQ2MDUwOGJmOF8yLTUtMS0xLTEwMTYzNg_a8a16676-cf62-4657-aaaf-1f0641c31e3c">898</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6MmNiOGVjNGJlZjU3NDVhY2I3Y2UxYjJkNjA1MDhiZjgvdGFibGVyYW5nZToyY2I4ZWM0YmVmNTc0NWFjYjdjZTFiMmQ2MDUwOGJmOF8yLTctMS0xLTEwMTYzNg_3e0c9525-8652-4775-8658-52dfc91d4320">1,653,225</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of sales </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic7e64d94fc2142a586ef4f2fe8cabba2_D20200101-20201231" decimals="-3" name="us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6MmNiOGVjNGJlZjU3NDVhY2I3Y2UxYjJkNjA1MDhiZjgvdGFibGVyYW5nZToyY2I4ZWM0YmVmNTc0NWFjYjdjZTFiMmQ2MDUwOGJmOF8zLTEtMS0xLTEwMTYzNg_5db501ec-5556-48ed-ba58-7a2d74290621">1,092,139</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i83b10d3c03c148f6843d6898a799af1b_D20200101-20201231" decimals="-3" name="us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6MmNiOGVjNGJlZjU3NDVhY2I3Y2UxYjJkNjA1MDhiZjgvdGFibGVyYW5nZToyY2I4ZWM0YmVmNTc0NWFjYjdjZTFiMmQ2MDUwOGJmOF8zLTMtMS0xLTEwMTYzNg_6964e658-6042-451a-99d4-868eb33aaa9f">12,771</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2a61f156f4a841368d04ac31fb199848_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6MmNiOGVjNGJlZjU3NDVhY2I3Y2UxYjJkNjA1MDhiZjgvdGFibGVyYW5nZToyY2I4ZWM0YmVmNTc0NWFjYjdjZTFiMmQ2MDUwOGJmOF8zLTUtMS0xLTEwMTYzNg_1fef78b2-2bee-462f-96d1-3e3146ad10e8">670</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6MmNiOGVjNGJlZjU3NDVhY2I3Y2UxYjJkNjA1MDhiZjgvdGFibGVyYW5nZToyY2I4ZWM0YmVmNTc0NWFjYjdjZTFiMmQ2MDUwOGJmOF8zLTctMS0xLTEwMTYzNg_b87a7d38-868d-4f1e-bd4b-c14ce68bee3e">1,104,240</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Segment gross profit</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic7e64d94fc2142a586ef4f2fe8cabba2_D20200101-20201231" decimals="-3" name="ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6MmNiOGVjNGJlZjU3NDVhY2I3Y2UxYjJkNjA1MDhiZjgvdGFibGVyYW5nZToyY2I4ZWM0YmVmNTc0NWFjYjdjZTFiMmQ2MDUwOGJmOF80LTEtMS0xLTEwMTYzNg_7f067085-4536-4aa0-88ee-1344f8498b93">544,222</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i83b10d3c03c148f6843d6898a799af1b_D20200101-20201231" decimals="-3" name="ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6MmNiOGVjNGJlZjU3NDVhY2I3Y2UxYjJkNjA1MDhiZjgvdGFibGVyYW5nZToyY2I4ZWM0YmVmNTc0NWFjYjdjZTFiMmQ2MDUwOGJmOF80LTMtMS0xLTEwMTYzNg_c016c73b-eadd-44d7-b283-fb30ab4f0790">4,991</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i2a61f156f4a841368d04ac31fb199848_D20200101-20201231" decimals="-3" sign="-" name="ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6MmNiOGVjNGJlZjU3NDVhY2I3Y2UxYjJkNjA1MDhiZjgvdGFibGVyYW5nZToyY2I4ZWM0YmVmNTc0NWFjYjdjZTFiMmQ2MDUwOGJmOF80LTUtMS0xLTEwMTYzNg_4db5875e-180b-4dd3-bfb5-9adbf0809c33">228</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie274fecd3dfd42dfbef01a03d192c162_D20200101-20201231" decimals="-3" name="ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6MmNiOGVjNGJlZjU3NDVhY2I3Y2UxYjJkNjA1MDhiZjgvdGFibGVyYW5nZToyY2I4ZWM0YmVmNTc0NWFjYjdjZTFiMmQ2MDUwOGJmOF80LTctMS0xLTEwMTYzNg_c0b8b8a2-2570-4513-85cf-aa8d570b3243">548,985</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Segment gross profit percentage</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ic7e64d94fc2142a586ef4f2fe8cabba2_D20200101-20201231" decimals="3" name="ibp:AdjustedGrossProfitPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6MmNiOGVjNGJlZjU3NDVhY2I3Y2UxYjJkNjA1MDhiZjgvdGFibGVyYW5nZToyY2I4ZWM0YmVmNTc0NWFjYjdjZTFiMmQ2MDUwOGJmOF81LTEtMS0xLTExNzI1Mg_a7a0d64b-72ab-45d8-aa95-b95b1e5b0dbd">33.3</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i83b10d3c03c148f6843d6898a799af1b_D20200101-20201231" decimals="3" name="ibp:AdjustedGrossProfitPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6MmNiOGVjNGJlZjU3NDVhY2I3Y2UxYjJkNjA1MDhiZjgvdGFibGVyYW5nZToyY2I4ZWM0YmVmNTc0NWFjYjdjZTFiMmQ2MDUwOGJmOF81LTMtMS0xLTExNzI1Mg_35868e0a-c9d7-4631-934b-72746d578e37">28.1</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i2a61f156f4a841368d04ac31fb199848_D20200101-20201231" decimals="3" name="ibp:AdjustedGrossProfitPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6MmNiOGVjNGJlZjU3NDVhY2I3Y2UxYjJkNjA1MDhiZjgvdGFibGVyYW5nZToyY2I4ZWM0YmVmNTc0NWFjYjdjZTFiMmQ2MDUwOGJmOF81LTUtMS0xLTExNzI1Mg_dcc607ba-424a-4c8a-8863-5b62fdea607a">25.4</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="3" name="ibp:AdjustedGrossProfitPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6MmNiOGVjNGJlZjU3NDVhY2I3Y2UxYjJkNjA1MDhiZjgvdGFibGVyYW5nZToyY2I4ZWM0YmVmNTc0NWFjYjdjZTFiMmQ2MDUwOGJmOF81LTctMS0xLTExNzI1Mg_e93dbd0d-120e-4659-9b7c-f69e4cd5625b">33.2</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="margin-top:9pt;padding-left:27pt;text-indent:-27pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(1)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:15.34pt">Cost of sales included in segment gross profit is exclusive of depreciation and amortization for the years ended December&#160;31, 2022, 2021 and 2020. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The prior period disclosures in the above tables have been recast to conform to the current period segment presentation. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The reconciliation between consolidated segment gross profit for each period as shown in the tables above to consolidated income before income taxes is as follows:</span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:53.870%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.524%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Segment gross profit - Consolidated</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8575354b2fbb4902ae0b5a815b512e19_D20220101-20221231" decimals="-3" name="ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl8yLTEtMS0xLTExNTkzNw_19556562-53f4-49f2-a1b4-9faf897cd236">872,194</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie5905ba0719040438b112fb99f9b953c_D20210101-20211231" decimals="-3" name="ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl8yLTMtMS0xLTExNTkzNw_1e9da2a8-c651-4da0-8cdc-8aa409fd02dd">630,457</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie274fecd3dfd42dfbef01a03d192c162_D20200101-20201231" decimals="-3" name="ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl8yLTUtMS0xLTExNTkzNw_c0b8b8a2-2570-4513-85cf-aa8d570b3243">548,985</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Depreciation and amortization </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl8zLTEtMS0xLTExNzIyNA_06ab632c-2e1d-4efb-8693-42004d4eec09">44,410</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl8zLTMtMS0xLTExNzIzMA_f14f0144-2e31-48da-a553-b26d35d5ca28">40,938</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl8zLTUtMS0xLTExNzIzNQ_ca89b78f-3d82-400b-a905-72fbfcb9bb16">39,011</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross profit, as reported</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl80LTEtMS0xLTExNzIyNA_41d4120e-6f05-411b-8097-e20101593677">827,784</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl80LTMtMS0xLTExNzIzMA_5955464d-eaf7-4100-b407-b6722fa59f4d">589,519</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl80LTUtMS0xLTExNzIzNQ_e0a17293-200d-419d-bca6-b72b949864c4">509,974</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl81LTEtMS0xLTExNzIyNA_0d42be35-ce7d-47ca-a150-8bd630f33467">482,373</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl81LTMtMS0xLTExNzIzMA_afe49993-c092-405c-ad15-ed7a1ce61b60">401,639</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl81LTUtMS0xLTExNzIzNQ_ec61715b-24d0-484d-b2de-b9e901dbbf3f">348,107</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating income</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl82LTEtMS0xLTExNzIyNA_31da7281-4651-4b92-9fb7-0f73d21b743d">345,411</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl82LTMtMS0xLTExNzIzMA_3811c4a6-bac2-4b6f-8f59-5179c3e257b3">187,880</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl82LTUtMS0xLTExNzIzNQ_638d046c-96a5-4a07-8181-018f10b7ddad">161,867</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other expense, net</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:OtherNonoperatingExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl83LTEtMS0xLTExNzIyNA_eba5b305-9c43-4f23-81c2-9b53aa75e8bb">42,104</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:OtherNonoperatingExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl83LTMtMS0xLTExNzIzMA_9ff63c7e-25e5-40a4-a574-3e106ee62d9f">32,405</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:OtherNonoperatingExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl83LTUtMS0xLTExNzIzNQ_133fa54c-382f-4fc9-aad0-5402b2dde6c9">30,690</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income before income taxes</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl84LTEtMS0xLTExNzIyNA_0c14181a-39f9-43de-9ace-2d5935371293">303,307</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl84LTMtMS0xLTExNzIzMA_731565c1-e798-4fa1-8eb8-2f8a0fd09855">155,475</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl84LTUtMS0xLTExNzIzNQ_2d28f3e0-655c-4f1c-84db-27176a15916b">131,177</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:continuation></ix:continuation><div style="padding-left:27pt;text-indent:-27pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="ic8cd30a267074d7e8ac583c44980ac3d" continuedAt="i162f02b735664f0086174ebe67588480"><ix:continuation id="icc2c7f392e8f4c519008364c534571a0" continuedAt="i93e8b1e8609f438caff8b6268ecc38c8">(1)</ix:continuation></ix:continuation></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:15.34pt"><ix:continuation id="i162f02b735664f0086174ebe67588480"><ix:continuation id="i93e8b1e8609f438caff8b6268ecc38c8">Cost of sales included in segment gross profit is exclusive of depreciation and amortization for the years ended December&#160;31, 2022, 2021 and 2020.</ix:continuation></ix:continuation> </span></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_115"></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 12 &#8211; <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzQ3MTE_c11b6048-fec9-4d15-9a53-9d9f49869bd4" continuedAt="ia1298baffdb247879a89e4421f96a740" escape="true">DERIVATIVES AND HEDGING ACTIVITIES</ix:nonNumeric></span></div><ix:continuation id="ia1298baffdb247879a89e4421f96a740" continuedAt="idf019edf93bb497da40ea26b25613f1a"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Risk Management Objective of Using Derivatives</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We are exposed to certain risks arising from both our business operations and economic conditions. We manage exposure to a wide variety of business and operational risks through our core business activities. We manage economic risks, including interest rate, liquidity and credit risk primarily by overseeing the amount, sources and duration of debt funding and the use of </span></div></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">73</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:63pt;width:100%"><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div></div><ix:continuation id="idf019edf93bb497da40ea26b25613f1a" continuedAt="i859d52cdb6fc46bf8f4239b878d49dbb"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">derivative financial instruments. Specifically, we have entered into derivative financial instruments to manage exposure to interest rate movements that result in the receipt or payment of future known and uncertain cash amounts, the value of which are determined by interest rates. Our derivative financial instruments are used to manage differences in the amount, timing and duration of our known or expected cash receipts and known or expected cash payments principally related to our investments and borrowings.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Cash Flow Hedges of Interest Rate Risk</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our purpose for using interest rate derivatives is to add stability to interest expense and to manage our exposure to interest rate movements. During the year ended December&#160;31, 2022, we used interest rate swaps to hedge the variable cash flows associated with existing variable-rate debt. Interest rate swaps designated as cash flow hedges involve the receipt of variable amounts from a counterparty in exchange for making fixed-rate payments over the life of the agreements without exchange of the underlying notional amount. We do not use derivatives for trading or speculative purposes and we currently do not have any derivatives that are not designated as hedges. As of December&#160;31, 2022, we have not posted any collateral related to these agreements.</span></div><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDA3_cadf699c-9dbe-4c78-86a9-178b55a12cbf" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2022, we had the following interest rate swap derivatives (notional amount in millions): </span></div><div style="margin-top:9pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:23.461%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:23.461%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:23.461%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:23.465%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Effective Date</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Notional Amount</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fixed Rate</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Maturity Date</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">July 30, 2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibee1a74171604fea9600eff85349f6c6_I20221231" decimals="-5" name="us-gaap:DerivativeNotionalAmount" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTpmYjVlN2Y5MDkxYzg0Y2Q2YTZlNDMyMDMxZWYyMzc4Mi90YWJsZXJhbmdlOmZiNWU3ZjkwOTFjODRjZDZhNmU0MzIwMzFlZjIzNzgyXzItMi0xLTEtMTE2NDky_60e58659-a365-4bbe-8113-b51621d00efb">200.0</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ibee1a74171604fea9600eff85349f6c6_I20221231" decimals="5" name="us-gaap:DerivativeFixedInterestRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTpmYjVlN2Y5MDkxYzg0Y2Q2YTZlNDMyMDMxZWYyMzc4Mi90YWJsZXJhbmdlOmZiNWU3ZjkwOTFjODRjZDZhNmU0MzIwMzFlZjIzNzgyXzItNC0xLTEtMTE2NDky_3b89231f-fc28-4568-95b2-5ce784cf0e49">0.51</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2025</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifabecb9e61e345918b677899e47caab9_I20221231" decimals="-5" name="us-gaap:DerivativeNotionalAmount" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTpmYjVlN2Y5MDkxYzg0Y2Q2YTZlNDMyMDMxZWYyMzc4Mi90YWJsZXJhbmdlOmZiNWU3ZjkwOTFjODRjZDZhNmU0MzIwMzFlZjIzNzgyXzMtMi0xLTEtMTE2NDky_4220ce4b-59d8-4fdf-b963-d5ca8541466a">100.0</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ifabecb9e61e345918b677899e47caab9_I20221231" decimals="5" name="us-gaap:DerivativeFixedInterestRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTpmYjVlN2Y5MDkxYzg0Y2Q2YTZlNDMyMDMxZWYyMzc4Mi90YWJsZXJhbmdlOmZiNWU3ZjkwOTFjODRjZDZhNmU0MzIwMzFlZjIzNzgyXzMtNC0xLTEtMTE2NDky_c2343023-1006-4d92-bab9-2a00a04af7aa">1.37</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2025</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3770042c69554337aa145a020b149bcd_I20221231" decimals="-5" name="us-gaap:DerivativeNotionalAmount" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTpmYjVlN2Y5MDkxYzg0Y2Q2YTZlNDMyMDMxZWYyMzc4Mi90YWJsZXJhbmdlOmZiNWU3ZjkwOTFjODRjZDZhNmU0MzIwMzFlZjIzNzgyXzQtMi0xLTEtMTE2NDky_2bd8a16d-829b-44d7-bece-17a2d66c4d80">100.0</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i3770042c69554337aa145a020b149bcd_I20221231" decimals="5" name="us-gaap:DerivativeFixedInterestRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTpmYjVlN2Y5MDkxYzg0Y2Q2YTZlNDMyMDMxZWYyMzc4Mi90YWJsZXJhbmdlOmZiNWU3ZjkwOTFjODRjZDZhNmU0MzIwMzFlZjIzNzgyXzQtNC0xLTEtMTE2NDky_a1a01ccd-bcd1-4509-8987-20dfcd7ec021">1.37</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2025</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2025</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1672765a5f964c51ab755b498631ad23_I20221231" decimals="-5" name="us-gaap:DerivativeNotionalAmount" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTpmYjVlN2Y5MDkxYzg0Y2Q2YTZlNDMyMDMxZWYyMzc4Mi90YWJsZXJhbmdlOmZiNWU3ZjkwOTFjODRjZDZhNmU0MzIwMzFlZjIzNzgyXzUtMi0xLTEtMTE2NDky_b5c73ecb-96fb-4c34-968b-226b1699b55a">300.0</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i1672765a5f964c51ab755b498631ad23_I20221231" decimals="5" name="us-gaap:DerivativeFixedInterestRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTpmYjVlN2Y5MDkxYzg0Y2Q2YTZlNDMyMDMxZWYyMzc4Mi90YWJsZXJhbmdlOmZiNWU3ZjkwOTFjODRjZDZhNmU0MzIwMzFlZjIzNzgyXzUtNC0xLTEtMTE2NDky_12f333d8-0d98-491c-9db3-266848e0aeda">3.09</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 14, 2028</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2025</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="idf0befe7ce8a45db81c1e364433b2346_I20221231" decimals="-5" name="us-gaap:DerivativeNotionalAmount" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTpmYjVlN2Y5MDkxYzg0Y2Q2YTZlNDMyMDMxZWYyMzc4Mi90YWJsZXJhbmdlOmZiNWU3ZjkwOTFjODRjZDZhNmU0MzIwMzFlZjIzNzgyXzYtMi0xLTEtMTE2NDky_f101648d-80b8-4a8f-baca-3d52fab14a8d">100.0</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="idf0befe7ce8a45db81c1e364433b2346_I20221231" decimals="5" name="us-gaap:DerivativeFixedInterestRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTpmYjVlN2Y5MDkxYzg0Y2Q2YTZlNDMyMDMxZWYyMzc4Mi90YWJsZXJhbmdlOmZiNWU3ZjkwOTFjODRjZDZhNmU0MzIwMzFlZjIzNzgyXzYtNC0xLTEtMTE2NDky_5391f34b-54ea-4511-b908-13c126191be6">2.98</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 14, 2028</span></td></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2021, we had the following interest rate swap derivatives (notional amount in millions): </span></div><div style="margin-top:9pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:23.461%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:23.461%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:23.461%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:23.465%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Effective Date</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Notional Amount</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fixed Rate</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Maturity Date</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">July 30, 2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic2cf2e52ccd646ef9a9d36906001e517_I20211231" decimals="-5" name="us-gaap:DerivativeNotionalAmount" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTpjYTFiYmM4NThiYTY0M2EwOGY5ODY0NzE2MzdjNjQwYy90YWJsZXJhbmdlOmNhMWJiYzg1OGJhNjQzYTA4Zjk4NjQ3MTYzN2M2NDBjXzItMi0xLTEtMTE2NTQ4_6dc83824-9580-4f32-bbe4-66466167f8d0">200.0</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ic2cf2e52ccd646ef9a9d36906001e517_I20211231" decimals="5" name="us-gaap:DerivativeFixedInterestRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTpjYTFiYmM4NThiYTY0M2EwOGY5ODY0NzE2MzdjNjQwYy90YWJsZXJhbmdlOmNhMWJiYzg1OGJhNjQzYTA4Zjk4NjQ3MTYzN2M2NDBjXzItNC0xLTEtMTE2NTQ4_73c83930-2097-4ad4-b1ee-65edcedd896b">0.51</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 15, 2030</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1301eb6a5fc549069945be411b5afa6b_I20211231" decimals="-5" name="us-gaap:DerivativeNotionalAmount" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTpjYTFiYmM4NThiYTY0M2EwOGY5ODY0NzE2MzdjNjQwYy90YWJsZXJhbmdlOmNhMWJiYzg1OGJhNjQzYTA4Zjk4NjQ3MTYzN2M2NDBjXzMtMi0xLTEtMTE2NTQ4_01797c22-db4d-44b5-a3ad-20a97003f134">100.0</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i1301eb6a5fc549069945be411b5afa6b_I20211231" decimals="5" name="us-gaap:DerivativeFixedInterestRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTpjYTFiYmM4NThiYTY0M2EwOGY5ODY0NzE2MzdjNjQwYy90YWJsZXJhbmdlOmNhMWJiYzg1OGJhNjQzYTA4Zjk4NjQ3MTYzN2M2NDBjXzMtNC0xLTEtMTE2NTQ4_cf5cb8b4-9923-4307-be5b-8d5d1561649d">1.37</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2028</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i553a93f70bb8496aa0ff5b74f2f9ea55_I20211231" decimals="-5" name="us-gaap:DerivativeNotionalAmount" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTpjYTFiYmM4NThiYTY0M2EwOGY5ODY0NzE2MzdjNjQwYy90YWJsZXJhbmdlOmNhMWJiYzg1OGJhNjQzYTA4Zjk4NjQ3MTYzN2M2NDBjXzQtMi0xLTEtMTE2NTQ4_03450116-203c-47e5-86ba-100cb1e89e47">100.0</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i553a93f70bb8496aa0ff5b74f2f9ea55_I20211231" decimals="5" name="us-gaap:DerivativeFixedInterestRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTpjYTFiYmM4NThiYTY0M2EwOGY5ODY0NzE2MzdjNjQwYy90YWJsZXJhbmdlOmNhMWJiYzg1OGJhNjQzYTA4Zjk4NjQ3MTYzN2M2NDBjXzQtNC0xLTEtMTE2NTQ4_09d2578d-b8a7-4eae-af89-a17f4de2a05d">1.37</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2028</span></td></tr></table></div></ix:nonNumeric><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On July 8, 2022, we amended the maturity date of each of our <ix:nonFraction unitRef="instrument" contextRef="iab01235b40dd45c6927bbad026dd9938_I20220708" decimals="INF" name="us-gaap:DerivativeNumberOfInstrumentsHeld" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDE1_0c9ffb8d-ac76-4e53-a66a-2f566e9bc0dc">three</ix:nonFraction> active interest rate swaps to December 31, 2025 with other terms remaining unchanged. Collectively, the swap had unrealized gains of $<ix:nonFraction unitRef="usd" contextRef="i442df108481d486093e987ae0ab7f3de_D20220708-20220708" decimals="-5" name="us-gaap:UnrealizedGainLossOnDerivatives" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzQzOTgwNDY1MzE3Njk_1f609546-a9b9-43dd-9586-8d63bf7076c3">51.2</ix:nonFraction> million at the amendment date of July 8, 2022. These unrealized gains will be amortized as a decrease to interest expense, net through the original maturity dates of April 15, 2030 and December 15, 2028. For the year ended December&#160;31, 2022, we amortized $<ix:nonFraction unitRef="usd" contextRef="ib89a7646ef1240b0a5ab77c7f353f692_D20220101-20221231" decimals="-5" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationTax" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzQzOTgwNDY1MzE3Nzc_03dcea56-eb77-40b9-9784-63411bd63a22">3.4</ix:nonFraction> million of these unrealized gains as a decrease to interest expense, net. In conjunction with the amendments, we received cash of $<ix:nonFraction unitRef="usd" contextRef="ib89a7646ef1240b0a5ab77c7f353f692_D20220101-20221231" decimals="-5" name="ibp:ProceedsFromTerminationOfDerivativeInstruments" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzU0OTc1NTgzNDQyMw_3408f842-2b17-4e6d-9521-c50050721c6f">25.5</ix:nonFraction> million from swap counterparties, which is presented in cash flows from operating activities in the Consolidated Statements of Cash Flow for the year ended December&#160;31, 2022. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The amended swaps include off-market terms at inception and contained a $<ix:nonFraction unitRef="usd" contextRef="i56181c5a7f2d4a8391dd92fea36879d4_I20221231" decimals="-5" name="ibp:SwapOffMarketTermsCapitalized" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzQzOTgwNDY1MzE3OTc_fccec013-2834-4e5a-b226-680f4255e61f">25.7</ix:nonFraction> million other-than-insignificant financing element which will amortize to interest expense, net through the new December 31, 2025 maturity date of the amended swaps. As of December&#160;31, 2022, we amortized $<ix:nonFraction unitRef="usd" contextRef="ib89a7646ef1240b0a5ab77c7f353f692_D20220101-20221231" decimals="-5" name="us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsTax" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzQzOTgwNDY1MzE4MTg_d0b52f5b-99e0-49dd-a14f-0cfcbe94a686">3.6</ix:nonFraction> million of the financing element as an increase to interest expense, net. Future net cash settlements are recognized through cash flows from investing activities in the Consolidated Statements of Cash Flows due to the other-than-insignificant financing element.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Also in July 2022, we entered into <ix:nonFraction unitRef="instrument" contextRef="i3dc49179ed7c4a1baba5f2c76bfe1f2d_I20220728" decimals="INF" name="us-gaap:DerivativeNumberOfInstrumentsHeld" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDMy_a7f763bb-1c4f-40cc-8020-c073c19e7dbc">two</ix:nonFraction> new forward interest rate swaps. As of December&#160;31, 2022, these <ix:nonFraction unitRef="instrument" contextRef="i3dc49179ed7c4a1baba5f2c76bfe1f2d_I20220728" decimals="INF" name="us-gaap:DerivativeNumberOfInstrumentsHeld" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDM3_a7f763bb-1c4f-40cc-8020-c073c19e7dbc">two</ix:nonFraction> forward interest rate swaps, combined with our <ix:nonFraction unitRef="instrument" contextRef="iab01235b40dd45c6927bbad026dd9938_I20220708" decimals="INF" name="us-gaap:DerivativeNumberOfInstrumentsHeld" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDIw_0c9ffb8d-ac76-4e53-a66a-2f566e9bc0dc">three</ix:nonFraction> amended swaps, serve to hedge $<ix:nonFraction unitRef="usd" contextRef="i0d2108f549d34ce5bfda96eeaa0b81bf_I20221231" decimals="-5" name="us-gaap:DerivativeNotionalAmount" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzQzOTgwNDY1MzE4ODI_e038326c-57a4-4e52-beb1-58c149f9606e">400.0</ix:nonFraction> million of the variable cash flows on our variable rate Term Loan through maturity. The assets and liabilities associated with these interest rate swaps are included in other current assets, other non-current assets and other current liabilities on the Consolidated Balance Sheets at their fair value amounts as described in Note 10, Fair Value Measurements.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In August 2020, we terminated <ix:nonFraction unitRef="swap" contextRef="if1142baf02ff4a46880be63e5f3a091c_I20200831" decimals="INF" name="ibp:NumberOfSwaps" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDQ3_37377fda-20ed-4149-82bd-133852f8895c">two</ix:nonFraction> then-existing interest rate swaps and one then-existing forward interest rate swap. During the years ended December&#160;31, 2022, 2021 and 2020, we amortized $<ix:nonFraction unitRef="usd" contextRef="ib89a7646ef1240b0a5ab77c7f353f692_D20220101-20221231" decimals="-5" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzQzOTgwNDY1MzE5MjE_8e96b560-4a1d-4670-a3eb-01127fdb6d9f">3.8</ix:nonFraction> million, $<ix:nonFraction unitRef="usd" contextRef="ia81262dad5e84fed93f6a279d84424fe_D20210101-20211231" decimals="-5" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzQzOTgwNDY1MzE5MzY_b6a203bf-1f5b-4c06-bccb-0b359b34561c">3.2</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="ic91a6a4159b341b193c39b699641e966_D20200101-20201231" decimals="-5" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzQzOTgwNDY1MzIwMjQ_e70ba575-16e8-4814-a189-faf158babbb1">1.3</ix:nonFraction> million, respectively, of the $<ix:nonFraction unitRef="usd" contextRef="iefd77e98cbe14c7a925d42dfe158f974_D20210801-20210831" decimals="-5" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzQzOTgwNDY1MzE5MDI_d90fec8c-0a23-492a-b040-de55cce09304">17.8</ix:nonFraction> million unrealized loss that existed at the time of termination as an increase to interest expense, net. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The changes in the fair value of derivatives designated, and that qualify, as cash flow hedges are recorded in other comprehensive gain (loss), net of tax on the Consolidated Statements of Operations and Comprehensive Income and in </span></div></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">74</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:63pt;width:100%"><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div></div><ix:continuation id="i859d52cdb6fc46bf8f4239b878d49dbb"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">accumulated other comprehensive income (loss) on the Consolidated Balance Sheets and subsequently reclassified into earnings in the period that the hedged forecasted transaction affects earnings. We had no such changes during the years ended December&#160;31, 2022 and 2021.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amounts reported in accumulated other comprehensive income (loss) related to derivatives will be reclassified to interest expense, net as interest payments are made on our variable-rate debt, and as our terminated and amended swaps are amortized. Over the next twelve months, we estimate that an additional $<ix:nonFraction unitRef="usd" contextRef="i0a10819a03884112b683b41306168549_D20220101-20221231" decimals="-5" name="us-gaap:DerivativeInstrumentsGainLossReclassificationFromAccumulatedOCIToIncomeEstimatedNetAmountToBeTransferred" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzQzOTgwNDY1MzIxNjk_ff15da5b-a687-492a-be7e-a52829cf1008">11.1</ix:nonFraction> million will be reclassified as a decrease to interest expense, net.</span></div><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDUw_d0a9b206-3578-4998-b036-78fba60bdfab" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes amounts recorded to <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDUx_3580f4e1-9b51-444e-9a35-60d80703421b"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDUx_b0d386bd-7d5d-4b4d-b157-231830ca5700"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDUx_f2565731-dcbc-4849-afbc-408fac97be5e">interest expense</span></span></span>, net included in the Condensed Consolidated Statements of Operations and Comprehensive Income related to our interest rate swaps (in thousands):</span></div><div style="margin-top:9pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:53.285%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.525%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(Benefit) expense associated with swap net settlements</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i22b861620ef3464eb72be526ade264aa_D20220101-20221231" decimals="-3" sign="-" name="ibp:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTowZDlhNGJhZTYwNDM0MzRkYjg2NDk3MmNlYTBhMTUxMi90YWJsZXJhbmdlOjBkOWE0YmFlNjA0MzQzNGRiODY0OTcyY2VhMGExNTEyXzItMi0xLTEtMTE2Njc4_0b37f5dc-6f69-4c31-bc76-91955ea934cd">3,128</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iff2e5d359b374823988dd0110d4470cf_D20210101-20211231" decimals="-3" name="ibp:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTowZDlhNGJhZTYwNDM0MzRkYjg2NDk3MmNlYTBhMTUxMi90YWJsZXJhbmdlOjBkOWE0YmFlNjA0MzQzNGRiODY0OTcyY2VhMGExNTEyXzItNC0xLTEtMTE2Njc4_eb0e1ca4-3ecb-4908-a122-7f4ccc57b2db">370</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if24349dd43b048f68bf4cc030d2889da_D20200101-20201231" decimals="-3" name="ibp:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTowZDlhNGJhZTYwNDM0MzRkYjg2NDk3MmNlYTBhMTUxMi90YWJsZXJhbmdlOjBkOWE0YmFlNjA0MzQzNGRiODY0OTcyY2VhMGExNTEyXzItNi0xLTEtMTE4MTA4_f63bca80-6bac-4a06-a58f-1eb018fba23b">1,453</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expense associated with amortization of amended/terminated swaps</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i22b861620ef3464eb72be526ade264aa_D20220101-20221231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTowZDlhNGJhZTYwNDM0MzRkYjg2NDk3MmNlYTBhMTUxMi90YWJsZXJhbmdlOjBkOWE0YmFlNjA0MzQzNGRiODY0OTcyY2VhMGExNTEyXzMtMi0xLTEtMTE2Njc4_bbd70148-6caa-4757-a4fa-6b2cbcbe8908">3,928</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iff2e5d359b374823988dd0110d4470cf_D20210101-20211231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTowZDlhNGJhZTYwNDM0MzRkYjg2NDk3MmNlYTBhMTUxMi90YWJsZXJhbmdlOjBkOWE0YmFlNjA0MzQzNGRiODY0OTcyY2VhMGExNTEyXzMtNC0xLTEtMTE2Njc4_0d0c8b01-6563-46e2-bbc1-d34fd6cec850">3,223</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if24349dd43b048f68bf4cc030d2889da_D20200101-20201231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTowZDlhNGJhZTYwNDM0MzRkYjg2NDk3MmNlYTBhMTUxMi90YWJsZXJhbmdlOjBkOWE0YmFlNjA0MzQzNGRiODY0OTcyY2VhMGExNTEyXzMtNi0xLTEtMTE4MTA4_9bbb672b-95b0-469c-90a8-316cb55c9327">1,326</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">LIBOR is used as a reference rate for our interest rate swap agreements we use to hedge our interest rate exposure. The Intercontinental Exchange Benchmark Administration, the administrator of LIBOR, announced in March 2021 its intention to extend the publication of certain LIBOR settings, including the setting we use as a reference rate, to June 2023. In January 2020, the FASB issued ASU 2020-04, Reference Rate Reform: Facilitation of the Effects of Reference Rate Reform on Financial Reporting (Topic 848) and in January 2021, the FASB subsequently issued ASU 2021-01, Reference Rate Reform - Scope, which clarified the scope and application of the original guidance. During the year ended December&#160;31, 2022, we adopted ASU 2022-06, Reference Rate Reform: Deferral of the Sunset Date of Topic 848 (Topic 848) which extends the sunset date of previous adopted guidance under ASU 2020-04 to December 31, 2024. The purpose of this guidance is to provide relief for impacted areas as it relates to impending reference rate reform. We elected to apply the hedge accounting expedients related to probability and the assessments of effectiveness for future LIBOR-indexed cash flows to assume that the index upon which future hedged transactions will be based matches the index on the corresponding derivatives. Application of these expedients preserves the presentation of derivatives consistent with past presentation.</span></div></ix:continuation><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_118"></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 13 &#8211; <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:StockholdersEquityNoteDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90ZXh0cmVnaW9uOjAwZTg4MmU0ZjI4NjRmYjdiNDkzODRhZjFlMzA5YjJlXzI1ODQ_0761b44f-230b-48d9-8185-0bdffa0be199" continuedAt="if4caf91554de4334ae85529dee0f4051" escape="true">STOCKHOLDERS&#8217; EQUITY</ix:nonNumeric></span></div><ix:continuation id="if4caf91554de4334ae85529dee0f4051" continuedAt="ibb5d9e0fde744462a0d621eb7291ae21"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Accumulated other comprehensive income (loss)</span></div><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90ZXh0cmVnaW9uOjAwZTg4MmU0ZjI4NjRmYjdiNDkzODRhZjFlMzA5YjJlXzE2NDkyNjc0NTA1MzM_638c171a-06e1-42f6-a0d4-f9ea13b2dfdd" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The change in accumulated other comprehensive income (loss) related to our interest rate derivatives, net of taxes, was as follows (in thousands):</span></div><div style="margin-top:18pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:53.285%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.525%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Year Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accumulated loss at beginning of period</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic7d96b76684448ca8dc8d5eb2af2aa51_I20211231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTowM2M4NjcwNmFjMTI0MTg2YTBkMDY1ODc0Mjk2ZTBlYy90YWJsZXJhbmdlOjAzYzg2NzA2YWMxMjQxODZhMGQwNjU4NzQyOTZlMGVjXzItMi0xLTEtMTA5NTM2_4fb6f4c3-99ae-4b40-96cc-a7e4e9f1dde0">227</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="iddedffc4e5144507a507008593a6873b_I20201231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTowM2M4NjcwNmFjMTI0MTg2YTBkMDY1ODc0Mjk2ZTBlYy90YWJsZXJhbmdlOjAzYzg2NzA2YWMxMjQxODZhMGQwNjU4NzQyOTZlMGVjXzItNC0xLTEtMTA5NTM2_02e7831b-3a8a-43b6-9a43-7d8d9c70f474">8,763</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ib6ac4b7d2a984343a2a2675dcd2e6938_I20191231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTowM2M4NjcwNmFjMTI0MTg2YTBkMDY1ODc0Mjk2ZTBlYy90YWJsZXJhbmdlOjAzYzg2NzA2YWMxMjQxODZhMGQwNjU4NzQyOTZlMGVjXzItNi0xLTEtMTE2Nzg4_e4743048-7982-4319-8521-341e0fd730f4">7,143</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unrealized gain (loss) in fair value of interest rate derivatives</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8f1fc2a7afff401a89603047426d6933_D20220101-20221231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTowM2M4NjcwNmFjMTI0MTg2YTBkMDY1ODc0Mjk2ZTBlYy90YWJsZXJhbmdlOjAzYzg2NzA2YWMxMjQxODZhMGQwNjU4NzQyOTZlMGVjXzMtMi0xLTEtMTA5NTM2_a2c2d78d-defe-4b2e-8966-805f698c9cb7">37,885</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i181ad4bd7adf4caa9f759ca2b9c63e8b_D20210101-20211231" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTowM2M4NjcwNmFjMTI0MTg2YTBkMDY1ODc0Mjk2ZTBlYy90YWJsZXJhbmdlOjAzYzg2NzA2YWMxMjQxODZhMGQwNjU4NzQyOTZlMGVjXzMtNC0xLTEtMTA5NTM2_94abf1d3-4ab1-4797-a885-ed69b0c14a86">6,151</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ib71212c1449342498cafafbd95744e94_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTowM2M4NjcwNmFjMTI0MTg2YTBkMDY1ODc0Mjk2ZTBlYy90YWJsZXJhbmdlOjAzYzg2NzA2YWMxMjQxODZhMGQwNjU4NzQyOTZlMGVjXzMtNi0xLTEtMTE2Nzg4_4ab2aa95-6e65-4081-b167-05f4979b3ff6">2,601</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Reclassification of realized net losses to earnings</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8f1fc2a7afff401a89603047426d6933_D20220101-20221231" decimals="-3" name="us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTowM2M4NjcwNmFjMTI0MTg2YTBkMDY1ODc0Mjk2ZTBlYy90YWJsZXJhbmdlOjAzYzg2NzA2YWMxMjQxODZhMGQwNjU4NzQyOTZlMGVjXzQtMi0xLTEtMTA5NTM2_36ce1b21-966f-4231-8bf6-ca6c0a0075a8">2,902</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i181ad4bd7adf4caa9f759ca2b9c63e8b_D20210101-20211231" decimals="-3" name="us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTowM2M4NjcwNmFjMTI0MTg2YTBkMDY1ODc0Mjk2ZTBlYy90YWJsZXJhbmdlOjAzYzg2NzA2YWMxMjQxODZhMGQwNjU4NzQyOTZlMGVjXzQtNC0xLTEtMTA5NTM2_ce404377-d1cb-4ee2-92af-f6588704a892">2,385</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib71212c1449342498cafafbd95744e94_D20200101-20201231" decimals="-3" name="us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTowM2M4NjcwNmFjMTI0MTg2YTBkMDY1ODc0Mjk2ZTBlYy90YWJsZXJhbmdlOjAzYzg2NzA2YWMxMjQxODZhMGQwNjU4NzQyOTZlMGVjXzQtNi0xLTEtMTE2Nzg4_09c0e2e2-dfb3-429e-8b92-61ebe7982f43">981</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accumulated gain (loss) at end of period </span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7333bb6e9aa345eaae9049c458a08bcb_I20221231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTowM2M4NjcwNmFjMTI0MTg2YTBkMDY1ODc0Mjk2ZTBlYy90YWJsZXJhbmdlOjAzYzg2NzA2YWMxMjQxODZhMGQwNjU4NzQyOTZlMGVjXzUtMi0xLTEtMTA5NTM2_abdf2459-5c4e-4bd7-b577-de2f322f2560">40,560</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic7d96b76684448ca8dc8d5eb2af2aa51_I20211231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTowM2M4NjcwNmFjMTI0MTg2YTBkMDY1ODc0Mjk2ZTBlYy90YWJsZXJhbmdlOjAzYzg2NzA2YWMxMjQxODZhMGQwNjU4NzQyOTZlMGVjXzUtNC0xLTEtMTA5NTM2_6cd36839-16dd-49a9-92d1-3137683722be">227</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="iddedffc4e5144507a507008593a6873b_I20201231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTowM2M4NjcwNmFjMTI0MTg2YTBkMDY1ODc0Mjk2ZTBlYy90YWJsZXJhbmdlOjAzYzg2NzA2YWMxMjQxODZhMGQwNjU4NzQyOTZlMGVjXzUtNi0xLTEtMTE2Nzg4_695f132f-7ebe-4d50-88d6-0bba86b8d7bc">8,763</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The reclassifications of realized net losses to earnings in the above table are recorded within interest expense, net.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Share repurchases</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On February 24, 2022, we announced that our board of directors authorized an extension of our previous stock repurchase program through March 1, 2023 and concurrently authorized an increase in the total amount of our outstanding common stock we can purchase up to $<ix:nonFraction unitRef="usd" contextRef="i100c14fc5dac409cbdb1dacc3ea4f5a3_I20220224" decimals="-5" name="us-gaap:StockRepurchaseProgramAuthorizedAmount1" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90ZXh0cmVnaW9uOjAwZTg4MmU0ZjI4NjRmYjdiNDkzODRhZjFlMzA5YjJlXzEwOTk1MTE2Mzc4NDM_0868029e-1524-4854-ae0e-3890c0a533b9">200.0</ix:nonFraction>&#160;million. On August 4, 2022, we announced that our board of directors authorized a new stock repurchase program which replaces our previous program. The new stock repurchase program allows for the repurchase of up to $<ix:nonFraction unitRef="usd" contextRef="i100c14fc5dac409cbdb1dacc3ea4f5a3_I20220224" decimals="-5" name="us-gaap:StockRepurchaseProgramAuthorizedAmount1" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90ZXh0cmVnaW9uOjAwZTg4MmU0ZjI4NjRmYjdiNDkzODRhZjFlMzA5YjJlXzEwOTk1MTE2MzgwNTU_0868029e-1524-4854-ae0e-3890c0a533b9">200.0</ix:nonFraction>&#160;million of our outstanding common stock through August 10, 2023. As of December 31, 2022, we had $<ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-5" name="us-gaap:StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90ZXh0cmVnaW9uOjAwZTg4MmU0ZjI4NjRmYjdiNDkzODRhZjFlMzA5YjJlXzEwOTk1MTE2MzgxNDg_301ebeb2-d339-42f7-8bad-38c6f7b4f812">162.1</ix:nonFraction>&#160;million remaining on that stock repurchase program. On February 22, 2023, we announced that our board of directors authorized a new </span></div></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">75</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:63pt;width:100%"><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div></div><ix:continuation id="ibb5d9e0fde744462a0d621eb7291ae21"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">stock repurchase program that allows for the repurchase of up to $<ix:nonFraction unitRef="usd" contextRef="iaf7f2985f94c4c49bd394258ac3e1c59_I20230222" decimals="-5" name="us-gaap:StockRepurchaseProgramAuthorizedAmount1" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90ZXh0cmVnaW9uOjAwZTg4MmU0ZjI4NjRmYjdiNDkzODRhZjFlMzA5YjJlXzEwOTk1MTE2MzgzNDE_1a0a92f2-09f1-44d6-9be6-123b30e49d94">200.0</ix:nonFraction>&#160;million of our outstanding common stock. The new program replaces the previous program and is in effect through March 1, 2024. The effect of these treasury shares in reducing the number of common shares outstanding is reflected in our earnings per share calculation. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the year ended December&#160;31, 2022, we repurchased approximately <ix:nonFraction unitRef="shares" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-5" name="us-gaap:TreasuryStockSharesAcquired" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90ZXh0cmVnaW9uOjAwZTg4MmU0ZjI4NjRmYjdiNDkzODRhZjFlMzA5YjJlXzU0OTc1NTgxOTk2MQ_d1df8ca1-ea25-443a-a1c4-d271b0dc4f1e">1.5</ix:nonFraction> million shares of our common stock with an aggregate price of approximately $<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-5" name="us-gaap:TreasuryStockValueAcquiredCostMethod" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90ZXh0cmVnaW9uOjAwZTg4MmU0ZjI4NjRmYjdiNDkzODRhZjFlMzA5YjJlXzU0OTc1NTgxOTk3OQ_10ba5f49-ed2a-420f-82c6-47da9beaf9ca">137.6</ix:nonFraction> million, or $<ix:nonFraction unitRef="usdPerShare" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="2" name="us-gaap:TreasuryStockAcquiredAverageCostPerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90ZXh0cmVnaW9uOjAwZTg4MmU0ZjI4NjRmYjdiNDkzODRhZjFlMzA5YjJlXzU0OTc1NTgxOTk5Mg_33d6701a-a819-426e-b6cd-118aad12f34c">91.54</ix:nonFraction> average price per share. During the year ended December&#160;31, 2020 we repurchased <ix:nonFraction unitRef="shares" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:TreasuryStockSharesAcquired" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90ZXh0cmVnaW9uOjAwZTg4MmU0ZjI4NjRmYjdiNDkzODRhZjFlMzA5YjJlXzkzNDU4NDg4NDUwMjc_b6d88dbf-93ec-4556-888a-7ddfdcc31483">633</ix:nonFraction>&#160;thousand shares of our outstanding common stock with an aggregate price of approximately $<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-5" name="us-gaap:TreasuryStockValueAcquiredCostMethod" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90ZXh0cmVnaW9uOjAwZTg4MmU0ZjI4NjRmYjdiNDkzODRhZjFlMzA5YjJlXzkzNDU4NDg4NDUxMTc_ab2e4b7f-6da7-40a4-a43b-e95b6356b918">33.9</ix:nonFraction> million, or $<ix:nonFraction unitRef="usdPerShare" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="2" name="us-gaap:TreasuryStockAcquiredAverageCostPerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90ZXh0cmVnaW9uOjAwZTg4MmU0ZjI4NjRmYjdiNDkzODRhZjFlMzA5YjJlXzkzNDU4NDg4NDUxMzA_cf9acc91-aaf0-493d-875b-bf15d2c88197">53.57</ix:nonFraction> average price per share. We did <ix:nonFraction unitRef="shares" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="INF" name="us-gaap:TreasuryStockSharesAcquired" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90ZXh0cmVnaW9uOjAwZTg4MmU0ZjI4NjRmYjdiNDkzODRhZjFlMzA5YjJlXzE2NDkyNjc0NTM1MTg_ddebaa4a-da4c-4c6d-a361-b85ae89e3c38">no</ix:nonFraction>t repurchase any shares during the year ended December 31, 2021. </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Dividends</span></div><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:DividendsDeclaredTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90ZXh0cmVnaW9uOjAwZTg4MmU0ZjI4NjRmYjdiNDkzODRhZjFlMzA5YjJlXzE2NDkyNjc0NTA1MzQ_2f9ffc56-3bd4-4ad0-aa92-312ed1036247" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the year ended December 31, 2022, we declared and paid the following cash dividends (amount declared and amount paid in thousands): </span></div><div style="margin-top:7pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:13.958%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.274%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.274%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.297%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.835%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.842%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Declaration Date</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Record Date</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Payment Date</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Dividend Per Share</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amount Declared</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amount Paid </span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2/24/2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3/15/2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3/31/2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ibad6e2952377482580495fbdda46fff0_D20220224-20220224" decimals="2" name="us-gaap:CommonStockDividendsPerShareDeclared" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZToxYWYwMTk1OGEzMmU0ZjVmYTA5ZTQ3Y2U2ODQ5NjgyMS90YWJsZXJhbmdlOjFhZjAxOTU4YTMyZTRmNWZhMDllNDdjZTY4NDk2ODIxXzEtNi0xLTEtMTAxNzU5_3ee7f747-5924-4bec-ad8d-f8f2cf51e54c">0.90</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibad6e2952377482580495fbdda46fff0_D20220224-20220224" decimals="-3" name="us-gaap:DividendsCommonStockCash" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZToxYWYwMTk1OGEzMmU0ZjVmYTA5ZTQ3Y2U2ODQ5NjgyMS90YWJsZXJhbmdlOjFhZjAxOTU4YTMyZTRmNWZhMDllNDdjZTY4NDk2ODIxXzEtOC0xLTEtMTAxNzY3_d986c320-fdae-4c00-8fb0-32cb0f2fc16f">26,585</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i91f16aadcc6b49d0b234caa9ff3ae064_D20220331-20220331" decimals="-3" name="us-gaap:PaymentsOfDividends" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZToxYWYwMTk1OGEzMmU0ZjVmYTA5ZTQ3Y2U2ODQ5NjgyMS90YWJsZXJhbmdlOjFhZjAxOTU4YTMyZTRmNWZhMDllNDdjZTY4NDk2ODIxXzEtMTAtMS0xLTEwMTc3NQ_07ee6d2c-61f9-4da3-adc0-0a76a445bcc0">26,242</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2/24/2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3/15/2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3/31/2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i7d1abcbaf16c4b7491e7966bcb70758b_D20220224-20220224" decimals="3" name="us-gaap:CommonStockDividendsPerShareDeclared" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZToxYWYwMTk1OGEzMmU0ZjVmYTA5ZTQ3Y2U2ODQ5NjgyMS90YWJsZXJhbmdlOjFhZjAxOTU4YTMyZTRmNWZhMDllNDdjZTY4NDk2ODIxXzItNi0xLTEtMTAxNzU5_533968c9-71e2-4240-9798-ae3c49cd52d6">0.315</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7d1abcbaf16c4b7491e7966bcb70758b_D20220224-20220224" decimals="-3" name="us-gaap:DividendsCommonStockCash" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZToxYWYwMTk1OGEzMmU0ZjVmYTA5ZTQ3Y2U2ODQ5NjgyMS90YWJsZXJhbmdlOjFhZjAxOTU4YTMyZTRmNWZhMDllNDdjZTY4NDk2ODIxXzItOC0xLTEtMTAxNzY3_f982cdc9-1b48-4163-a4d7-47735fb8fb81">9,305</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8c4cbfe2e6e5412389b32c2d875dbef1_D20220331-20220331" decimals="-3" name="us-gaap:PaymentsOfDividends" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZToxYWYwMTk1OGEzMmU0ZjVmYTA5ZTQ3Y2U2ODQ5NjgyMS90YWJsZXJhbmdlOjFhZjAxOTU4YTMyZTRmNWZhMDllNDdjZTY4NDk2ODIxXzItMTAtMS0xLTEwMTc3NQ_49a77ae4-d7ee-433d-90a7-1cdd8998fc35">9,184</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5/5/2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6/15/2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6/30/2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="iaf611f307b9f4c12a8b97cc19c405d84_D20220505-20220505" decimals="3" name="us-gaap:CommonStockDividendsPerShareDeclared" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZToxYWYwMTk1OGEzMmU0ZjVmYTA5ZTQ3Y2U2ODQ5NjgyMS90YWJsZXJhbmdlOjFhZjAxOTU4YTMyZTRmNWZhMDllNDdjZTY4NDk2ODIxXzMtNi0xLTEtMTAxNzU5_5de776b3-4531-46bc-92aa-210cd12651a2">0.315</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iaf611f307b9f4c12a8b97cc19c405d84_D20220505-20220505" decimals="-3" name="us-gaap:DividendsCommonStockCash" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZToxYWYwMTk1OGEzMmU0ZjVmYTA5ZTQ3Y2U2ODQ5NjgyMS90YWJsZXJhbmdlOjFhZjAxOTU4YTMyZTRmNWZhMDllNDdjZTY4NDk2ODIxXzMtOC0xLTEtMTAxNzY3_d93014d2-bba0-42bf-aa70-70285224a57e">9,054</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3f9b1494308e4b9c86f4c790c4f4979e_D20220630-20220630" decimals="-3" name="us-gaap:PaymentsOfDividends" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZToxYWYwMTk1OGEzMmU0ZjVmYTA5ZTQ3Y2U2ODQ5NjgyMS90YWJsZXJhbmdlOjFhZjAxOTU4YTMyZTRmNWZhMDllNDdjZTY4NDk2ODIxXzMtMTAtMS0xLTEwMTc3NQ_325e8bc4-1571-4194-ae5d-9b30b1a6719a">8,982</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8/4/2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9/15/2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9/30/2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i807ff5d59f0d4cfeaaf38ac7f266c7f2_D20220804-20220804" decimals="3" name="us-gaap:CommonStockDividendsPerShareDeclared" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZToxYWYwMTk1OGEzMmU0ZjVmYTA5ZTQ3Y2U2ODQ5NjgyMS90YWJsZXJhbmdlOjFhZjAxOTU4YTMyZTRmNWZhMDllNDdjZTY4NDk2ODIxXzQtNi0xLTEtMTAxNzU5_e025dd5e-9d0c-485b-a760-3d5a86d8ce3c">0.315</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i807ff5d59f0d4cfeaaf38ac7f266c7f2_D20220804-20220804" decimals="-3" name="us-gaap:DividendsCommonStockCash" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZToxYWYwMTk1OGEzMmU0ZjVmYTA5ZTQ3Y2U2ODQ5NjgyMS90YWJsZXJhbmdlOjFhZjAxOTU4YTMyZTRmNWZhMDllNDdjZTY4NDk2ODIxXzQtOC0xLTEtMTAxNzY3_40fdc79c-7dd8-4fa7-8b0d-ceaf50ea82e2">9,018</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i646b446c5cb0405f89d818e82b8c2c31_D20220930-20220930" decimals="-3" name="us-gaap:PaymentsOfDividends" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZToxYWYwMTk1OGEzMmU0ZjVmYTA5ZTQ3Y2U2ODQ5NjgyMS90YWJsZXJhbmdlOjFhZjAxOTU4YTMyZTRmNWZhMDllNDdjZTY4NDk2ODIxXzQtMTAtMS0xLTEwMTc3NQ_01a174fb-7361-4153-9363-ca106fc613fe">8,945</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11/03/2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12/15/2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12/31/2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i4d70c0967219428891e9b6845905a960_D20221103-20221103" decimals="3" name="us-gaap:CommonStockDividendsPerShareDeclared" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZToxYWYwMTk1OGEzMmU0ZjVmYTA5ZTQ3Y2U2ODQ5NjgyMS90YWJsZXJhbmdlOjFhZjAxOTU4YTMyZTRmNWZhMDllNDdjZTY4NDk2ODIxXzUtNi0xLTEtMTA5MzUy_da4d9a3f-3cb7-49d7-bc8f-74047d0c8171">0.315</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4d70c0967219428891e9b6845905a960_D20221103-20221103" decimals="-3" name="us-gaap:DividendsCommonStockCash" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZToxYWYwMTk1OGEzMmU0ZjVmYTA5ZTQ3Y2U2ODQ5NjgyMS90YWJsZXJhbmdlOjFhZjAxOTU4YTMyZTRmNWZhMDllNDdjZTY4NDk2ODIxXzUtOC0xLTEtMTA5MzYy_2e20c5c9-3c21-45dc-8e40-6d90b6f5884a">8,917</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i045defb974cc4bd585a4fe22efdd9936_D20221231-20221231" decimals="-3" name="us-gaap:PaymentsOfDividends" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZToxYWYwMTk1OGEzMmU0ZjVmYTA5ZTQ3Y2U2ODQ5NjgyMS90YWJsZXJhbmdlOjFhZjAxOTU4YTMyZTRmNWZhMDllNDdjZTY4NDk2ODIxXzUtMTAtMS0xLTEwOTM3MQ_0136d44d-d3f4-4a13-839b-316a3cb5b3c9">8,845</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the year ended December 31, 2021, we declared and paid the following cash dividends (amount declared and amount paid in thousands): </span></div><div><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:14.543%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.543%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.835%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.115%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.005%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.835%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.842%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Declaration Date</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Record Date</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Payment Date</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Dividend Per Share</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amount Declared</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amount Paid </span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2/23/2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3/15/2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3/31/2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="id5dd847f8b58461a84949fa4421e07fb_D20210223-20210223" decimals="2" name="us-gaap:CommonStockDividendsPerShareDeclared" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTpiYzJiMmQ5NWU0ZmM0Y2RiODdkY2MxOTUwYzAwNmE5NC90YWJsZXJhbmdlOmJjMmIyZDk1ZTRmYzRjZGI4N2RjYzE5NTBjMDA2YTk0XzEtNi0xLTEtMTAwMDAy_92b3f87b-f339-4147-a28a-6144d604ddf4">0.30</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 13pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5dd847f8b58461a84949fa4421e07fb_D20210223-20210223" decimals="-3" name="us-gaap:DividendsCommonStockCash" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTpiYzJiMmQ5NWU0ZmM0Y2RiODdkY2MxOTUwYzAwNmE5NC90YWJsZXJhbmdlOmJjMmIyZDk1ZTRmYzRjZGI4N2RjYzE5NTBjMDA2YTk0XzEtOC0xLTEtMTAwMDAy_9df59302-7331-4547-b357-b2ff53deedfe">8,907</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5b9da0853c824ac59047f949e36385ca_D20210331-20210331" decimals="-3" name="us-gaap:PaymentsOfDividends" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTpiYzJiMmQ5NWU0ZmM0Y2RiODdkY2MxOTUwYzAwNmE5NC90YWJsZXJhbmdlOmJjMmIyZDk1ZTRmYzRjZGI4N2RjYzE5NTBjMDA2YTk0XzEtMTAtMS0xLTEwMDAwMg_34d74150-883d-480f-957c-823254eccc60">8,786</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5/5/2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6/15/2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6/30/2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i991fdb41c8934ebfac0241c7e461a7f8_D20210505-20210505" decimals="2" name="us-gaap:CommonStockDividendsPerShareDeclared" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTpiYzJiMmQ5NWU0ZmM0Y2RiODdkY2MxOTUwYzAwNmE5NC90YWJsZXJhbmdlOmJjMmIyZDk1ZTRmYzRjZGI4N2RjYzE5NTBjMDA2YTk0XzItNi0xLTEtMTAwMDAy_48a84d8d-809b-46f8-aff3-4cc3cbd211de">0.30</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 13pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i991fdb41c8934ebfac0241c7e461a7f8_D20210505-20210505" decimals="-3" name="us-gaap:DividendsCommonStockCash" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTpiYzJiMmQ5NWU0ZmM0Y2RiODdkY2MxOTUwYzAwNmE5NC90YWJsZXJhbmdlOmJjMmIyZDk1ZTRmYzRjZGI4N2RjYzE5NTBjMDA2YTk0XzItOC0xLTEtMTAwMDAy_dd0e87c9-af97-4b1d-b65b-9bdd1080ec06">8,910</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i29115886eaa9444a96a996b8cd9e65c0_D20210630-20210630" decimals="-3" name="us-gaap:PaymentsOfDividends" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTpiYzJiMmQ5NWU0ZmM0Y2RiODdkY2MxOTUwYzAwNmE5NC90YWJsZXJhbmdlOmJjMmIyZDk1ZTRmYzRjZGI4N2RjYzE5NTBjMDA2YTk0XzItMTAtMS0xLTEwMDAwMg_bb4dc857-8b61-4763-b87c-965b41d4c2fb">8,821</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8/5/2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9/15/2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9/30/2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ifff31870d771421ea1aa10e55657fe72_D20210805-20210805" decimals="2" name="us-gaap:CommonStockDividendsPerShareDeclared" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTpiYzJiMmQ5NWU0ZmM0Y2RiODdkY2MxOTUwYzAwNmE5NC90YWJsZXJhbmdlOmJjMmIyZDk1ZTRmYzRjZGI4N2RjYzE5NTBjMDA2YTk0XzMtNi0xLTEtMTAwMDAy_94fcb5dc-a380-442e-a6d1-c2b1695fbaee">0.30</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 13pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifff31870d771421ea1aa10e55657fe72_D20210805-20210805" decimals="-3" name="us-gaap:DividendsCommonStockCash" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTpiYzJiMmQ5NWU0ZmM0Y2RiODdkY2MxOTUwYzAwNmE5NC90YWJsZXJhbmdlOmJjMmIyZDk1ZTRmYzRjZGI4N2RjYzE5NTBjMDA2YTk0XzMtOC0xLTEtMTAwMDAy_8a7f3ba4-16c2-4ed8-89c0-fe1fd634f4f7">8,912</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i56fc48d2ef2843d6a309770db2666814_D20210930-20210930" decimals="-3" name="us-gaap:PaymentsOfDividends" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTpiYzJiMmQ5NWU0ZmM0Y2RiODdkY2MxOTUwYzAwNmE5NC90YWJsZXJhbmdlOmJjMmIyZDk1ZTRmYzRjZGI4N2RjYzE5NTBjMDA2YTk0XzMtMTAtMS0xLTEwMDAwMg_6e4d9cdd-61b7-4b57-8dad-59999acfa23a">8,821</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11/4/2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12/15/2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12/31/2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i1dc79196e8854f7ab0466692c93a3e7c_D20211104-20211104" decimals="2" name="us-gaap:CommonStockDividendsPerShareDeclared" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTpiYzJiMmQ5NWU0ZmM0Y2RiODdkY2MxOTUwYzAwNmE5NC90YWJsZXJhbmdlOmJjMmIyZDk1ZTRmYzRjZGI4N2RjYzE5NTBjMDA2YTk0XzQtNi0xLTEtMTAwMDAy_80ddc776-714d-4c18-bcbf-40bdb7b813a9">0.30</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 13pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1dc79196e8854f7ab0466692c93a3e7c_D20211104-20211104" decimals="-3" name="us-gaap:DividendsCommonStockCash" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTpiYzJiMmQ5NWU0ZmM0Y2RiODdkY2MxOTUwYzAwNmE5NC90YWJsZXJhbmdlOmJjMmIyZDk1ZTRmYzRjZGI4N2RjYzE5NTBjMDA2YTk0XzQtOC0xLTEtMTAwMDAy_1c484060-83e0-4015-8043-2f868edd649f">8,911</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i21088968d2e44ef7b27c7fb852ac6ae3_D20211231-20211231" decimals="-3" name="us-gaap:PaymentsOfDividends" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTpiYzJiMmQ5NWU0ZmM0Y2RiODdkY2MxOTUwYzAwNmE5NC90YWJsZXJhbmdlOmJjMmIyZDk1ZTRmYzRjZGI4N2RjYzE5NTBjMDA2YTk0XzQtMTAtMS0xLTEwMDAwMg_8a182140-82e7-47b9-80b9-9826fa1e55f2">8,866</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The amount of dividends declared may vary from the amount of dividends paid in a period due to the vesting of restricted stock awards and performance share awards, which accrue dividend equivalent rights that are paid when the award vests. During the year ended December&#160;31, 2022, we also paid $<ix:nonFraction unitRef="usd" contextRef="i33d015c2b9c5400cb809209f62f9398e_D20220101-20221231" decimals="-5" name="us-gaap:PaymentsOfDividends" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90ZXh0cmVnaW9uOjAwZTg4MmU0ZjI4NjRmYjdiNDkzODRhZjFlMzA5YjJlXzkzNDU4NDg4NDUyMzU_c676054d-ef42-4d6c-bcef-219721e6cde0">0.5</ix:nonFraction> million in accrued dividends not included in the table above related to the vesting of these awards. The payment of future dividends will be at the discretion of our board of directors and will depend on our future earnings, capital requirements, financial condition, future prospects, results of operations, contractual restrictions, legal requirements, and other factors deemed relevant by our board of directors. We did not declare or pay any cash dividends on our capital stock during the year ended December 31, 2020. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our credit facilities place restrictions on the amount of dividends and stock repurchases we can make during a fiscal year. See Note 8, Long-Term Debt, for more information.</span></div></ix:continuation><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_121"></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 14 &#8211; <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:CompensationAndEmployeeBenefitPlansTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzkyNDQ_8b368c99-0ffa-43b1-a21a-e02bee889af1" continuedAt="ib038bb83632249de8669bf096a51bd04" escape="true">EMPLOYEE BENEFITS</ix:nonNumeric></span></div><ix:continuation id="ib038bb83632249de8669bf096a51bd04" continuedAt="icf48eefc2bc043f7b00a6fcbf46675bb"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Healthcare</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We participate in multiple healthcare plans, the largest of which is partially self-funded with an insurance company paying benefits in excess of stop loss limits per individual/family. Our healthcare benefit expense (net of employee contributions) was approximately $<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-5" name="ibp:HealthInsuranceExpense" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzMxMQ_1e4c6b9f-abbe-4683-babd-65bc25c0295b">30.3</ix:nonFraction> million, $<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-5" name="ibp:HealthInsuranceExpense" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzMxNQ_66a1605a-e0c0-450a-bda3-1fc31dda974b">28.4</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-5" name="ibp:HealthInsuranceExpense" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzMyMg_bc0fe39d-bfb4-49ce-9b5d-c158487501f4">24.1</ix:nonFraction> million for the years ended December&#160;31, 2022, 2021 and 2020, respectively, for all plans. An accrual for estimated healthcare claims incurred but not reported (&#8220;IBNR&#8221;) is included within accrued compensation on the Consolidated Balance Sheets and was $<ix:nonFraction unitRef="usd" contextRef="i37aa17ee923446b1bfe336a10f721ba8_I20221231" decimals="-5" name="us-gaap:EmployeeRelatedLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzU1MA_ac3827ed-b626-40e3-b2e9-36dcbf436e19">3.8</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="i8668cb4ddb8b4ece9852cd75fc2a112d_I20211231" decimals="-5" name="us-gaap:EmployeeRelatedLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzU1Nw_fa67c851-1f75-4973-8316-5958e09e7375">3.3</ix:nonFraction> million as of December&#160;31, 2022 and 2021, respectively.</span></div></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">76</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:63pt;width:100%"><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div></div><ix:continuation id="icf48eefc2bc043f7b00a6fcbf46675bb" continuedAt="id7eb5e3ef7114f0a96404570b3ccc3fe"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Workers&#8217; Compensation</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We participate in multiple workers&#8217; compensation plans. Under these plans, for a significant portion of our business, we use a high deductible program to cover losses above the deductible amount on a per claim basis. We accrue for the estimated losses occurring from both asserted and unasserted claims. Workers&#8217; compensation liability for premiums is included in other current liabilities on the Consolidated Balance Sheets. Insurance claims and reserves include accruals of estimated settlements for known claims, as well as accruals of actuarial estimates of IBNR claims. In estimating these reserves, historical loss experience and judgments about the expected levels of costs per claim are considered. These claims are accounted for based on actuarial estimates of the undiscounted claims, including IBNR. We believe the use of actuarial methods to account for these liabilities provides a consistent and effective way to measure these highly judgmental accruals.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Workers&#8217; compensation expense totaled $<ix:nonFraction unitRef="usd" contextRef="i7a6eb5745a4144d2ab6e5aac808bcfc0_D20220101-20221231" decimals="-5" name="ibp:WorkersCompensationExpense" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzE2MjA_8a6af521-f4be-4a98-928b-cdb05e97076a">19.1</ix:nonFraction> million, $<ix:nonFraction unitRef="usd" contextRef="i0a4200e47afe46c5b7d789f3f7974feb_D20210101-20211231" decimals="-5" name="ibp:WorkersCompensationExpense" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzE2MjQ_90dedc17-72b7-4ca3-973b-d857432840df">17.6</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="i0c7f2b33da3b468daa7598e99d5f9d12_D20200101-20201231" decimals="-5" name="ibp:WorkersCompensationExpense" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzE2MzE_066eb82a-1674-4234-bbed-d1b8596e2168">15.7</ix:nonFraction> million for the years ended December&#160;31, 2022, 2021 and 2020, respectively, and is included in cost of sales on the Consolidated Statements of Operations and Comprehensive Income. </span></div><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="ibp:ScheduleOfEmployeeRelatedLiabilitiesTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzkyNDU_09b3a436-1d37-44d5-b74f-96d0d688b1c4" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Workers&#8217; compensation known claims and IBNR reserves included on the Consolidated Balance Sheets were as follows (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:66.812%"><tr><td style="width:1.0%"></td><td style="width:54.261%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:20.781%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.675%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:20.783%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 5.5pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Included in other current liabilities</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:WorkersCompensationLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo0YjVhYjVlYTRlNjY0OTE0ODAwZTI0YTk2ZDczNDM0ZC90YWJsZXJhbmdlOjRiNWFiNWVhNGU2NjQ5MTQ4MDBlMjRhOTZkNzM0MzRkXzItMS0xLTEtMTAwMDAy_abe7a8c4-cae2-43e2-bd30-f073083c7663">9,946</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:WorkersCompensationLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo0YjVhYjVlYTRlNjY0OTE0ODAwZTI0YTk2ZDczNDM0ZC90YWJsZXJhbmdlOjRiNWFiNWVhNGU2NjQ5MTQ4MDBlMjRhOTZkNzM0MzRkXzItMy0xLTEtMTAwMDAy_e9f91540-e046-48bd-bf22-60f31a4dee66">8,048</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Included in other long-term liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:WorkersCompensationLiabilityNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo0YjVhYjVlYTRlNjY0OTE0ODAwZTI0YTk2ZDczNDM0ZC90YWJsZXJhbmdlOjRiNWFiNWVhNGU2NjQ5MTQ4MDBlMjRhOTZkNzM0MzRkXzMtMS0xLTEtMTAwMDAy_85c00086-b3ef-4945-b71a-84176e5a4217">13,730</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:WorkersCompensationLiabilityNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo0YjVhYjVlYTRlNjY0OTE0ODAwZTI0YTk2ZDczNDM0ZC90YWJsZXJhbmdlOjRiNWFiNWVhNGU2NjQ5MTQ4MDBlMjRhOTZkNzM0MzRkXzMtMy0xLTEtMTAwMDAy_33e8d0e0-7c24-4903-a4b1-e1b70efb5db4">13,397</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:WorkersCompensationLiabilityCurrentAndNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo0YjVhYjVlYTRlNjY0OTE0ODAwZTI0YTk2ZDczNDM0ZC90YWJsZXJhbmdlOjRiNWFiNWVhNGU2NjQ5MTQ4MDBlMjRhOTZkNzM0MzRkXzQtMS0xLTEtMTAwMDAy_6a6f3a7c-5d29-4565-8ddd-77571a319bff">23,676</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:WorkersCompensationLiabilityCurrentAndNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo0YjVhYjVlYTRlNjY0OTE0ODAwZTI0YTk2ZDczNDM0ZC90YWJsZXJhbmdlOjRiNWFiNWVhNGU2NjQ5MTQ4MDBlMjRhOTZkNzM0MzRkXzQtMy0xLTEtMTAwMDAy_5b885c8d-f563-404b-9a24-bf66b4d9fbbf">21,445</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="padding-left:490.5pt"><span><br/></span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We also had an insurance receivable for claims that exceeded the stop loss limit for fully insured policies included on the Consolidated Balance Sheets. <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="ibp:ScheduleOfInsuranceLossReservesForInsuredObligationsTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzkyMzg_912249cf-6b20-4449-8056-7d4d0c7a01ac" continuedAt="i46a282e59bf1468cb2489d83f08e4223" escape="true">This receivable offsets an equal liability included within the reserve amounts noted above and was as follows (in thousands):</ix:nonNumeric></span></div><div style="text-align:center"><span><br/></span></div><div style="margin-top:5pt;text-align:center"><ix:continuation id="i46a282e59bf1468cb2489d83f08e4223"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:67.105%"><tr><td style="width:1.0%"></td><td style="width:54.455%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:20.686%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.671%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:20.688%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Included in other non-current assets</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:InsuranceSettlementsReceivableNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTowNTVjZGNmZDJkNzk0YzY1ODk4YWRhNjM0MTlhY2ZlZC90YWJsZXJhbmdlOjA1NWNkY2ZkMmQ3OTRjNjU4OThhZGE2MzQxOWFjZmVkXzItMS0xLTEtMTAwMDAy_0db38d58-7373-4fcc-99fb-474796cb3d55">2,318</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:InsuranceSettlementsReceivableNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTowNTVjZGNmZDJkNzk0YzY1ODk4YWRhNjM0MTlhY2ZlZC90YWJsZXJhbmdlOjA1NWNkY2ZkMmQ3OTRjNjU4OThhZGE2MzQxOWFjZmVkXzItMy0xLTEtMTAwMDAy_5bf6bb89-3808-4836-992f-3003d6485575">2,137</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></ix:continuation></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Retirement Plans</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We participate in multiple 401(k) plans, whereby we provide a matching contribution of wages deferred by employees and can also make discretionary contributions to each plan. Certain plans allow for discretionary employer contributions only. These plans cover substantially all our eligible employees. During the years ended December&#160;31, 2022, 2021 and 2020, we recognized 401(k) plan expenses of $<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-5" name="us-gaap:DefinedContributionPlanAdministrativeExpenses" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzI1OTg_4b253745-83aa-4cad-9074-a9feae96bb4f">2.9</ix:nonFraction> million, $<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-5" name="us-gaap:DefinedContributionPlanAdministrativeExpenses" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzI2MDI_fc4d60d8-f1ec-4e1a-beeb-712b1f50a93c">2.5</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-5" name="us-gaap:DefinedContributionPlanAdministrativeExpenses" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzI2MDk_e0560578-603c-4d11-9f7e-00061c339876">2.2</ix:nonFraction> million, respectively, which is included in administrative expenses on the accompanying Consolidated Statements of Operations and Comprehensive Income.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Multiemployer Pension Plans</span></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We participate in various multiemployer pension plans under collective bargaining agreements in Washington, Oregon, California and Illinois with other companies in the construction industry. These plans cover our union-represented employees and contributions to these plans are expensed as incurred. These plans generally provide for retirement, death and/or termination benefits for eligible employees within the applicable collective bargaining units, based on specific eligibility/participation requirements, vesting periods and benefit formulas. We do not participate in any multiemployer pension plans that are considered to be individually significant.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The risks of participating in these multiemployer pension plans are different from single-employer pension plans. For example:</span></div><div style="margin-top:7pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Assets contributed to the multiemployer plan by one employer may be used to provide benefits to employees of other participating employers.</span></div><div style="margin-top:7pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">If a participating employer stops contributing to the multiemployer plan, the unfunded obligations of the plan may be borne by the remaining participating employers.</span></div></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">77</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:63pt;width:100%"><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div></div><ix:continuation id="id7eb5e3ef7114f0a96404570b3ccc3fe" continuedAt="i4508de9bd0a847c69100bebddfa84ea5"><div style="margin-top:7pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">If a participating employer chooses to stop participating in these multiemployer plans, the employer may be required to pay those plans a withdrawal liability based upon the underfunded status of the plan.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We also participate in various multiemployer health and welfare plans that cover both active and retired participants. Health care benefits are provided to participants who meet certain eligibility requirements under the applicable collective bargaining unit.</span></div><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:ScheduleOfMultiemployerPlansTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzkyNDY_afd26ce7-cfc1-44ea-b9e5-e670edbe0f3a" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our contributions to multiemployer pension and health and welfare benefit plans were as follows (in thousands):</span></div><div style="margin-top:7pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:70.760%"><tr><td style="width:1.0%"></td><td style="width:35.057%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.561%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.833%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.561%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.626%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.562%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Pension plans</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i84d46d07e8fc436e811a36c787935fce_D20220101-20221231" decimals="-3" name="us-gaap:MultiemployerPlanEmployerContributionCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4MzUzZDBhZGFjOGU0MTNjYmE3ZmZhNzZiNmE5YmM0NS90YWJsZXJhbmdlOjgzNTNkMGFkYWM4ZTQxM2NiYTdmZmE3NmI2YTliYzQ1XzItMS0xLTEtMTAwMDAy_e799625d-dffd-462e-ac2f-42508e715ce3">2,916</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib14c282b4f2f48aebb9e830c414e6b39_D20210101-20211231" decimals="-3" name="us-gaap:MultiemployerPlanEmployerContributionCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4MzUzZDBhZGFjOGU0MTNjYmE3ZmZhNzZiNmE5YmM0NS90YWJsZXJhbmdlOjgzNTNkMGFkYWM4ZTQxM2NiYTdmZmE3NmI2YTliYzQ1XzItMy0xLTEtMTAwMDAy_ce16cb96-fe1e-4a43-8bbf-3304682afe71">2,783</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i16ed968772804a798c3c3d83320afabe_D20200101-20201231" decimals="-3" name="us-gaap:MultiemployerPlanEmployerContributionCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4MzUzZDBhZGFjOGU0MTNjYmE3ZmZhNzZiNmE5YmM0NS90YWJsZXJhbmdlOjgzNTNkMGFkYWM4ZTQxM2NiYTdmZmE3NmI2YTliYzQ1XzItNS0xLTEtMTAwMDAy_1d9e0d72-3c40-44f8-81fb-9067de351ac6">1,128</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Health &amp; welfare plans</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i34caeff1771e4360b540831f5a821888_D20220101-20221231" decimals="-3" name="us-gaap:MultiemployerPlanEmployerContributionCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4MzUzZDBhZGFjOGU0MTNjYmE3ZmZhNzZiNmE5YmM0NS90YWJsZXJhbmdlOjgzNTNkMGFkYWM4ZTQxM2NiYTdmZmE3NmI2YTliYzQ1XzMtMS0xLTEtMTAwMDAy_d11c182a-d01d-4402-9eea-551e5cd3a4cb">3,115</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iff062208e3f64e0f991049b0d03b5a0e_D20210101-20211231" decimals="-3" name="us-gaap:MultiemployerPlanEmployerContributionCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4MzUzZDBhZGFjOGU0MTNjYmE3ZmZhNzZiNmE5YmM0NS90YWJsZXJhbmdlOjgzNTNkMGFkYWM4ZTQxM2NiYTdmZmE3NmI2YTliYzQ1XzMtMy0xLTEtMTAwMDAy_e0eee4c9-ee84-4a3c-938d-eb4bf585d60c">2,893</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7b2c037eb25246e2991f1d1397390f87_D20200101-20201231" decimals="-3" name="us-gaap:MultiemployerPlanEmployerContributionCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4MzUzZDBhZGFjOGU0MTNjYmE3ZmZhNzZiNmE5YmM0NS90YWJsZXJhbmdlOjgzNTNkMGFkYWM4ZTQxM2NiYTdmZmE3NmI2YTliYzQ1XzMtNS0xLTEtMTAwMDAy_a520ce72-a66e-440e-b7bf-6715d1cd637f">952</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total contributions</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:MultiemployerPlanEmployerContributionCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4MzUzZDBhZGFjOGU0MTNjYmE3ZmZhNzZiNmE5YmM0NS90YWJsZXJhbmdlOjgzNTNkMGFkYWM4ZTQxM2NiYTdmZmE3NmI2YTliYzQ1XzQtMS0xLTEtMTAwMDAy_b20d5baa-91a9-44bc-bd7c-0195c7dcfaf6">6,031</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:MultiemployerPlanEmployerContributionCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4MzUzZDBhZGFjOGU0MTNjYmE3ZmZhNzZiNmE5YmM0NS90YWJsZXJhbmdlOjgzNTNkMGFkYWM4ZTQxM2NiYTdmZmE3NmI2YTliYzQ1XzQtMy0xLTEtMTAwMDAy_c37c90b8-e24f-488c-b2c8-c056b8e45f00">5,676</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:MultiemployerPlanEmployerContributionCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4MzUzZDBhZGFjOGU0MTNjYmE3ZmZhNzZiNmE5YmM0NS90YWJsZXJhbmdlOjgzNTNkMGFkYWM4ZTQxM2NiYTdmZmE3NmI2YTliYzQ1XzQtNS0xLTEtMTAwMDAy_669af354-1d51-4923-9e41-848dcef0cfb3">2,080</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The increase in contributions for the year ended December&#160;31, 2021 was driven by the acquisition of Alert Insulation in 2021 and a full year of operations for 2020 acquisitions Insulation Contractors/Magellan Insulation and Norkote, Inc. We did not acquire any businesses with union employees in the year-ended December&#160;31, 2022. See Note 18, Business Combinations for more information. </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Share-Based Compensation</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Common Stock Awards</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We periodically grant shares of our common stock under our 2014 Omnibus Incentive Plan to non-employee members of our board of directors and our employees. During the years ended December&#160;31, 2022, 2021 and 2020, we granted approximately <ix:nonFraction unitRef="shares" contextRef="ie7bd015f778946acae59540104706b42_D20220101-20221231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" format="ixt-sec:numwordsen" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzUwMDE_49c00979-df7c-4191-892e-a75a704eb17f">six thousand</ix:nonFraction>, <ix:nonFraction unitRef="shares" contextRef="i757eef749bac4f2293e773f93a167e4f_D20210101-20211231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" format="ixt-sec:numwordsen" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzUwMDU_5670a1d2-85ae-412a-a02d-287977307d89">four thousand</ix:nonFraction> and <ix:nonFraction unitRef="shares" contextRef="ib9ef86a33c5c43bdbac9dadc13b78f6f_D20200101-20201231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" format="ixt-sec:numwordsen" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzUwMTI_459e92fb-c2f2-469f-9146-ea9a2b9ef813">six thousand</ix:nonFraction> shares of restricted stock, respectively, to non-employee members of our board of directors. Substantially all of the stock will vest over a <ix:nonNumeric contextRef="ie7bd015f778946acae59540104706b42_D20220101-20221231" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzkyNDc_ba6b57a6-4805-410b-815b-56445803419d">one-year</ix:nonNumeric> service period. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In addition, we granted approximately <ix:nonFraction unitRef="shares" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-5" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzUyMTk_27e7a129-b76e-4399-9689-d17f13ac684d">0.1</ix:nonFraction> million, <ix:nonFraction unitRef="shares" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-5" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzUyMjM_986bdf6e-c450-4599-9927-124250daaf0c">0.1</ix:nonFraction> million and <ix:nonFraction unitRef="shares" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-5" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzUyMzA_bf421381-065d-4bd7-a8e6-0c0e77f79fff">0.2</ix:nonFraction> million shares of our common stock to employees in each of the years ended December&#160;31, 2022, 2021 and 2020, respectively. Substantially all of the stock will vest in <ix:nonFraction unitRef="installment" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="INF" name="ibp:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfEqualInstallmentsForVestingOfStockAwards" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzUzNzM_e49355ad-dc39-41fd-883a-6d26f6a7533c">three</ix:nonFraction> equal installments (rounded to the nearest whole share) annually over a <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzkyNDg_bb55204c-db6f-42a1-a717-75485190d8fe">three-year</ix:nonNumeric> service period. </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Employees - Performance-Based Stock Awards</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We periodically grant nonvested stock awards subject to performance-based vesting conditions to certain officers. During the year ended December&#160;31, 2022, we issued approximately <ix:nonFraction unitRef="shares" contextRef="i964a800227db4746b75656990ba9877b_D20220101-20221231" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzU2Njg_2afd6bc7-ad51-4ecb-939e-0ff18f660d48">41</ix:nonFraction>&#160;thousand shares of our common stock which vest in <ix:nonFraction unitRef="installment" contextRef="i964a800227db4746b75656990ba9877b_D20220101-20221231" decimals="INF" name="ibp:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfEqualInstallmentsForVestingOfStockAwards" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzU3MTI_a01a9e92-6b1b-44a3-ab0b-15c8418ea1ea">two</ix:nonFraction> equal installments on each of April 20, 2023 and April 20, 2024. In addition, during the year ended December&#160;31, 2022, we established, and our board of directors approved, performance-based targets in connection with common stock awards to be issued to certain officers in 2023 contingent upon achievement of these targets. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In addition, there are long-term performance-based restricted stock awards to be issued to certain employees annually through 2024 contingent upon achievement of certain performance targets. These awards are accounted for as liability-based awards since they represent a predominantly-fixed monetary amount that will be settled with a variable number of common shares in the first quarter of 2025 and as such are included in other long-term liabilities on the Consolidated Balance Sheets. During the years ended December&#160;31, 2022, 2021 and 2020 we granted approximately 39&#160;thousand, five&#160;thousand and seven&#160;thousand shares of our common stock, respectively, all of which vested in 2022.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Employees - Performance-Based Restricted Stock Units</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During 2021, we established, and our board of directors approved, performance-based restricted stock units in connection with common stock awards which were issued to certain employees in 2022 based upon achievement of a performance target. In addition, during the year ended December&#160;31, 2022, we established, and our board of directors approved, performance-based restricted stock units in connection with common stock awards to be issued to certain employees in 2023 based upon achievement of a performance target. These units will be accounted for as equity-based awards that will be settled with a fixed number of common shares. During the years ended December&#160;31, 2022, 2021 and 2020 we granted approximately 17&#160;thousand, eight&#160;thousand and 14&#160;thousand units, respectively, each of which will vest over a <ix:nonNumeric contextRef="i7fd8869fa57b44ef89607df7096ea515_D20220101-20221231" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzkyMzk_a938ac4a-b214-4fdb-ac7a-53d00cbca2a5">one-year</ix:nonNumeric> service period.</span></div></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">78</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:63pt;width:100%"><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div></div><ix:continuation id="i4508de9bd0a847c69100bebddfa84ea5" continuedAt="i5b97e5bad1ac4a38877f325cc76cb086"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Share-Based Compensation Summary</span></div><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzkyNDE_54349b4c-da0e-4de7-8170-1755ff418c71" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amounts and changes for each category of equity-based award were as follows:</span></div><div style="margin-top:5pt;padding-right:13.5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:37.350%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.555%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 4.37pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Common Stock Awards</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 3.25pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Performance-Based Stock Awards</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 4.37pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Performance-Based Restricted Stock Units</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 4.37pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Awards</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted Average Grant Date Fair Value Per Share</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 3.25pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Awards</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted Average Grant Date Fair Value Per Share</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 4.37pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Units</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted Average Grant Date Fair Value Per Share</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Nonvested awards/units at December 31, 2021</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i311beb28dee1454fa46dacf81c0daab9_I20211231" decimals="INF" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzItMS0xLTEtMTAwMDAy_f4f18da3-1236-496a-869c-391494a20955">199,353</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i311beb28dee1454fa46dacf81c0daab9_I20211231" decimals="2" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzItMy0xLTEtMTAwMDAy_f8a87e3b-1cdb-4f89-bc59-2ba67aa7960a">68.99</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i1d20a8c5c0044c2b905ac0fd361ed035_I20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzItNS0xLTEtMTAwMDAy_c346837a-48ad-49da-9e98-baa270274015">143,401</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i1d20a8c5c0044c2b905ac0fd361ed035_I20211231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzItNy0xLTEtMTAwMDAy_e3d520fa-afc7-4fed-9b9d-3c54fc803df7">81.30</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ib959d9a931e74a09bbfb204ed6489cb4_I20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzItOS0xLTEtMTAwMDAy_29b600ec-fc50-4c2a-bf5c-4f427b6f9276">8,252</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ib959d9a931e74a09bbfb204ed6489cb4_I20211231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzItMTEtMS0xLTEwMDAwMg_1a86adfa-90e9-47e1-98bc-e587aec2bb4a">126.89</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i7b1daf5c317949f8b45bc9e3692eccda_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzMtMS0xLTEtMTAwMDAy_01b47eaa-9c97-45b1-acc6-514e1b152ab2">109,189</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i7b1daf5c317949f8b45bc9e3692eccda_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzMtMy0xLTEtMTAwMDAy_f9f4fc7f-0cd2-4066-9966-c77dec802bb9">89.32</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i8336d9bd9d7e4ca8a36e5d674412d2ba_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzMtNS0xLTEtMTAwMDAy_6d8da33a-bee2-45eb-a4e1-998dde56fc7c">54,585</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i8336d9bd9d7e4ca8a36e5d674412d2ba_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzMtNy0xLTEtMTAwMDAy_286705de-a4fc-4efc-8c0b-b7ccd5ef5a48">102.98</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ic417962ed93249ada8257fa6ee36342e_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzMtOS0xLTEtMTAwMDAy_ef4e5924-71e5-4768-9f1f-493a80c222d3">16,618</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ic417962ed93249ada8257fa6ee36342e_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzMtMTEtMS0xLTEwMDAwMg_3bb34bcc-c4e4-4a74-9fa0-d7485abb6374">80.55</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vested</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i7b1daf5c317949f8b45bc9e3692eccda_D20220101-20221231" decimals="INF" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzQtMS0xLTEtMTAwMDAy_afcbddf8-a55f-453e-98bd-571776743ff0">149,504</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i7b1daf5c317949f8b45bc9e3692eccda_D20220101-20221231" decimals="2" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzQtMy0xLTEtMTAwMDAy_577341c7-d8c9-43c5-86cd-f25a3b9dee15">74.96</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i8336d9bd9d7e4ca8a36e5d674412d2ba_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzQtNS0xLTEtMTAwMDAy_11cdef24-74a8-47a6-bcde-8dc974ed5ad9">71,933</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i8336d9bd9d7e4ca8a36e5d674412d2ba_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzQtNy0xLTEtMTAwMDAy_db4a7f2c-b7d6-4c98-a635-ce34c599968d">59.07</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="ic417962ed93249ada8257fa6ee36342e_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzQtOS0xLTEtMTAwMDAy_f4026ee7-e9a0-4d15-aab6-d38d58d51b0e">8,061</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ic417962ed93249ada8257fa6ee36342e_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzQtMTEtMS0xLTEwMDAwMg_186f0b39-88cd-4772-9565-f061d9288901">126.89</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Forfeited/Cancelled</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i7b1daf5c317949f8b45bc9e3692eccda_D20220101-20221231" decimals="INF" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzUtMS0xLTEtMTAwMDAy_84c2a03c-ddce-4eed-ac71-4c3f6e24e5e6">1,921</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i7b1daf5c317949f8b45bc9e3692eccda_D20220101-20221231" decimals="2" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzUtMy0xLTEtMTAwMDAy_78cbb901-cb49-476a-b298-990999786e20">79.60</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i8336d9bd9d7e4ca8a36e5d674412d2ba_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzUtNS0xLTEtMTAwMDAy_9516db7c-4c79-4681-9cf3-b9d201be09e3">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i8336d9bd9d7e4ca8a36e5d674412d2ba_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzUtNy0xLTEtMTAwMDAy_73e895f0-82cf-41f5-86c9-34b78416a9ff">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="ic417962ed93249ada8257fa6ee36342e_D20220101-20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzUtOS0xLTEtMTAwMDAy_9bdec987-2837-426a-96bb-bf419cf17e5d">1,098</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ic417962ed93249ada8257fa6ee36342e_D20220101-20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzUtMTEtMS0xLTEwMDAwMg_5ea21016-71c6-40bb-98f5-a9b3bd34887d">88.61</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Nonvested awards/units at December 31, 2022</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ic83e19ff3ed8464b82cff42a06460329_I20221231" decimals="INF" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzYtMS0xLTEtMTAwMDAy_f324e806-457a-461f-bd9f-77b24a4f33fa">157,117</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ic83e19ff3ed8464b82cff42a06460329_I20221231" decimals="2" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzYtMy0xLTEtMTAwMDAy_9d004fb6-8d8a-43cd-893f-8ee174896736">77.31</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i742f1074f99d44938c1adea16c83563d_I20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzYtNS0xLTEtMTAwMDAy_ca42cc55-e61f-47f4-b0f8-6d42de03b3b1">126,053</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i742f1074f99d44938c1adea16c83563d_I20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzYtNy0xLTEtMTAwMDAy_5f1e8aaa-981e-458d-9e03-57298dc05efa">103.37</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i4b661dbcee504056ab5f33633cd24870_I20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzYtOS0xLTEtMTAwMDAy_cba2de49-b7ee-4975-b70a-cd36e25d2b5c">15,711</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i4b661dbcee504056ab5f33633cd24870_I20221231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzYtMTEtMS0xLTEwMDAwMg_4181ad88-6f06-4a7c-90b0-7d3919da6739">80.55</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzkyNDA_2a3bf63a-5b04-4a0e-b74e-5ec6749786cd" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the share-based compensation expense recognized under our 2014 Omnibus Incentive Plan (in thousands):</span></div><div><span><br/></span></div><div style="text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:84.064%"><tr><td style="width:1.0%"></td><td style="width:45.334%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.291%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.291%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.294%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Common Stock Awards</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i649b9d4497df46ed9b1a6f3021b6d668_D20220101-20221231" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzItMS0xLTEtMTAwMDAy_1a2567bb-c7f8-4286-90b2-91a438d84140">6,247</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2ce667884711486896711601e0d7744e_D20210101-20211231" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzItMy0xLTEtMTAwMDAy_225d9a87-956e-48c3-b0da-35eea6dfe510">5,285</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4304e324a56f4de0b1d80453e03b2437_D20200101-20201231" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzItNS0xLTEtMTAwMDAy_080a12e7-f62d-4358-a607-c1dd719e4ebc">4,116</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-Employee Common Stock Awards</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i70a43a7f84554c1fada56f420f4a3692_D20220101-20221231" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzMtMS0xLTEtMTAwMDAy_164b0fa3-516a-45b0-842c-ef75ce9bca56">547</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5538cc20e3be4bb29b233ad59bf792e4_D20210101-20211231" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzMtMy0xLTEtMTAwMDAy_86041ccb-1be8-45fa-91e6-3e58de42be57">465</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5a8f51ff7034417b959f2c0ac1fb3778_D20200101-20201231" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzMtNS0xLTEtMTAwMDAy_823c56c0-8aa5-4e3d-bc65-83bc1c121100">333</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Performance-Based Stock Awards</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0684e2d242a048a7b3b272be57da339c_D20220101-20221231" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzQtMS0xLTEtMTAwMDAy_467e3232-76dd-4488-86d7-330b00bdb7a5">5,337</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1d61284a7ad44ff2b803dfe09bd346aa_D20210101-20211231" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzQtMy0xLTEtMTAwMDAy_b4cec9d6-71be-4e3a-9c2a-8d81c5910d4b">4,528</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iec022876581b4c4a929322821ee287ad_D20200101-20201231" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzQtNS0xLTEtMTAwMDAy_3a89465d-bdba-4d6c-9afd-a918a9e0db56">3,869</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Liability Performance-Based Stock Awards</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9a21ad0b0a5347f2a0a96a450c9cb43b_D20220101-20221231" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzUtMS0xLTEtMTAwMDAy_f3346119-c95e-420e-933c-89a1ad9d7f81">493</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ida28457a08b6472d93cc3ef911e3aabf_D20210101-20211231" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzUtMy0xLTEtMTAwMDAy_8739316b-52de-4e89-b80e-87cc53ad5d55">2,612</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i949037a6d9844183b5ee9656da9438a8_D20200101-20201231" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzUtNS0xLTEtMTAwMDAy_28ebc5ee-4621-49ac-9c8a-4b6ec3eceb9a">1,969</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Performance-Based Restricted Stock Units</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i26413bdd4d944498a9cb24385ea2bba5_D20220101-20221231" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzYtMS0xLTEtMTAwMDAy_f1d90946-3cb5-49f4-99b3-9150045b819a">1,192</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8bffe94a0d174cf0895d36c924b78e11_D20210101-20211231" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzYtMy0xLTEtMTAwMDAy_4b3d0a97-a9b9-4799-9013-cbf810ba2e8b">862</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0d80387483384372a7b55be16104656a_D20200101-20201231" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzYtNS0xLTEtMTAwMDAy_b5845227-b80c-480d-8bcb-c50543bed550">539</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3f1013f46e884aa88d94776dc7259876_D20220101-20221231" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzctMS0xLTEtMTAwMDAy_2176b1d3-978e-4b6b-bf90-2e3b67cccf06">13,816</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib1c3019a8253424588b74711b0099a7d_D20210101-20211231" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzctMy0xLTEtMTAwMDAy_926d8734-409a-40e7-816f-a900a0de9a16">13,752</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2043d7b952f344cab1ed7372bd7e3966_D20200101-20201231" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzctNS0xLTEtMTAwMDAy_2b312f4b-1b22-469b-bf02-eed5b80ebd84">10,826</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We recorded the following stock compensation expense, by income statement category (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:84.064%"><tr><td style="width:1.0%"></td><td style="width:45.334%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.291%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.291%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.294%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of sales</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7a6eb5745a4144d2ab6e5aac808bcfc0_D20220101-20221231" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTpjZjg3MzlmYjZlMTQ0NTE1YTdiMGU4YjkwNzY4NTE4Yy90YWJsZXJhbmdlOmNmODczOWZiNmUxNDQ1MTVhN2IwZThiOTA3Njg1MThjXzItMS0xLTEtMTAwMDAy_c8da5b42-9f20-449e-9236-7a32c11ae061">648</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0a4200e47afe46c5b7d789f3f7974feb_D20210101-20211231" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTpjZjg3MzlmYjZlMTQ0NTE1YTdiMGU4YjkwNzY4NTE4Yy90YWJsZXJhbmdlOmNmODczOWZiNmUxNDQ1MTVhN2IwZThiOTA3Njg1MThjXzItMy0xLTEtMTAwMDAy_72a7b9aa-8698-4244-965e-dfe1f360caa0">448</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0c7f2b33da3b468daa7598e99d5f9d12_D20200101-20201231" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTpjZjg3MzlmYjZlMTQ0NTE1YTdiMGU4YjkwNzY4NTE4Yy90YWJsZXJhbmdlOmNmODczOWZiNmUxNDQ1MTVhN2IwZThiOTA3Njg1MThjXzItNS0xLTEtMTAwMDAy_359ecb23-f325-4ac3-988d-275b759dcf6d">284</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Selling</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia919de0e1499476e871a395c2d14d460_D20220101-20221231" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTpjZjg3MzlmYjZlMTQ0NTE1YTdiMGU4YjkwNzY4NTE4Yy90YWJsZXJhbmdlOmNmODczOWZiNmUxNDQ1MTVhN2IwZThiOTA3Njg1MThjXzMtMS0xLTEtMTAwMDAy_6baf7cf7-8e07-4e64-8e57-fd4573c19e60">478</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5ab90870455340b398aee4bfaaea2615_D20210101-20211231" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTpjZjg3MzlmYjZlMTQ0NTE1YTdiMGU4YjkwNzY4NTE4Yy90YWJsZXJhbmdlOmNmODczOWZiNmUxNDQ1MTVhN2IwZThiOTA3Njg1MThjXzMtMy0xLTEtMTAwMDAy_76135905-7fc8-4905-b18a-945ed0b6a8d8">204</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3e0e0ad83f304043a202a9a47bb9391e_D20200101-20201231" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTpjZjg3MzlmYjZlMTQ0NTE1YTdiMGU4YjkwNzY4NTE4Yy90YWJsZXJhbmdlOmNmODczOWZiNmUxNDQ1MTVhN2IwZThiOTA3Njg1MThjXzMtNS0xLTEtMTAwMDAy_7ecaf87b-cef1-4a29-9c5a-acae3d213637">202</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Administrative</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27ed6a1bdefe43098a08d48f9a6aa198_D20220101-20221231" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTpjZjg3MzlmYjZlMTQ0NTE1YTdiMGU4YjkwNzY4NTE4Yy90YWJsZXJhbmdlOmNmODczOWZiNmUxNDQ1MTVhN2IwZThiOTA3Njg1MThjXzQtMS0xLTEtMTAwMDAy_6876948b-4d04-4653-961c-a272c6b4a4c6">12,690</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8e9434eca1eb4912bd5cabf256b1ce98_D20210101-20211231" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTpjZjg3MzlmYjZlMTQ0NTE1YTdiMGU4YjkwNzY4NTE4Yy90YWJsZXJhbmdlOmNmODczOWZiNmUxNDQ1MTVhN2IwZThiOTA3Njg1MThjXzQtMy0xLTEtMTAwMDAy_1627c844-a232-4b1d-9d4a-02cb0603c89a">13,100</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0696558d634d43589761ef303baf8924_D20200101-20201231" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTpjZjg3MzlmYjZlMTQ0NTE1YTdiMGU4YjkwNzY4NTE4Yy90YWJsZXJhbmdlOmNmODczOWZiNmUxNDQ1MTVhN2IwZThiOTA3Njg1MThjXzQtNS0xLTEtMTAwMDAy_ec968753-b51a-4748-976b-90be11bf54f6">10,340</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTpjZjg3MzlmYjZlMTQ0NTE1YTdiMGU4YjkwNzY4NTE4Yy90YWJsZXJhbmdlOmNmODczOWZiNmUxNDQ1MTVhN2IwZThiOTA3Njg1MThjXzUtMS0xLTEtMTAwMDAy_c3abf56d-24f8-497e-a751-9f2d633a7050">13,816</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTpjZjg3MzlmYjZlMTQ0NTE1YTdiMGU4YjkwNzY4NTE4Yy90YWJsZXJhbmdlOmNmODczOWZiNmUxNDQ1MTVhN2IwZThiOTA3Njg1MThjXzUtMy0xLTEtMTAwMDAy_83fe3da7-ba8e-46c9-95b4-da81533fd6db">13,752</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTpjZjg3MzlmYjZlMTQ0NTE1YTdiMGU4YjkwNzY4NTE4Yy90YWJsZXJhbmdlOmNmODczOWZiNmUxNDQ1MTVhN2IwZThiOTA3Njg1MThjXzUtNS0xLTEtMTAwMDAy_8361c381-4f03-45dc-a92c-fb104f2af88e">10,826</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Administrative stock compensation expense includes all stock compensation earned by our administrative personnel, while cost of sales and selling stock compensation represents all stock compensation earned by our installation and sales employees, respectively. We recognized windfall tax benefits of $<ix:nonFraction unitRef="usd" contextRef="i9b1b1e6dc9f04cbebf0af1df1e3336ee_D20220101-20221231" decimals="-5" name="us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzgwODM_1773cea9-6b47-4eb8-8d26-41fcd261ff77">0.3</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="ie81373567f534c27a073ed483e7064c4_D20210101-20211231" decimals="-5" name="us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzEwOTk1MTE2NDk2MzA_2cb48d0b-92e3-4998-9389-edee66103df5">1.7</ix:nonFraction> million for the years ended December&#160;31, 2022 and 2021, and we recognized a tax shortfall of $<ix:nonFraction unitRef="usd" contextRef="i9f6e77b454314e42a56975bd433a11b0_D20200101-20201231" decimals="-5" sign="-" name="us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzEwOTk1MTE2NDk2MzU_951f5e77-5d2e-4833-8a49-4bd9d8182d9f">0.3</ix:nonFraction> million for the year ended December&#160;31, 2020, respectively, within the income tax provision in the Consolidated Statements of Operations and Comprehensive Income.</span></div></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">79</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:63pt;width:100%"><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div></div><ix:continuation id="i5b97e5bad1ac4a38877f325cc76cb086"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzkyNDM_9c60ff3a-7af5-407c-839f-149e4df3ae1f" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Unrecognized share-based compensation expense related to unvested awards was as follows (in thousands):</span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:55.332%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:20.391%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:20.393%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31, 2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unrecognized<br/>Compensation Expense<br/>on Unvested Awards</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted Average<br/>Remaining<br/>Vesting Period</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Common Stock Awards</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic83e19ff3ed8464b82cff42a06460329_I20221231" decimals="-3" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo2YWJkYjk5NmYxNGM0OTRmOTZmMGEzN2Y5ZDY2OTM0YS90YWJsZXJhbmdlOjZhYmRiOTk2ZjE0YzQ5NGY5NmYwYTM3ZjlkNjY5MzRhXzItMS0xLTEtMTAwMDAy_c9fb0801-7cad-4074-9457-48754efd0054">6,259</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i7b1daf5c317949f8b45bc9e3692eccda_D20220101-20221231" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo2YWJkYjk5NmYxNGM0OTRmOTZmMGEzN2Y5ZDY2OTM0YS90YWJsZXJhbmdlOjZhYmRiOTk2ZjE0YzQ5NGY5NmYwYTM3ZjlkNjY5MzRhXzItMy0xLTEtMTAwMDAy_fd9343e2-0695-4191-86de-bc7e63cf128f">1.7</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Performance-Based Stock Awards</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i742f1074f99d44938c1adea16c83563d_I20221231" decimals="-3" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo2YWJkYjk5NmYxNGM0OTRmOTZmMGEzN2Y5ZDY2OTM0YS90YWJsZXJhbmdlOjZhYmRiOTk2ZjE0YzQ5NGY5NmYwYTM3ZjlkNjY5MzRhXzMtMS0xLTEtMTAwMDAy_a7a3bb98-8a6a-49b3-8382-ac46128534de">5,825</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i8336d9bd9d7e4ca8a36e5d674412d2ba_D20220101-20221231" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo2YWJkYjk5NmYxNGM0OTRmOTZmMGEzN2Y5ZDY2OTM0YS90YWJsZXJhbmdlOjZhYmRiOTk2ZjE0YzQ5NGY5NmYwYTM3ZjlkNjY5MzRhXzMtMy0xLTEtMTAwMDAy_217ee96b-62fe-419f-896b-291761c072b5">1.6</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Performance-Based Restricted Stock Units</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i10f2addff94d4415b05d34bb939ab3b5_I20221231" decimals="-3" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo2YWJkYjk5NmYxNGM0OTRmOTZmMGEzN2Y5ZDY2OTM0YS90YWJsZXJhbmdlOjZhYmRiOTk2ZjE0YzQ5NGY5NmYwYTM3ZjlkNjY5MzRhXzQtMS0xLTEtMTAwMDAy_d859d2fb-6d68-45eb-863f-b962af796359">348</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i7fd8869fa57b44ef89607df7096ea515_D20220101-20221231" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo2YWJkYjk5NmYxNGM0OTRmOTZmMGEzN2Y5ZDY2OTM0YS90YWJsZXJhbmdlOjZhYmRiOTk2ZjE0YzQ5NGY5NmYwYTM3ZjlkNjY5MzRhXzQtMy0xLTEtMTAwMDAy_35f8accb-28cd-4628-a16d-356b89bbd55b">0.3</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total unrecognized compensation expense related to unvested awards</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo2YWJkYjk5NmYxNGM0OTRmOTZmMGEzN2Y5ZDY2OTM0YS90YWJsZXJhbmdlOjZhYmRiOTk2ZjE0YzQ5NGY5NmYwYTM3ZjlkNjY5MzRhXzUtMS0xLTEtMTAwMDAy_9f2f2458-80c7-458a-89b0-0be89bb37093">12,432</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr></table></div></ix:nonNumeric><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Total unrecognized compensation expense is subject to future adjustments for forfeitures. This expense is expected to be recognized over the remaining weighted-average period shown above on a straight-line basis except for the Performance-Based Stock Awards which uses the graded-vesting method. Shares forfeited are returned as treasury shares and available for future issuances.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the years ended December&#160;31, 2022, 2021 and 2020, our employees surrendered approximately <ix:nonFraction unitRef="shares" contextRef="i3f1013f46e884aa88d94776dc7259876_D20220101-20221231" decimals="-3" name="us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzg4NzA_59436979-b964-4e4f-be62-d6447f944686">53</ix:nonFraction>&#160;thousand, <ix:nonFraction unitRef="shares" contextRef="ib1c3019a8253424588b74711b0099a7d_D20210101-20211231" decimals="-3" name="us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzg4NzQ_de29ce56-3a6d-491c-b3e6-87335316559f">44</ix:nonFraction> thousand and <ix:nonFraction unitRef="shares" contextRef="i2043d7b952f344cab1ed7372bd7e3966_D20200101-20201231" decimals="-3" name="us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzg4ODE_0d660760-db41-4be6-8702-a74b23dc716b">25</ix:nonFraction> thousand shares of our common stock under all plans, respectively, to satisfy tax withholding obligations arising in connection with the vesting of common stock awards issued under our 2014 Omnibus Incentive Plan.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2022, approximately <ix:nonFraction unitRef="shares" contextRef="i7b47a8b9fe314f3ea1319317721195b0_I20221231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzkxMTM_65f1cb03-e3ce-4055-95dc-7be9b00ea684">1.7</ix:nonFraction> million of the <ix:nonFraction unitRef="shares" contextRef="i7b47a8b9fe314f3ea1319317721195b0_I20221231" decimals="-5" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzkxMjM_5e9392c9-fb02-4358-93f0-bd273f78de9e">3.0</ix:nonFraction> million shares of common stock authorized for issuance were available for issuance under the 2014 Omnibus Incentive Plan.</span></div></ix:continuation><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_127"></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 15 &#8211; <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:IncomeTaxDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90ZXh0cmVnaW9uOjcyMDc4NzhlODZlOTQwM2I4NDVhNWUzMWMzY2NjY2FjXzI1NDU_49a9e4d8-997b-4b73-8694-a0b0eb031a60" continuedAt="ic7c6f60d61a6422fb8a31b3145584c14" escape="true">INCOME TAXES</ix:nonNumeric></span></div><ix:continuation id="ic7c6f60d61a6422fb8a31b3145584c14" continuedAt="idf06914d086d4873b05e05b7f8d51422"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90ZXh0cmVnaW9uOjcyMDc4NzhlODZlOTQwM2I4NDVhNWUzMWMzY2NjY2FjXzI1NDY_9c1f25ca-5eb4-4ee2-af2a-0027aecae160" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The provision for income taxes is comprised of the following (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:67.543%"><tr><td style="width:1.0%"></td><td style="width:31.800%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:20.545%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.882%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:20.545%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.882%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:20.546%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Federal</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:CurrentFederalTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzMtMS0xLTEtMTAwMDAy_08ffaaea-594d-473d-b93a-c42d4796f3ef">55,488</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:CurrentFederalTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzMtMy0xLTEtMTAwMDAy_84124f43-9afc-40f3-9985-129bead54fca">27,011</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:CurrentFederalTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzMtNS0xLTEtMTAwMDAy_763de325-759b-4209-9454-9623f81082ae">33,495</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">State</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzQtMS0xLTEtMTAwMDAy_8a759a95-bd3b-49b7-9007-03f4cb0acec6">17,312</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzQtMy0xLTEtMTAwMDAy_89665667-d9b7-489d-b74c-e83a9d2c63f6">10,139</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzQtNS0xLTEtMTAwMDAy_28ebec74-9619-4b72-9b28-f9b8a1c33bfc">8,918</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:CurrentIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzUtMS0xLTEtMTAwMDAy_16e14c50-57fc-4fdb-809b-7cf5f8eee754">72,800</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:CurrentIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzUtMy0xLTEtMTAwMDAy_df886d7f-c870-4768-a62a-50be9066d790">37,150</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:CurrentIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzUtNS0xLTEtMTAwMDAy_809cfa9a-26d2-4bac-be0f-b41e32585e72">42,413</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Federal</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:DeferredFederalIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzctMS0xLTEtMTAwMDAy_fce1fbb2-c77f-4242-a26e-c4a378e249d3">5,584</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:DeferredFederalIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzctMy0xLTEtMTAwMDAy_6a8335e3-efb7-4b9e-b637-d604ff9df781">437</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:DeferredFederalIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzctNS0xLTEtMTAwMDAy_624f602f-09c0-4d81-b574-6a1ff9f065b2">7,177</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">State</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzgtMS0xLTEtMTAwMDAy_1ed50365-adba-4e8c-b7dc-b60d0190ee51">1,495</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzgtMy0xLTEtMTAwMDAy_632c2a6e-714b-48c5-b24d-e7d7161aa4c6">1</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzgtNS0xLTEtMTAwMDAy_98175769-259a-4641-8523-9e43e09d744b">1,298</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:DeferredIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzktMS0xLTEtMTAwMDAy_4238e554-bffb-4f6e-9443-65daa7a82187">7,079</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:DeferredIncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzktMy0xLTEtMTAwMDAy_b426d602-af52-4baa-9716-d263da105049">438</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:DeferredIncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzktNS0xLTEtMTAwMDAy_ee5708ba-980f-4295-9b8e-e7b0690f8fad">8,475</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total tax expense</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzEwLTEtMS0xLTEwMDAwMg_2e3a8238-ac55-4b72-8d3c-346695156ded">79,879</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzEwLTMtMS0xLTEwMDAwMg_71d2f5de-28b2-4cb8-b281-4e36501ceaba">36,712</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzEwLTUtMS0xLTEwMDAwMg_7c87f401-753a-47f3-8e46-7099e6fe3d0d">33,938</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="margin-top:5pt;text-align:center"><span><br/></span></div><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90ZXh0cmVnaW9uOjcyMDc4NzhlODZlOTQwM2I4NDVhNWUzMWMzY2NjY2FjXzI1NDc_3f7d5bc6-b539-4c9e-b5b2-29e6e8f6303a" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The reconciliation between our effective tax rate on net income and the federal statutory rate is as follows (dollars in thousands):</span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:43.344%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:6.648%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:6.648%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:6.655%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="33" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income tax at federal statutory rate</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzItMS0xLTEtMTAwMDAy_0559c4ed-4ac3-4ad0-989d-3e1bf43f085b">63,694</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="INF" name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzItMy0xLTEtMTAwMDAy_f1eba742-00a7-4f63-a1a8-bae9c5458b5e">21.0</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzItNS0xLTEtMTAwMDAy_626cd2b6-f6ce-4174-993c-cd611d0fea49">32,650</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="INF" name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzItNy0xLTEtMTAwMDAy_749beffc-2062-4db8-8dee-7c4d68738769">21.0</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzItOS0xLTEtMTAwMDAy_f6b9d33e-2ed5-491a-80d4-dee715dea4ca">27,547</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="INF" name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzItMTEtMS0xLTEwMDAwMg_bc371cf4-de9c-4e0f-b3d4-57c5ebc04755">21.0</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Stock compensation</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzMtMS0xLTEtMTAwMDAy_de7feedd-7f90-4966-87a0-2c96a7a05d7c">300</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzMtMy0xLTEtMTAwMDAy_6ca8b9d4-b54c-465a-a5fc-4f9e16ddfb52">0.1</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzMtNS0xLTEtMTAwMDAy_054922b1-fcc3-4e94-ac5a-d40dc2707f98">1,567</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="number" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="3" sign="-" name="us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzMtNy0xLTEtMTAwMDAy_914eb261-c0f5-4d5f-a435-410e489877f3">1.0</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzMtOS0xLTEtMTAwMDAy_3babee50-fe52-414a-b31f-dd2235b1fc08">331</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzMtMTEtMS0xLTEwMDAwMg_8aa5b4ab-343b-4171-89d2-510b8ea44e82">0.3</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other permanent items</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:IncomeTaxReconciliationOtherAdjustments" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzUtMS0xLTEtMTAwMDAy_bdcb634a-019c-4ad8-9634-62d38d720d3b">1,282</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzUtMy0xLTEtMTAwMDAy_2418104e-2b44-49e4-a527-c3667d73e1bf">0.4</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:IncomeTaxReconciliationOtherAdjustments" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzUtNS0xLTEtMTAwMDAy_aaf2a6ce-e0db-47a5-abbe-68193b047818">1,274</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzUtNy0xLTEtMTAwMDAy_fe582119-7d5a-44c0-8775-45812b62fdaa">0.8</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:IncomeTaxReconciliationOtherAdjustments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzUtOS0xLTEtMTAwMDAy_df963e9f-1dcd-4b1b-83d2-7433ba65697f">424</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzUtMTEtMS0xLTEwMDAwMg_49520f8b-84a7-4704-99cb-4e294e32d9c7">0.3</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Change in valuation allowance</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzYtMS0xLTEtMTAwMDAy_2fadf847-8791-4ecd-a06b-00049bee67b2">184</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="number" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="3" sign="-" name="us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzYtMy0xLTEtMTAwMDAy_bbd3e266-21a0-46de-8a54-0916dc1feff2">0.1</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzYtNS0xLTEtMTAwMDAy_09f00106-b727-4305-9e03-bed7751017d6">922</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="number" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="3" sign="-" name="us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzYtNy0xLTEtMTAwMDAy_ac95404e-1869-4200-a080-db6d8a49308d">0.6</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" sign="-" name="us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzYtOS0xLTEtMTAwMDAy_7612f9f3-0b2b-421d-97aa-6beed1ecaf42">207</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="number" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="3" sign="-" name="us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzYtMTEtMS0xLTEwMDAwMg_b64ad5fe-737d-4d08-bd00-fbf6b8ed83ef">0.2</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Change in uncertain tax positions</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:IncomeTaxReconciliationTaxContingencies" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzctMS0xLTEtMTAwMDAy_9a28525d-8ca3-4f67-9aeb-5faef6514774">459</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="number" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="3" sign="-" name="us-gaap:EffectiveIncomeTaxRateReconciliationTaxContingencies" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzctMy0xLTEtMTAwMDAy_1fe4e8b2-1def-43eb-9e57-af93611c8c99">0.1</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:IncomeTaxReconciliationTaxContingencies" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzctNS0xLTEtMTAwMDAy_999f0c49-bd16-412d-976e-481077b63010">2,867</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="number" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="3" sign="-" name="us-gaap:EffectiveIncomeTaxRateReconciliationTaxContingencies" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzctNy0xLTEtMTAwMDAy_9b658748-748b-425a-aa10-e647e0fc5fb1">1.8</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:IncomeTaxReconciliationTaxContingencies" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzctOS0xLTEtMTAwMDAy_9c40588c-bd68-4cb5-a5c0-93af6969afb5">65</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationTaxContingencies" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzctMTEtMS0xLTEwMDAwMg_4b4a4d41-d60c-41c3-81cf-4a9c59b2fff4">0.1</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">State income taxes, net of federal benefit</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzgtMS0xLTEtMTAwMDAy_45442136-6943-4135-aa44-a9903c8cd39a">15,246</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzgtMy0xLTEtMTAwMDAy_f5eb9d79-86bd-456c-82f8-9888cab2116b">5.0</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzgtNS0xLTEtMTAwMDAy_8baf46c8-06fc-4b7a-a366-95706c88a20e">8,144</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzgtNy0xLTEtMTAwMDAy_58e98a35-4b9b-4d51-88c1-712cd41a5716">5.2</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzgtOS0xLTEtMTAwMDAy_a51c5ba7-b4b6-4303-ae12-1728b9254108">5,778</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzgtMTEtMS0xLTEwMDAwMg_3eb32559-a696-4e29-9ea4-0d4e2d4f185d">4.4</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total tax expense</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzEwLTEtMS0xLTEwMDAwMg_bc297dbb-7fd0-458d-9fae-6dea840df4f3">79,879</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="3" name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzEwLTMtMS0xLTEwMDAwMg_d637cfed-0c85-4dd5-91b8-c275c356a813">26.3</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzEwLTUtMS0xLTEwMDAwMg_028cff91-8ac0-4829-807c-9d2ecaaed8c6">36,712</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="3" name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzEwLTctMS0xLTEwMDAwMg_ae573acd-11e4-44e4-891a-619c780d3d27">23.6</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzEwLTktMS0xLTEwMDAwMg_f890fcc2-f43e-47be-9e6e-79b5134c4eca">33,938</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="3" name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzEwLTExLTEtMS0xMDAwMDI_f45e5e2f-fd1c-4998-b1a2-98e1b1303d19">25.9</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div></ix:nonNumeric></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">80</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:63pt;width:100%"><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div></div><ix:continuation id="idf06914d086d4873b05e05b7f8d51422" continuedAt="i825c86b950db4ec2b2e01cc536786e0a"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90ZXh0cmVnaW9uOjcyMDc4NzhlODZlOTQwM2I4NDVhNWUzMWMzY2NjY2FjXzI1NDM_0e94bcf0-1963-4208-93d5-b58b8d67c4b9" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Components of the net deferred tax asset or liability are as follows (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:89.181%"><tr><td style="width:1.0%"></td><td style="width:65.457%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.293%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.455%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.295%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred Tax Assets</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued liabilities and allowances</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="ibp:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzQtMS0xLTEtMTAwMDAy_ebd0baa8-4aa9-47a0-9d1f-3b59b58850b9">13,009</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="ibp:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzQtMy0xLTEtMTAwMDAy_d8ce5e55-c7d2-4168-9f8c-72909609b86b">10,200</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Allowance for doubtful accounts</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzUtMS0xLTEtMTAwMDAy_fe0130e0-b08e-4c8a-941c-b44453730452">1,251</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzUtMy0xLTEtMTAwMDAy_50ff0173-e617-4faf-9200-e18482aa31a5">979</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventories</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:DeferredTaxAssetsInventory" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzYtMS0xLTEtMTAwMDAy_f9811476-b24d-41c8-882a-64a9cc7b0405">1,210</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:DeferredTaxAssetsInventory" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzYtMy0xLTEtMTAwMDAy_2f903e3d-33c7-4c88-a22a-442b4ee954a7">900</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:DeferredTaxAssetsPropertyPlantAndEquipment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzctMS0xLTEtMTAwMDAy_96b6669f-a239-44e9-98b9-79bedaa4baec">538</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:DeferredTaxAssetsPropertyPlantAndEquipment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzctMy0xLTEtMTAwMDAy_2797c3b4-5d82-4a4a-8fa0-4d5dfb9efb19">333</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intangibles</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:DeferredTaxAssetsGoodwillAndIntangibleAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzgtMS0xLTEtMTAwMDAy_e8a7ad7c-0810-49e7-83d0-a133006ac831">7,673</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:DeferredTaxAssetsGoodwillAndIntangibleAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzgtMy0xLTEtMTAwMDAy_ce5050c1-f76c-49fc-80ff-6e5ae9a63353">7,042</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net operating loss carryforwards</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwards" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzktMS0xLTEtMTAwMDAy_088747f6-f231-4d1b-b8ce-de14a6ae316b">719</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwards" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzktMy0xLTEtMTAwMDAy_05540c59-1efa-434b-bc44-2903d2dba1db">1,049</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:DeferredTaxAssetsOther" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzEwLTEtMS0xLTEwMDAwMg_5843a3b5-79ff-4467-bcf6-7059073d53b3">15</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:DeferredTaxAssetsOther" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzEwLTMtMS0xLTEwMDAwMg_dd233e06-64ff-43d7-ad7d-9c72d45c356e">14</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 55pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term deferred tax assets</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:DeferredTaxAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzExLTEtMS0xLTEwMDAwMg_9cf94c05-cbdf-45ba-be3d-71f26fae7122">24,415</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:DeferredTaxAssetsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzExLTMtMS0xLTEwMDAwMg_42279d5b-76e8-4920-a834-6708415b02b5">20,517</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: Valuation allowance</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:DeferredTaxAssetsValuationAllowance" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzEyLTEtMS0xLTEwMDAwMg_23c4f311-1af1-4ad1-befd-80ea6a3d1924">44</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:DeferredTaxAssetsValuationAllowance" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzEyLTMtMS0xLTEwMDAwMg_f4acfd71-2f86-473f-9151-8e874f9c67d1">216</ix:nonFraction>)</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 55pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net deferred tax assets</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:DeferredTaxAssetsNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzEzLTEtMS0xLTEwMDAwMg_f6921673-a64f-4e95-becc-1a6fa606e464">24,371</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:DeferredTaxAssetsNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzEzLTMtMS0xLTEwMDAwMg_1ac71296-1ed2-49f0-8ccd-adc5b4ac1021">20,301</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred Tax Liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued liabilities and allowances</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:DeferredTaxLiabilitiesDeferredExpenseReservesAndAccruals" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzE2LTEtMS0xLTEwMDAwMg_6fbb0c26-8ba1-46f4-ac11-e8c37dae51fb">640</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:DeferredTaxLiabilitiesDeferredExpenseReservesAndAccruals" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzE2LTMtMS0xLTEwMDAwMg_0deb7d8f-403b-4c25-bc87-01c97e91b2c0">669</ix:nonFraction>)</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzE3LTEtMS0xLTEwMDAwMg_8ba46a3f-ba99-4631-93ae-329eb8300679">8,489</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzE3LTMtMS0xLTEwMDAwMg_49519cc8-4697-4d70-8a1b-d1a469fc05ef">7,629</ix:nonFraction>)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intangibles</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzE4LTEtMS0xLTEwMDAwMg_4cdfec82-35eb-462d-9cf7-13337145f27d">10,659</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzE4LTMtMS0xLTEwMDAwMg_0465b7fb-eb86-40bb-af53-64fcd35bbb2e">6,783</ix:nonFraction>)</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Investment in partnership</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:DeferredTaxLiabilitiesInvestments" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzE5LTEtMS0xLTEwMDAwMg_ffe5cd6a-96e0-40c7-9337-5574fdbed673">31,154</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:DeferredTaxLiabilitiesInvestments" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzE5LTMtMS0xLTEwMDAwMg_37e300cb-699d-4307-9aec-66269b4b4928">8,271</ix:nonFraction>)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:DeferredTaxLiabilitiesOther" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzIwLTEtMS0xLTEwMDAwMg_5154cba2-5f35-409a-a0a7-878138e046af">1,067</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:DeferredTaxLiabilitiesOther" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzIwLTMtMS0xLTEwMDAwMg_972b413e-5d66-4594-8dac-efe3aa2bb7d0">793</ix:nonFraction>)</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 55pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term deferred tax liabilities</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:DeferredIncomeTaxLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzIxLTEtMS0xLTEwMDAwMg_cf0fce8c-13bb-4485-9846-62cc52160c3d">52,009</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:DeferredIncomeTaxLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzIxLTMtMS0xLTEwMDAwMg_fdf0c0ea-0ffd-4e00-930d-19314b9f4c45">24,145</ix:nonFraction>)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net deferred tax liabilities</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:DeferredTaxLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzIyLTEtMS0xLTEwMDAwMg_d3104714-883d-4d55-bc34-f4ddd678a2b3">27,638</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:DeferredTaxLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzIyLTMtMS0xLTEwMDAwMg_d677b187-fcb3-4624-9b88-a3592e73b63b">3,844</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">The above amounts are included in our Consolidated Balance Sheets as follows:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other non-current assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i522dacc92fda49dca2761a231d5ffdf7_I20221231" decimals="-3" name="us-gaap:DeferredTaxAssetsLiabilitiesNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzI1LTEtMS0xLTEwMDAwMg_4b682a6c-93cc-4292-8326-5d20d9f22b82">820</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i554c55111f144a58ad00025d79e13e9b_I20211231" decimals="-3" name="us-gaap:DeferredTaxAssetsLiabilitiesNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzI1LTMtMS0xLTEwMDAwMg_462ddfe9-46d2-41d4-9753-e2b89eeaee8b">975</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term deferred income tax liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i5fc8eaf38d8c4adcbf4acbfb0bca794c_I20221231" decimals="-3" name="us-gaap:DeferredTaxLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzI2LTEtMS0xLTEwMDAwMg_aa2fc7ea-17ee-4abf-b36e-d1e9b748b379">28,458</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id9c60ffd7a984d989effbfdbf1ab8bef_I20211231" decimals="-3" name="us-gaap:DeferredTaxLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzI2LTMtMS0xLTEwMDAwMg_506be13d-dab9-45d3-b9a5-eb97aed863cb">4,819</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net deferred tax liabilities</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:DeferredTaxLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzI3LTEtMS0xLTEwMDAwMg_941dbf0c-0538-4d62-af71-471d79b93ae8">27,638</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:DeferredTaxLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzI3LTMtMS0xLTEwMDAwMg_d677b187-fcb3-4624-9b88-a3592e73b63b">3,844</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2022, we had a deferred tax asset balance of $<ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-5" name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwards" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90ZXh0cmVnaW9uOjcyMDc4NzhlODZlOTQwM2I4NDVhNWUzMWMzY2NjY2FjXzM2Nw_a539ab4f-0724-45a6-85c7-8154b1987da8">0.7</ix:nonFraction> million reflecting the benefit of $<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-5" name="ibp:IncomeTaxExpenseBenefitOperatingLossCarryforwards" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90ZXh0cmVnaW9uOjcyMDc4NzhlODZlOTQwM2I4NDVhNWUzMWMzY2NjY2FjXzM5Ng_2f1a02d1-c4a0-4e17-952c-1a5121986b9b">3.4</ix:nonFraction> million in federal and state income tax net operating loss (NOL) carryforwards, the earliest of which expires in 2030.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Valuation Allowance</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We assess the available positive and negative evidence to estimate if sufficient future taxable income will be generated to utilize the existing deferred tax assets on a jurisdiction and by tax filing entity basis. A significant piece of objective negative evidence evaluated is cumulative losses incurred over the most recent three-year period. Such objective evidence limits our ability to consider other subjective positive evidence such as our projections for future growth.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Based on this evaluation, a valuation allowance has been recorded as of December&#160;31, 2022 and 2021 for the net deferred tax assets recorded on certain of our wholly owned subsidiaries. Such deferred tax assets relate primarily to net operating losses that are not more likely than not realizable. However, the amount of the deferred tax asset considered realizable could be adjusted if our estimate of future taxable income during the carryforward period changes, or if objective negative evidence in the form of cumulative losses is no longer present. Additional weight may be given to subjective evidence such as our projections for growth in this situation.</span></div></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">81</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:63pt;width:100%"><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div></div><ix:continuation id="i825c86b950db4ec2b2e01cc536786e0a"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Uncertain Tax Positions</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We are subject to taxation in the United States and various state jurisdictions. As of December&#160;31, 2022, our tax years for 2018 through 2020 are subject to examination by the tax authorities. <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90ZXh0cmVnaW9uOjcyMDc4NzhlODZlOTQwM2I4NDVhNWUzMWMzY2NjY2FjXzI1NDQ_c28e0d5f-07fb-42a8-9cf4-a95c6d7e5dd0" continuedAt="i5554c41b8856450c8d98bc24ef5cc4d9" escape="true">A rollforward of the gross unrecognized tax benefits is as follows (in thousands):</ix:nonNumeric></span></div><div style="margin-top:5pt;text-align:center"><ix:continuation id="i5554c41b8856450c8d98bc24ef5cc4d9"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:79.970%"><tr><td style="width:1.0%"></td><td style="width:80.618%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.182%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unrecognized tax benefit, December 31, 2019</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iff4d4f6f690d4bce8ad0aafed6fdedd3_I20191231" decimals="-3" name="us-gaap:UnrecognizedTaxBenefits" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo4MGEwZjI4M2FiMDQ0NjlkOTc1NWM4NDE0N2NlNmE5MC90YWJsZXJhbmdlOjgwYTBmMjgzYWIwNDQ2OWQ5NzU1Yzg0MTQ3Y2U2YTkwXzQtMS0xLTEtMTAwMDAy_bc26dc4a-b2c4-471c-9b35-4f3dc3ec83e2">5,717</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Increase as a result of tax positions taken during the period</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo4MGEwZjI4M2FiMDQ0NjlkOTc1NWM4NDE0N2NlNmE5MC90YWJsZXJhbmdlOjgwYTBmMjgzYWIwNDQ2OWQ5NzU1Yzg0MTQ3Y2U2YTkwXzUtMS0xLTEtMTAwMDAy_8fd66317-4307-4e34-8c20-55dac701b306">3,822</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Decrease as a result of tax positions taken during the period</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromCurrentPeriodTaxPositions" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo4MGEwZjI4M2FiMDQ0NjlkOTc1NWM4NDE0N2NlNmE5MC90YWJsZXJhbmdlOjgwYTBmMjgzYWIwNDQ2OWQ5NzU1Yzg0MTQ3Y2U2YTkwXzYtMS0xLTEtMTAwMDAy_62a8d00f-53e5-4f6f-8e4f-1fc4cc72592c">2,873</ix:nonFraction>)</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Increase as a result of expiring statutes</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="ibp:UnrecognizedTaxBenefitsIncreaseResultingFromLapseOfApplicableStatuteOfLimitations" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo4MGEwZjI4M2FiMDQ0NjlkOTc1NWM4NDE0N2NlNmE5MC90YWJsZXJhbmdlOjgwYTBmMjgzYWIwNDQ2OWQ5NzU1Yzg0MTQ3Y2U2YTkwXzctMS0xLTEtMTAwMDAy_0a8eb69f-c4e7-4e03-ac2d-78b712fbfac7">10</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unrecognized tax benefit, December 31, 2020</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i61f3c1563a76427b8e6b9d432aa44d9a_I20201231" decimals="-3" name="us-gaap:UnrecognizedTaxBenefits" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo4MGEwZjI4M2FiMDQ0NjlkOTc1NWM4NDE0N2NlNmE5MC90YWJsZXJhbmdlOjgwYTBmMjgzYWIwNDQ2OWQ5NzU1Yzg0MTQ3Y2U2YTkwXzgtMS0xLTEtMTAwMDAy_f94d5d3f-2e35-482c-86ac-76c004fd516f">6,676</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Increase as a result of tax positions taken during the period</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo4MGEwZjI4M2FiMDQ0NjlkOTc1NWM4NDE0N2NlNmE5MC90YWJsZXJhbmdlOjgwYTBmMjgzYWIwNDQ2OWQ5NzU1Yzg0MTQ3Y2U2YTkwXzktMS0xLTEtMTAwMDAy_e404018e-c20b-4318-8132-4f4d0132570a">4,482</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Decrease as a result of tax positions taken during the period</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromCurrentPeriodTaxPositions" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo4MGEwZjI4M2FiMDQ0NjlkOTc1NWM4NDE0N2NlNmE5MC90YWJsZXJhbmdlOjgwYTBmMjgzYWIwNDQ2OWQ5NzU1Yzg0MTQ3Y2U2YTkwXzEwLTEtMS0xLTEwMDAwMg_d2085530-de96-42eb-be82-15c0809cbc75">3,999</ix:nonFraction>)</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Decrease as a result of expiring statutes</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo4MGEwZjI4M2FiMDQ0NjlkOTc1NWM4NDE0N2NlNmE5MC90YWJsZXJhbmdlOjgwYTBmMjgzYWIwNDQ2OWQ5NzU1Yzg0MTQ3Y2U2YTkwXzExLTEtMS0xLTEwMDAwMg_8801e7ef-056a-435b-b842-ae22767443fa">2,857</ix:nonFraction>)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unrecognized tax benefit, December 31, 2021</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:UnrecognizedTaxBenefits" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo4MGEwZjI4M2FiMDQ0NjlkOTc1NWM4NDE0N2NlNmE5MC90YWJsZXJhbmdlOjgwYTBmMjgzYWIwNDQ2OWQ5NzU1Yzg0MTQ3Y2U2YTkwXzEyLTEtMS0xLTEwMDAwMg_90a7e97e-05d8-43a8-b361-66b1cad9ad24">4,302</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Increase as a result of tax positions taken during the period</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo4MGEwZjI4M2FiMDQ0NjlkOTc1NWM4NDE0N2NlNmE5MC90YWJsZXJhbmdlOjgwYTBmMjgzYWIwNDQ2OWQ5NzU1Yzg0MTQ3Y2U2YTkwXzktMS0xLTEtMTE5MTc3_b69b40ca-0209-4e16-9d90-d586ae0ea953">5,448</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Decrease as a result of tax positions taken during the period</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromCurrentPeriodTaxPositions" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo4MGEwZjI4M2FiMDQ0NjlkOTc1NWM4NDE0N2NlNmE5MC90YWJsZXJhbmdlOjgwYTBmMjgzYWIwNDQ2OWQ5NzU1Yzg0MTQ3Y2U2YTkwXzEwLTEtMS0xLTExOTE3Nw_586133fc-4cdd-4d5d-a8f7-c27467404a58">4,863</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Increase as a result of expiring statutes</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="ibp:UnrecognizedTaxBenefitsIncreaseResultingFromLapseOfApplicableStatuteOfLimitations" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo4MGEwZjI4M2FiMDQ0NjlkOTc1NWM4NDE0N2NlNmE5MC90YWJsZXJhbmdlOjgwYTBmMjgzYWIwNDQ2OWQ5NzU1Yzg0MTQ3Y2U2YTkwXzExLTEtMS0xLTExOTE3Nw_6db53f70-8318-4cef-924c-9758ab862156">3</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unrecognized tax benefit, December 31, 2022</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:UnrecognizedTaxBenefits" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo4MGEwZjI4M2FiMDQ0NjlkOTc1NWM4NDE0N2NlNmE5MC90YWJsZXJhbmdlOjgwYTBmMjgzYWIwNDQ2OWQ5NzU1Yzg0MTQ3Y2U2YTkwXzEyLTEtMS0xLTExOTE3Nw_3808105c-0670-4ef7-bda1-96631ab30f63">4,890</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></ix:continuation></div><div style="padding-left:490.5pt"><span><br/></span></div><div style="padding-left:490.5pt"><span><br/></span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Unrecognized tax benefits of $<ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-5" name="us-gaap:UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90ZXh0cmVnaW9uOjcyMDc4NzhlODZlOTQwM2I4NDVhNWUzMWMzY2NjY2FjXzU0OTc1NTgxOTA5Mg_1d18241e-de65-406d-9505-e0d820a05107">0.5</ix:nonFraction> million at December&#160;31, 2022 would affect the effective tax rate. Interest expense and penalties accrued related to uncertain tax positions as of December&#160;31, 2022 are $<ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-5" name="us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90ZXh0cmVnaW9uOjcyMDc4NzhlODZlOTQwM2I4NDVhNWUzMWMzY2NjY2FjXzIxMDM_db2d0c69-e40d-4fa7-9b27-b0e902cff97b">0.5</ix:nonFraction> million.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We expect a decrease to the amount of unrecognized tax benefits (exclusive of penalties and interest) within the next twelve months of <ix:nonFraction unitRef="usd" contextRef="i7030ce37fae04cf69695a4b0ca65329b_D20220101-20221231" decimals="INF" name="ibp:UnrecognizedTaxBenefitsNetOfIncomeTaxPenaltiesAndInterestExpense" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90ZXh0cmVnaW9uOjcyMDc4NzhlODZlOTQwM2I4NDVhNWUzMWMzY2NjY2FjXzIyNDI_32e363f6-7d36-4daf-a299-c76af300860e">zero</ix:nonFraction> to $<ix:nonFraction unitRef="usd" contextRef="i3a074bd43fbe424181ccfa73e65a0d18_D20220101-20221231" decimals="-5" name="ibp:UnrecognizedTaxBenefitsNetOfIncomeTaxPenaltiesAndInterestExpense" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90ZXh0cmVnaW9uOjcyMDc4NzhlODZlOTQwM2I4NDVhNWUzMWMzY2NjY2FjXzIyNDg_1247f2f2-3b67-489e-aeea-deee5d0129d9">2.8</ix:nonFraction> million.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Determining uncertain tax positions and the related estimated amounts requires judgment and carry estimation risk. If future tax law changes or interpretations should come to light, or additional information should become known, our conclusions regarding unrecognized tax benefits may change.</span></div></ix:continuation><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_130"></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 16 &#8211; <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:RelatedPartyTransactionsDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzAvZnJhZzozZmZlMTU0YTMwNTM0MGQ4OWJhMzM3MDA2OTk0ZTNjZS90ZXh0cmVnaW9uOjNmZmUxNTRhMzA1MzQwZDg5YmEzMzcwMDY5OTRlM2NlXzEzMjU_fd85ed30-901d-4aff-85ad-dc11c3912230" continuedAt="if50a59291f2647159d115b1a9c406acd" escape="true">RELATED PARTY TRANSACTIONS</ix:nonNumeric></span></div><ix:continuation id="if50a59291f2647159d115b1a9c406acd" continuedAt="i15222689094141ecbdd168bac879e3e3"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We sell installation services to other companies related to us through common or affiliated ownership and/or board of directors and/or management relationships. We also purchase services and materials and pay rent to companies with common or related ownership. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We lease our headquarters and certain other facilities from related parties. See Note 9, Leases, for future minimum lease payments to be paid to these related parties.</span></div><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:ScheduleOfRelatedPartyTransactionsTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzAvZnJhZzozZmZlMTU0YTMwNTM0MGQ4OWJhMzM3MDA2OTk0ZTNjZS90ZXh0cmVnaW9uOjNmZmUxNTRhMzA1MzQwZDg5YmEzMzcwMDY5OTRlM2NlXzEzMjY_4a3fdd32-1526-4542-8ae5-19314a5b5a80" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The amount of sales to common or related parties as well as the purchases from and rent expense paid to common or related parties were as follows (in thousands):</span></div><div style="margin-top:5pt;padding-left:6.75pt;padding-right:6.75pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:64.473%"><tr><td style="width:1.0%"></td><td style="width:29.058%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:21.575%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.707%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:21.575%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.707%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:21.578%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sales</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic1c6c2e6226b4b8f9eb0dd8fbad9d4f4_D20220101-20221231" decimals="-3" name="us-gaap:RevenueFromRelatedParties" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzAvZnJhZzozZmZlMTU0YTMwNTM0MGQ4OWJhMzM3MDA2OTk0ZTNjZS90YWJsZTo2MGQzMGVlNDFmYjQ0ZjQ1ODRjNDhjZTNlMjU5NmZkYy90YWJsZXJhbmdlOjYwZDMwZWU0MWZiNDRmNDU4NGM0OGNlM2UyNTk2ZmRjXzItMS0xLTEtMTAwMDAy_9dd60e13-4e90-4cdb-b705-b69b56def42f">12,793</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie33db4efa4914592a1448b3059cd6744_D20210101-20211231" decimals="-3" name="us-gaap:RevenueFromRelatedParties" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzAvZnJhZzozZmZlMTU0YTMwNTM0MGQ4OWJhMzM3MDA2OTk0ZTNjZS90YWJsZTo2MGQzMGVlNDFmYjQ0ZjQ1ODRjNDhjZTNlMjU5NmZkYy90YWJsZXJhbmdlOjYwZDMwZWU0MWZiNDRmNDU4NGM0OGNlM2UyNTk2ZmRjXzItMy0xLTEtMTAwMDAy_21f3f18e-96ca-4c3b-809f-cc8c0d0f00da">1,452</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id44a6b0dd5ec43d28543683a24ec6e10_D20200101-20201231" decimals="-3" name="us-gaap:RevenueFromRelatedParties" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzAvZnJhZzozZmZlMTU0YTMwNTM0MGQ4OWJhMzM3MDA2OTk0ZTNjZS90YWJsZTo2MGQzMGVlNDFmYjQ0ZjQ1ODRjNDhjZTNlMjU5NmZkYy90YWJsZXJhbmdlOjYwZDMwZWU0MWZiNDRmNDU4NGM0OGNlM2UyNTk2ZmRjXzItNS0xLTEtMTAwMDAy_1e728796-08b1-4e84-a205-d359eaf710e8">3,987</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Purchases</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic1c6c2e6226b4b8f9eb0dd8fbad9d4f4_D20220101-20221231" decimals="-3" name="us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzAvZnJhZzozZmZlMTU0YTMwNTM0MGQ4OWJhMzM3MDA2OTk0ZTNjZS90YWJsZTo2MGQzMGVlNDFmYjQ0ZjQ1ODRjNDhjZTNlMjU5NmZkYy90YWJsZXJhbmdlOjYwZDMwZWU0MWZiNDRmNDU4NGM0OGNlM2UyNTk2ZmRjXzMtMS0xLTEtMTAwMDAy_1e90a791-4f25-4fb0-aa94-927d114218b4">2,152</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie33db4efa4914592a1448b3059cd6744_D20210101-20211231" decimals="-3" name="us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzAvZnJhZzozZmZlMTU0YTMwNTM0MGQ4OWJhMzM3MDA2OTk0ZTNjZS90YWJsZTo2MGQzMGVlNDFmYjQ0ZjQ1ODRjNDhjZTNlMjU5NmZkYy90YWJsZXJhbmdlOjYwZDMwZWU0MWZiNDRmNDU4NGM0OGNlM2UyNTk2ZmRjXzMtMy0xLTEtMTAwMDAy_a5c7dda5-af4c-4d12-a053-82e2a64f3f3e">1,544</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id44a6b0dd5ec43d28543683a24ec6e10_D20200101-20201231" decimals="-3" name="us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzAvZnJhZzozZmZlMTU0YTMwNTM0MGQ4OWJhMzM3MDA2OTk0ZTNjZS90YWJsZTo2MGQzMGVlNDFmYjQ0ZjQ1ODRjNDhjZTNlMjU5NmZkYy90YWJsZXJhbmdlOjYwZDMwZWU0MWZiNDRmNDU4NGM0OGNlM2UyNTk2ZmRjXzMtNS0xLTEtMTAwMDAy_0c5eeaa7-18a7-4cfe-9b63-6ce0d8a9c29e">1,841</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Rent</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic1c6c2e6226b4b8f9eb0dd8fbad9d4f4_D20220101-20221231" decimals="-3" name="us-gaap:RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzAvZnJhZzozZmZlMTU0YTMwNTM0MGQ4OWJhMzM3MDA2OTk0ZTNjZS90YWJsZTo2MGQzMGVlNDFmYjQ0ZjQ1ODRjNDhjZTNlMjU5NmZkYy90YWJsZXJhbmdlOjYwZDMwZWU0MWZiNDRmNDU4NGM0OGNlM2UyNTk2ZmRjXzQtMS0xLTEtMTAwMDAy_5ac647fb-0331-48b7-923e-de57d0f1bd03">1,300</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie33db4efa4914592a1448b3059cd6744_D20210101-20211231" decimals="-3" name="us-gaap:RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzAvZnJhZzozZmZlMTU0YTMwNTM0MGQ4OWJhMzM3MDA2OTk0ZTNjZS90YWJsZTo2MGQzMGVlNDFmYjQ0ZjQ1ODRjNDhjZTNlMjU5NmZkYy90YWJsZXJhbmdlOjYwZDMwZWU0MWZiNDRmNDU4NGM0OGNlM2UyNTk2ZmRjXzQtMy0xLTEtMTAwMDAy_08b2475d-97b4-4306-8a61-04b322ed58d5">1,322</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id44a6b0dd5ec43d28543683a24ec6e10_D20200101-20201231" decimals="-3" name="us-gaap:RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzAvZnJhZzozZmZlMTU0YTMwNTM0MGQ4OWJhMzM3MDA2OTk0ZTNjZS90YWJsZTo2MGQzMGVlNDFmYjQ0ZjQ1ODRjNDhjZTNlMjU5NmZkYy90YWJsZXJhbmdlOjYwZDMwZWU0MWZiNDRmNDU4NGM0OGNlM2UyNTk2ZmRjXzQtNS0xLTEtMTAwMDAy_94dc4674-210b-4867-ac24-deae00042614">1,125</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:continuation><div><span><br/></span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="i15222689094141ecbdd168bac879e3e3">At December&#160;31, 2022 and 2021, we had related party balances of approximately $<ix:nonFraction unitRef="usd" contextRef="i058b6ccaa07643c7a3b721296a456c74_I20221231" decimals="-5" name="us-gaap:AccountsReceivableRelatedPartiesCurrent" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzAvZnJhZzozZmZlMTU0YTMwNTM0MGQ4OWJhMzM3MDA2OTk0ZTNjZS90ZXh0cmVnaW9uOjNmZmUxNTRhMzA1MzQwZDg5YmEzMzcwMDY5OTRlM2NlXzY5OQ_67c9f0ac-a873-4740-b02e-afa9dfa2f95b">3.3</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="i8dfa63c25f1641888218961240b7361e_I20211231" decimals="-5" name="us-gaap:AccountsReceivableRelatedPartiesCurrent" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzAvZnJhZzozZmZlMTU0YTMwNTM0MGQ4OWJhMzM3MDA2OTk0ZTNjZS90ZXh0cmVnaW9uOjNmZmUxNTRhMzA1MzQwZDg5YmEzMzcwMDY5OTRlM2NlXzcwNg_436ad60a-ad2d-47ec-a25c-c6bb0754bb65">0.9</ix:nonFraction> million, respectively, included in accounts receivable on our Consolidated Balance Sheets. These balances primarily represent trade accounts receivable arising during the normal course of business with various related parties. M/I Homes, Inc., a customer whose Chairman, President and Chief Executive Officer rejoined our board of directors in July of 2022, accounted for $<ix:nonFraction unitRef="usd" contextRef="i740af50718654e1aab1a54a820f2469b_I20221231" decimals="-5" name="us-gaap:AccountsReceivableRelatedPartiesCurrent" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzAvZnJhZzozZmZlMTU0YTMwNTM0MGQ4OWJhMzM3MDA2OTk0ZTNjZS90ZXh0cmVnaW9uOjNmZmUxNTRhMzA1MzQwZDg5YmEzMzcwMDY5OTRlM2NlXzkzNDU4NDg4Mzk2ODk_32d94349-e90d-4e00-ab87-b69b0931201a">2.5</ix:nonFraction> million of the related party accounts receivable balance as of December&#160;31, 2022. Additionally, M/I Homes, Inc. accounted for a significant portion of our related party sales during the year ended December&#160;31, 2022.</ix:continuation> </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">82</span></div></div></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_133"></div><hr style="page-break-after:always"/><div style="min-height:63pt;width:100%"><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 17 &#8211; <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:CommitmentsAndContingenciesDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzMvZnJhZzpmNzdjMGYwZjQwZjM0YzI0OGExNGI2NDMxOGI4OWUzNC90ZXh0cmVnaW9uOmY3N2MwZjBmNDBmMzRjMjQ4YTE0YjY0MzE4Yjg5ZTM0XzE2NzE_ca01e61d-0f5d-40fe-96da-b22923eb7222" continuedAt="iff6d8d32ffcc420c959b1940c06e95b7" escape="true">COMMITMENTS AND CONTINGENCIES</ix:nonNumeric></span></div><ix:continuation id="iff6d8d32ffcc420c959b1940c06e95b7"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Accrued General Liability and Auto Insurances</span></div><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="ibp:ScheduleOfAccruedInsuranceReservesTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzMvZnJhZzpmNzdjMGYwZjQwZjM0YzI0OGExNGI2NDMxOGI4OWUzNC90ZXh0cmVnaW9uOmY3N2MwZjBmNDBmMzRjMjQ4YTE0YjY0MzE4Yjg5ZTM0XzE2NzI_88dfce1f-6d0b-4188-93fd-9fc3e4249863" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accrued general liability and auto insurance reserves included on the Consolidated Balance Sheets were as follows (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:66.666%"><tr><td style="width:1.0%"></td><td style="width:54.163%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:20.829%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.677%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:20.831%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Included in other current liabilities</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:AccruedInsuranceCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzMvZnJhZzpmNzdjMGYwZjQwZjM0YzI0OGExNGI2NDMxOGI4OWUzNC90YWJsZTplMGE0MTQ5ZjgwNTY0YjhlODg1NGM4ZjRhYzEzNGQ2My90YWJsZXJhbmdlOmUwYTQxNDlmODA1NjRiOGU4ODU0YzhmNGFjMTM0ZDYzXzItMS0xLTEtMTAwMDAy_5b9b7cd9-8ebb-4f88-8a0a-ad9976c7e7d6">7,479</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:AccruedInsuranceCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzMvZnJhZzpmNzdjMGYwZjQwZjM0YzI0OGExNGI2NDMxOGI4OWUzNC90YWJsZTplMGE0MTQ5ZjgwNTY0YjhlODg1NGM4ZjRhYzEzNGQ2My90YWJsZXJhbmdlOmUwYTQxNDlmODA1NjRiOGU4ODU0YzhmNGFjMTM0ZDYzXzItMy0xLTEtMTAwMDAy_b48c5d00-e86d-4c14-ac84-b15d48283ac8">5,889</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Included in other long-term liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:AccruedInsuranceNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzMvZnJhZzpmNzdjMGYwZjQwZjM0YzI0OGExNGI2NDMxOGI4OWUzNC90YWJsZTplMGE0MTQ5ZjgwNTY0YjhlODg1NGM4ZjRhYzEzNGQ2My90YWJsZXJhbmdlOmUwYTQxNDlmODA1NjRiOGU4ODU0YzhmNGFjMTM0ZDYzXzMtMS0xLTEtMTAwMDAy_fb180a3f-9b01-4078-b3b3-46830dcb5170">17,528</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:AccruedInsuranceNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzMvZnJhZzpmNzdjMGYwZjQwZjM0YzI0OGExNGI2NDMxOGI4OWUzNC90YWJsZTplMGE0MTQ5ZjgwNTY0YjhlODg1NGM4ZjRhYzEzNGQ2My90YWJsZXJhbmdlOmUwYTQxNDlmODA1NjRiOGU4ODU0YzhmNGFjMTM0ZDYzXzMtMy0xLTEtMTAwMDAy_084944fe-31e2-4327-9d3f-c22dbc3c21b3">16,050</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-3" name="us-gaap:AccruedInsuranceCurrentAndNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzMvZnJhZzpmNzdjMGYwZjQwZjM0YzI0OGExNGI2NDMxOGI4OWUzNC90YWJsZTplMGE0MTQ5ZjgwNTY0YjhlODg1NGM4ZjRhYzEzNGQ2My90YWJsZXJhbmdlOmUwYTQxNDlmODA1NjRiOGU4ODU0YzhmNGFjMTM0ZDYzXzQtMS0xLTEtMTAwMDAy_469e6f0d-5e65-40a9-9c8e-18f09f762fca">25,007</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231" decimals="-3" name="us-gaap:AccruedInsuranceCurrentAndNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzMvZnJhZzpmNzdjMGYwZjQwZjM0YzI0OGExNGI2NDMxOGI4OWUzNC90YWJsZTplMGE0MTQ5ZjgwNTY0YjhlODg1NGM4ZjRhYzEzNGQ2My90YWJsZXJhbmdlOmUwYTQxNDlmODA1NjRiOGU4ODU0YzhmNGFjMTM0ZDYzXzQtMy0xLTEtMTAwMDAy_8b8d4bc4-4e5a-4d8b-9829-bac87b0c5978">21,939</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="padding-left:434.25pt"><span><br/></span></div><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="ibp:InsuranceReceivableClaimsTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzMvZnJhZzpmNzdjMGYwZjQwZjM0YzI0OGExNGI2NDMxOGI4OWUzNC90ZXh0cmVnaW9uOmY3N2MwZjBmNDBmMzRjMjQ4YTE0YjY0MzE4Yjg5ZTM0XzE2NzA_1636209c-43c0-479b-9b93-232c9a996c43" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We also had insurance receivables and indemnification assets included on the Consolidated Balance Sheets that, in aggregate, offset equal liabilities included within the reserve amounts noted above. The amounts were as follows (in thousands):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:72.291%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.911%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.914%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 4.37pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 4.37pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Insurance receivables and indemnification assets for claims under fully insured policies</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1f0f486b895040c1b1d766df54348319_I20221231" decimals="-3" name="ibp:InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzMvZnJhZzpmNzdjMGYwZjQwZjM0YzI0OGExNGI2NDMxOGI4OWUzNC90YWJsZTo1ODVjMDdlZGU0YWY0YWU4YTE1YjM4NDQ0MzlmOWZlYS90YWJsZXJhbmdlOjU4NWMwN2VkZTRhZjRhZThhMTViMzg0NDQzOWY5ZmVhXzItMS0xLTEtMTAwMDAy_cdd346ad-e540-4343-9779-31062538ef8b">4,933</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if6323e71637b49a185b9d3f6a1940c53_I20211231" decimals="-3" name="ibp:InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzMvZnJhZzpmNzdjMGYwZjQwZjM0YzI0OGExNGI2NDMxOGI4OWUzNC90YWJsZTo1ODVjMDdlZGU0YWY0YWU4YTE1YjM4NDQ0MzlmOWZlYS90YWJsZXJhbmdlOjU4NWMwN2VkZTRhZjRhZThhMTViMzg0NDQzOWY5ZmVhXzItMy0xLTEtMTAwMDAy_1374c811-7bc9-4c4f-a618-74b7173ea30a">3,578</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Insurance receivables for claims that exceeded the stop loss limit</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1f0f486b895040c1b1d766df54348319_I20221231" decimals="-3" name="ibp:InsuranceReceivableForClaimsExceedingStopLossLimit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzMvZnJhZzpmNzdjMGYwZjQwZjM0YzI0OGExNGI2NDMxOGI4OWUzNC90YWJsZTo1ODVjMDdlZGU0YWY0YWU4YTE1YjM4NDQ0MzlmOWZlYS90YWJsZXJhbmdlOjU4NWMwN2VkZTRhZjRhZThhMTViMzg0NDQzOWY5ZmVhXzMtMS0xLTEtMTAwMDAy_2966989a-09d1-49d1-b159-38bc4f5e8bff">380</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if6323e71637b49a185b9d3f6a1940c53_I20211231" decimals="-3" name="ibp:InsuranceReceivableForClaimsExceedingStopLossLimit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzMvZnJhZzpmNzdjMGYwZjQwZjM0YzI0OGExNGI2NDMxOGI4OWUzNC90YWJsZTo1ODVjMDdlZGU0YWY0YWU4YTE1YjM4NDQ0MzlmOWZlYS90YWJsZXJhbmdlOjU4NWMwN2VkZTRhZjRhZThhMTViMzg0NDQzOWY5ZmVhXzMtMy0xLTEtMTAwMDAy_8327b987-3125-482f-8064-d9ee52561e9b">278</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total insurance receivables and indemnification assets included in other non-current assets</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1f0f486b895040c1b1d766df54348319_I20221231" decimals="-3" name="us-gaap:InsuranceSettlementsReceivableNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzMvZnJhZzpmNzdjMGYwZjQwZjM0YzI0OGExNGI2NDMxOGI4OWUzNC90YWJsZTo1ODVjMDdlZGU0YWY0YWU4YTE1YjM4NDQ0MzlmOWZlYS90YWJsZXJhbmdlOjU4NWMwN2VkZTRhZjRhZThhMTViMzg0NDQzOWY5ZmVhXzQtMS0xLTEtMTAwMDAy_61198c92-afe9-4141-b783-d12be36a68bd">5,313</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if6323e71637b49a185b9d3f6a1940c53_I20211231" decimals="-3" name="us-gaap:InsuranceSettlementsReceivableNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzMvZnJhZzpmNzdjMGYwZjQwZjM0YzI0OGExNGI2NDMxOGI4OWUzNC90YWJsZTo1ODVjMDdlZGU0YWY0YWU4YTE1YjM4NDQ0MzlmOWZlYS90YWJsZXJhbmdlOjU4NWMwN2VkZTRhZjRhZThhMTViMzg0NDQzOWY5ZmVhXzQtMy0xLTEtMTAwMDAy_be6410c6-ced9-411f-91fa-38dc72ed97bf">3,856</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr></table></div></ix:nonNumeric><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Leases</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See Note 9, Leases, for further information on our lease commitments.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Other Commitments and Contingencies</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">From time to time, various claims and litigation are asserted or commenced against us principally arising from contractual matters and personnel and employment disputes. In determining loss contingencies, management considers the likelihood of loss as well as the ability to reasonably estimate the amount of such loss or liability. An estimated loss is recorded when it is considered probable that such a liability has been incurred and when the amount of loss can be reasonably estimated. As litigation is subject to inherent uncertainties, we cannot be certain that we will prevail in these matters. However, we do not believe that the ultimate outcome of any pending matters will have a material adverse effect on our consolidated financial position, results of operations or cash flows.</span></div></ix:continuation><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_136"></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 18 &#8211; <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:BusinessCombinationDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzUxMTA_57d21912-182d-4a04-b39a-725955d321a8" continuedAt="ia3f05f66b7f14d04a031222025b3c4b5" escape="true">BUSINESS COMBINATIONS</ix:nonNumeric></span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="ia3f05f66b7f14d04a031222025b3c4b5" continuedAt="i3ba3ab4ccdc843539fd0093a070ccb32">As part of our ongoing strategy to expand geographically and increase market share in certain markets, as well as diversify our products and end markets, we completed <ix:nonFraction unitRef="business" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="INF" name="us-gaap:NumberOfBusinessesAcquired" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzIwNA_e17d4a67-dcdc-4393-a1ca-3a78ee78d475">eight</ix:nonFraction>, <ix:nonFraction unitRef="business" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="INF" name="us-gaap:NumberOfBusinessesAcquired" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzIwOA_f747b226-600f-4517-b3dc-d92f023491aa">eleven</ix:nonFraction> and <ix:nonFraction unitRef="business" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="INF" name="us-gaap:NumberOfBusinessesAcquired" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzIxNQ_8bc9e564-ea31-4cbf-b936-fa5d33c0b7cd">nine</ix:nonFraction> business combinations during the years ended December&#160;31, 2022, 2021 and 2020, respectively. Acquisition-related costs amounted to $<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-5" name="us-gaap:BusinessCombinationAcquisitionRelatedCosts" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzUwMw_f49b9974-3cb9-46f8-bf88-1625e731f987">3.0</ix:nonFraction> million, $<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-5" name="us-gaap:BusinessCombinationAcquisitionRelatedCosts" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzUwNw_968a7548-25a7-4222-a993-ec96826a2322">3.8</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-5" name="us-gaap:BusinessCombinationAcquisitionRelatedCosts" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzUxNA_92034c40-9df9-4a6c-9d99-9fcd5a1078d0">3.0</ix:nonFraction> million for the years ended December&#160;31, 2022, 2021 and 2020, respectively, and are included in Administrative expenses on the Consolidated Statements of Operations and Comprehensive Income. In addition, we recognized gains on acquisition earnouts on the Consolidated Statements of Operations and Comprehensive Income of $<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-5" name="us-gaap:BusinessCombinationSeparatelyRecognizedTransactionsRevenuesAndGainsRecognized" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzU0OTc1NTgyMzE0NQ_7968223d-9f2a-40b8-ba9d-2d3d83ac48d9">16.1</ix:nonFraction> million, $<ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-5" name="us-gaap:BusinessCombinationSeparatelyRecognizedTransactionsRevenuesAndGainsRecognized" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzEwOTk1MTE2NDQwNTg_05cfdb5f-204f-4c6f-be38-7f406974fe42">1.0</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-5" name="us-gaap:BusinessCombinationSeparatelyRecognizedTransactionsRevenuesAndGainsRecognized" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzEwOTk1MTE2NDQwNjY_63ffbe63-50fa-4daa-91de-8fbf54cb7966">0.2</ix:nonFraction> million for the years ended December&#160;31, 2022, 2021 and 2020, respectively, due to probability assessments and to the cancellations of acquisition-related earnouts. The gain recorded during the year ended December&#160;31, 2022, is primarily comprised of a $<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-5" name="ibp:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnEarnoutLiability" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzQ5NDc4MDIzNTE3MTU_073e6e26-13d6-41ca-a1ac-4b254fd390c7">15.1</ix:nonFraction> million gain for the Central Aluminum acquisition (as defined below) recorded as a result of revised earnout target expectations. The goodwill recognized in conjunction with these business combinations represents the excess cost of the acquired entity over the net amount assigned to assets acquired and liabilities assumed. We expect to deduct $<ix:nonFraction unitRef="usd" contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231" decimals="-5" name="us-gaap:BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzg5Ng_e6f35141-7f5f-41fe-838a-615fb9a03803">41.3</ix:nonFraction> million of goodwill for tax purposes as a result of 2022 acquisitions.</ix:continuation></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">83</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:63pt;width:100%"><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div></div><ix:continuation id="i3ba3ab4ccdc843539fd0093a070ccb32" continuedAt="i9287df57221d4115b21b4f350e4bbf9f"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Below is a summary of each significant acquisition by year, including revenue and net income (loss) since date of acquisition, shown for the year of acquisition. The largest of our 2022 acquisitions were Central Aluminum Supply Corporation and Central Aluminum Supply of North Jersey, LLC (collectively "CAS") in April 2022 </span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">and ABS Insulating Company, Inc., ABS Sprayfoam Insulation, Inc. and ABS Coastal Insulating Company, LLC (collectively "ABS") in December 2022. In each table, &#8220;Other&#8221; represents acquisitions that were individually immaterial in that year. Net income (loss), as noted below, includes amortization, taxes and interest allocations when appropriate. Prior period amounts have been recast to conform with the current year presentation.</span></div><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzUxMDY_ac9c8975-6a69-4358-bb32-c66986bc82b7" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the year ended December&#160;31, 2022 (in thousands):</span></div><div style="margin-top:9pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:21.122%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.426%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.426%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.426%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.426%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.426%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.426%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.434%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022 Acquisitions</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquisition Type</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash Paid</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Seller Obligations</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total Purchase Price</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net Income (Loss)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">CAS</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4/11/2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Share</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie6eb768e720b4c85b65f110f827cc1c4_D20220411-20220411" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzItNi0xLTEtMTAyMzUy_d1b9ad3e-981b-4175-9c1c-350f00976147">55,150</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie6eb768e720b4c85b65f110f827cc1c4_D20220411-20220411" decimals="-3" name="ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzItOC0xLTEtMTAyMzUy_1d0aba39-3ff0-406e-8fbf-bb5d3d31acd3">22,927</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie6eb768e720b4c85b65f110f827cc1c4_D20220411-20220411" decimals="-3" name="us-gaap:BusinessCombinationConsiderationTransferred1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzItMTAtMS0xLTEwMjM1Mg_83b1d837-1169-44ff-a5c9-b8bb501781d4">78,077</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie6eb768e720b4c85b65f110f827cc1c4_D20220411-20220411" decimals="-3" name="us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzItMTItMS0xLTEwMjM1Mg_c746c963-33dd-4cef-bdf6-dcc22e82f1ca">37,822</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ie6eb768e720b4c85b65f110f827cc1c4_D20220411-20220411" decimals="-3" sign="-" name="us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzItMTQtMS0xLTEwMjM1Mg_a795e96c-3994-418b-8d3e-b55883e6436a">1,001</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ABS</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12/19/2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Share</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1892b348668840409ac2b29a9b4efe0a_D20221219-20221219" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzUtNi0xLTEtMTAyMzUy_9a7f228c-5aa6-406b-b969-5a8956013114">23,150</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1892b348668840409ac2b29a9b4efe0a_D20221219-20221219" decimals="-3" name="ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzUtOC0xLTEtMTAyMzUy_de98efc0-a100-4f64-987b-bde8d01d0e81">412</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1892b348668840409ac2b29a9b4efe0a_D20221219-20221219" decimals="-3" name="us-gaap:BusinessCombinationConsiderationTransferred1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzUtMTAtMS0xLTEwMjM1Mg_2f94821f-b045-4496-81ab-2dad836650e2">23,562</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1892b348668840409ac2b29a9b4efe0a_D20221219-20221219" decimals="-3" name="us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzUtMTItMS0xLTEwMjM1Mg_0d443a53-6259-4245-acfb-e65be28e0f9c">658</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i1892b348668840409ac2b29a9b4efe0a_D20221219-20221219" decimals="-3" sign="-" name="us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzUtMTQtMS0xLTEwMjM1Mg_1a6dbd5b-e3d1-4c58-b794-b30110b1c6e0">97</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Various</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asset/Share</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iea7705e474d24beea8cfced5133c968c_D20220101-20221231" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzYtNi0xLTEtMTAyMzUy_d6ab07eb-ebb7-43d1-93b5-5a6eeed04673">35,759</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iea7705e474d24beea8cfced5133c968c_D20220101-20221231" decimals="-3" name="ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzYtOC0xLTEtMTAyMzUy_4d72258a-5f67-4a9d-9102-31bb52e9eebb">3,639</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iea7705e474d24beea8cfced5133c968c_D20220101-20221231" decimals="-3" name="us-gaap:BusinessCombinationConsiderationTransferred1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzYtMTAtMS0xLTEwMjM1Mg_7a284ec7-f8db-43d0-94eb-114a56872f38">39,398</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iea7705e474d24beea8cfced5133c968c_D20220101-20221231" decimals="-3" name="us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzYtMTItMS0xLTEwMjM1Mg_ebdd9e3a-4984-45be-a66d-b76452f19b4f">22,576</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iea7705e474d24beea8cfced5133c968c_D20220101-20221231" decimals="-3" name="us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzYtMTQtMS0xLTEwMjM1Mg_0e36c2b5-5a68-4f04-a0cb-43b83dc829d0">787</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzctNi0xLTEtMTAyMzUy_9df755f4-fbe4-4364-ada6-b56861004705">114,059</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzctOC0xLTEtMTAyMzUy_448f55cb-f4c4-42a5-b858-2db6ebe74f79">26,978</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:BusinessCombinationConsiderationTransferred1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzctMTAtMS0xLTEwMjM1Mg_641b772c-bb2a-4a84-a652-05d30705aef7">141,037</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzctMTItMS0xLTEwMjM1Mg_0b3f315c-15c2-43cc-9223-9af82817edec">61,056</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" sign="-" name="us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzctMTQtMS0xLTEwMjM1Mg_386b589d-f599-40c6-b762-0694c20e5d17">311</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the year ended December&#160;31, 2021 (in thousands):</span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:21.122%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.426%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.426%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.426%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.426%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.426%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.426%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.434%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021 Acquisitions</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquisition Type</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash Paid</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Seller Obligations</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total Purchase Price</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net Income (Loss)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">IWI</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">03/01/2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Share</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i06c08f43586341e0919a0d465259db64_D20210301-20210301" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzEtNi0xLTEtMTAwMDAy_62bf1bdd-a642-4e5d-9a1a-a8f131c4e0cb">42,098</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i06c08f43586341e0919a0d465259db64_D20210301-20210301" decimals="-3" name="ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzEtOC0xLTEtMTAwMDAy_581dd29e-725d-4dc1-92c3-98685465cac6">5,959</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i06c08f43586341e0919a0d465259db64_D20210301-20210301" decimals="-3" name="us-gaap:BusinessCombinationConsiderationTransferred1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzEtMTAtMS0xLTEwMDAwMg_7ded9843-27f6-412e-8407-ff4529a6a73f">48,057</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i06c08f43586341e0919a0d465259db64_D20210301-20210301" decimals="-3" name="us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzEtMTItMS0xLTEwMDAwMg_e9e1200d-4968-455e-a402-789242af8d7b">36,259</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i06c08f43586341e0919a0d465259db64_D20210301-20210301" decimals="-3" name="us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzEtMTQtMS0xLTEwMDAwMg_1ea76a46-4ac6-49ed-a172-c1448399ebab">3,373</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Five Star</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9/13/2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Share</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie5deb12bfd9740e49eff8493415dce66_D20210913-20210913" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzUtNi0xLTEtMTAwMDAy_01843982-8556-42ae-a87e-4d3aa8f7c4c4">26,308</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie5deb12bfd9740e49eff8493415dce66_D20210913-20210913" decimals="-3" name="ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzUtOC0xLTEtMTAwMDAy_31f55dd2-0e4f-4243-9d72-4e386ee4dafe">5,466</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie5deb12bfd9740e49eff8493415dce66_D20210913-20210913" decimals="-3" name="us-gaap:BusinessCombinationConsiderationTransferred1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzUtMTAtMS0xLTEwMDAwMg_58e7ef46-4367-45e7-8858-f749ebeed1ea">31,774</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie5deb12bfd9740e49eff8493415dce66_D20210913-20210913" decimals="-3" name="us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzUtMTItMS0xLTEwMDAwMg_1207035a-82d5-408e-9b9b-168498399f79">6,861</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ie5deb12bfd9740e49eff8493415dce66_D20210913-20210913" decimals="-3" sign="-" name="us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzUtMTQtMS0xLTEwMDAwMg_51d110c7-c3bf-4877-90da-74e9c5ce87fd">119</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">AMD</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12/13/2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asset</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i48c7fbbb47c54999a359c177c6085728_D20211212-20211212" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzgtNi0xLTEtMTAwMDAy_428d6cd0-2b91-4d41-9ab3-6b73e01c4a05">119,490</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i48c7fbbb47c54999a359c177c6085728_D20211212-20211212" decimals="-3" name="ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzgtOC0xLTEtMTAwMDAy_2f2c423e-2d7e-4092-b9af-393e5176f9d3">6,631</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i48c7fbbb47c54999a359c177c6085728_D20211212-20211212" decimals="-3" name="us-gaap:BusinessCombinationConsiderationTransferred1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzgtMTAtMS0xLTEwMDAwMg_052aa2bc-bf55-40bd-8aa2-73b954944737">126,121</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i48c7fbbb47c54999a359c177c6085728_D20211212-20211212" decimals="-3" name="us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzgtMTItMS0xLTEwMDAwMg_7e77b411-c29e-4d75-9234-a63dad33eeec">3,707</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i48c7fbbb47c54999a359c177c6085728_D20211212-20211212" decimals="-3" sign="-" name="us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzgtMTQtMS0xLTEwMDAwMg_875ce213-e183-430e-aa79-6db661bd1a8f">225</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Various </span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asset/Share</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i19488ffc40d7436687f44b5b09748ede_D20210101-20211231" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzktNi0xLTEtMTAwMDAy_55a93d4b-dbb8-46d3-a67d-cb07331b2fe7">55,119</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i19488ffc40d7436687f44b5b09748ede_D20210101-20211231" decimals="-3" name="ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzktOC0xLTEtMTAwMDAy_3179c099-6ebb-49f8-8dec-1e80c668dffb">9,835</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i19488ffc40d7436687f44b5b09748ede_D20210101-20211231" decimals="-3" name="us-gaap:BusinessCombinationConsiderationTransferred1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzktMTAtMS0xLTEwMDAwMg_d0a2f30d-7c05-4ba1-9733-372ff4c9292f">64,954</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i19488ffc40d7436687f44b5b09748ede_D20210101-20211231" decimals="-3" name="us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzktMTItMS0xLTEwMDAwMg_c3191e39-76a5-4af0-a324-d40139696fdc">35,604</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i19488ffc40d7436687f44b5b09748ede_D20210101-20211231" decimals="-3" sign="-" name="us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzktMTQtMS0xLTEwMDAwMg_5a2c90f4-3e47-4d05-9c18-0d4df5640f72">390</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzEwLTYtMS0xLTEwMDAwMg_63dbd0ab-0821-4b4a-97af-5a9330f5bcd1">243,015</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzEwLTgtMS0xLTEwMDAwMg_d095e8a7-5b79-4ed4-9eee-ad07587abd7c">27,891</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:BusinessCombinationConsiderationTransferred1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzEwLTEwLTEtMS0xMDAwMDI_62acc3b4-ac9f-44da-87c2-9b18d9136d34">270,906</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzEwLTEyLTEtMS0xMDAwMDI_6281bb67-be44-4973-9817-78a43d011f51">82,431</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzEwLTE0LTEtMS0xMDAwMDI_8f385256-2933-4935-8e28-7ea99e7c61c5">2,639</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the year ended December&#160;31, 2020 (in thousands):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:21.122%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.426%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.426%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.426%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.426%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.426%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.426%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.434%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020 Acquisitions</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquisition Type</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash Paid</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Seller Obligations</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total Purchase Price</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net Income (Loss)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ICON</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10/13/2020</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asset</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i02c2ac93900744dfabba50ee8183f826_D20201013-20201013" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYjJiYWUxMTBjODE0YmU3ODQ3ZmM5ZmI3MTA0MTRlMS90YWJsZXJhbmdlOmFiMmJhZTExMGM4MTRiZTc4NDdmYzlmYjcxMDQxNGUxXzQtNi0xLTEtMTAwMDAy_270ca5f0-1b86-419d-be35-426e4908d3dc">16,900</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i02c2ac93900744dfabba50ee8183f826_D20201013-20201013" decimals="-3" name="ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYjJiYWUxMTBjODE0YmU3ODQ3ZmM5ZmI3MTA0MTRlMS90YWJsZXJhbmdlOmFiMmJhZTExMGM4MTRiZTc4NDdmYzlmYjcxMDQxNGUxXzQtOC0xLTEtMTAwMDAy_08e4feeb-6ee4-4c8c-bad7-9a529b3a796f">3,598</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i02c2ac93900744dfabba50ee8183f826_D20201013-20201013" decimals="-3" name="us-gaap:BusinessCombinationConsiderationTransferred1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYjJiYWUxMTBjODE0YmU3ODQ3ZmM5ZmI3MTA0MTRlMS90YWJsZXJhbmdlOmFiMmJhZTExMGM4MTRiZTc4NDdmYzlmYjcxMDQxNGUxXzQtMTAtMS0xLTEwMDAwMg_3c8280d5-d270-4db0-811f-834248d76d89">20,498</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i02c2ac93900744dfabba50ee8183f826_D20201013-20201013" decimals="-3" name="us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYjJiYWUxMTBjODE0YmU3ODQ3ZmM5ZmI3MTA0MTRlMS90YWJsZXJhbmdlOmFiMmJhZTExMGM4MTRiZTc4NDdmYzlmYjcxMDQxNGUxXzQtMTItMS0xLTEwMDAwMg_5eaeb080-2a55-492f-af2c-d96d42114811">4,798</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i02c2ac93900744dfabba50ee8183f826_D20201013-20201013" decimals="-3" name="us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYjJiYWUxMTBjODE0YmU3ODQ3ZmM5ZmI3MTA0MTRlMS90YWJsZXJhbmdlOmFiMmJhZTExMGM4MTRiZTc4NDdmYzlmYjcxMDQxNGUxXzQtMTQtMS0xLTEwMDAwMg_c67e734c-aeb7-4971-90e4-3b4ca3687ff5">449</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Various</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asset</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5a1d37cf66e64283aea0cb97c7d46f4a_D20200101-20201231" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYjJiYWUxMTBjODE0YmU3ODQ3ZmM5ZmI3MTA0MTRlMS90YWJsZXJhbmdlOmFiMmJhZTExMGM4MTRiZTc4NDdmYzlmYjcxMDQxNGUxXzctNi0xLTEtMTAwMDAy_83930cc4-6b6f-4b82-b115-985fb5eeb404">59,546</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5a1d37cf66e64283aea0cb97c7d46f4a_D20200101-20201231" decimals="-3" name="ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYjJiYWUxMTBjODE0YmU3ODQ3ZmM5ZmI3MTA0MTRlMS90YWJsZXJhbmdlOmFiMmJhZTExMGM4MTRiZTc4NDdmYzlmYjcxMDQxNGUxXzctOC0xLTEtMTAwMDAy_f291d1a8-5a71-4be1-acda-1545f796eece">10,488</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5a1d37cf66e64283aea0cb97c7d46f4a_D20200101-20201231" decimals="-3" name="us-gaap:BusinessCombinationConsiderationTransferred1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYjJiYWUxMTBjODE0YmU3ODQ3ZmM5ZmI3MTA0MTRlMS90YWJsZXJhbmdlOmFiMmJhZTExMGM4MTRiZTc4NDdmYzlmYjcxMDQxNGUxXzctMTAtMS0xLTEwMDAwMg_540e92c6-1425-4058-9b05-5b9054399d0d">70,034</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5a1d37cf66e64283aea0cb97c7d46f4a_D20200101-20201231" decimals="-3" name="us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYjJiYWUxMTBjODE0YmU3ODQ3ZmM5ZmI3MTA0MTRlMS90YWJsZXJhbmdlOmFiMmJhZTExMGM4MTRiZTc4NDdmYzlmYjcxMDQxNGUxXzctMTItMS0xLTEwMDAwMg_03d94c30-eb3e-42b7-8c16-8af45bb4a24d">35,696</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5a1d37cf66e64283aea0cb97c7d46f4a_D20200101-20201231" decimals="-3" name="us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYjJiYWUxMTBjODE0YmU3ODQ3ZmM5ZmI3MTA0MTRlMS90YWJsZXJhbmdlOmFiMmJhZTExMGM4MTRiZTc4NDdmYzlmYjcxMDQxNGUxXzctMTQtMS0xLTEwMDAwMg_4ea41369-77c9-456f-a9c5-cb68e98c032c">1,443</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYjJiYWUxMTBjODE0YmU3ODQ3ZmM5ZmI3MTA0MTRlMS90YWJsZXJhbmdlOmFiMmJhZTExMGM4MTRiZTc4NDdmYzlmYjcxMDQxNGUxXzgtNi0xLTEtMTAwMDAy_4e4a1a44-e267-48b1-bbdc-2cf4f47fadda">76,446</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYjJiYWUxMTBjODE0YmU3ODQ3ZmM5ZmI3MTA0MTRlMS90YWJsZXJhbmdlOmFiMmJhZTExMGM4MTRiZTc4NDdmYzlmYjcxMDQxNGUxXzgtOC0xLTEtMTAwMDAy_72f075ee-978d-483e-a915-ff3d53ed8949">14,086</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:BusinessCombinationConsiderationTransferred1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYjJiYWUxMTBjODE0YmU3ODQ3ZmM5ZmI3MTA0MTRlMS90YWJsZXJhbmdlOmFiMmJhZTExMGM4MTRiZTc4NDdmYzlmYjcxMDQxNGUxXzgtMTAtMS0xLTEwMDAwMg_ba824f3d-1720-4e8e-a46c-83df72f2f3f0">90,532</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYjJiYWUxMTBjODE0YmU3ODQ3ZmM5ZmI3MTA0MTRlMS90YWJsZXJhbmdlOmFiMmJhZTExMGM4MTRiZTc4NDdmYzlmYjcxMDQxNGUxXzgtMTItMS0xLTEwMDAwMg_3d4e229f-0c69-4778-b06d-5d37c09c2e22">40,494</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYjJiYWUxMTBjODE0YmU3ODQ3ZmM5ZmI3MTA0MTRlMS90YWJsZXJhbmdlOmFiMmJhZTExMGM4MTRiZTc4NDdmYzlmYjcxMDQxNGUxXzgtMTQtMS0xLTEwMDAwMg_8f080c60-4f7e-4bf0-b5ec-12baa227a190">1,892</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">84</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:63pt;width:100%"><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div></div><ix:continuation id="i9287df57221d4115b21b4f350e4bbf9f" continuedAt="i0ef947e14acd4abab5fed5d9d999b184"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Purchase Price Allocations</span></div><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzUxMDc_8f0f7f08-9e94-4b18-92fe-6657dfa1447b" continuedAt="i20d4ee2bbc134069aa4b4cde6b31a929" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The estimated fair values of the assets acquired and liabilities assumed for the acquisitions, as well as total purchase prices and cash paid, approximated the following (in thousands):</span></div><div style="margin-top:7pt;padding-left:5.62pt;padding-right:5.62pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.122%"><tr><td style="width:1.0%"></td><td style="width:46.097%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.731%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.389%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.436%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.389%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.731%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.389%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.738%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">CAS</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ABS</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Estimated fair values:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4ea0b889e5434d22b1941f98869bcd38_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzMtMy0xLTEtMTAyNTY0_a75e6250-d120-4a65-99fd-ceb355a9977d">243</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6799a626e2724e80b54d415eebad9174_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzMtOS0xLTEtMTAyNTY0_f7c0d12c-a284-48c6-a934-60e409d1f93b">193</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic3c81c2eb9544b3892643cc586b11a5b_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzMtMTEtMS0xLTEwMjU2NA_e785e050-3884-419e-8580-e9fc1c1efd6c">87</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1b1456749c4141e8935d5eff49c409fb_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzMtMTMtMS0xLTEwMjU2NA_5823a08b-9ede-44ec-a55b-0ef9300fde81">523</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts receivable</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4ea0b889e5434d22b1941f98869bcd38_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzQtMy0xLTEtMTAyNTY0_d09ae1ed-892b-4412-bcb3-5b25c4d4a162">3,502</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6799a626e2724e80b54d415eebad9174_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzQtOS0xLTEtMTAyNTY0_8c53f5e0-8965-4748-a562-ee13135970da">2,777</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic3c81c2eb9544b3892643cc586b11a5b_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzQtMTEtMS0xLTEwMjU2NA_af6bb4bd-c50f-49db-ab1e-89404cadae3c">5,800</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1b1456749c4141e8935d5eff49c409fb_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzQtMTMtMS0xLTEwMjU2NA_00393b99-59d8-44a7-9a88-b3286f538b9e">12,079</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventories</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4ea0b889e5434d22b1941f98869bcd38_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzUtMy0xLTEtMTAyNTY0_86638f27-80b7-4000-95af-7c447a1ba472">13,784</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6799a626e2724e80b54d415eebad9174_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzUtOS0xLTEtMTAyNTY0_b417941a-c154-45ea-87e7-409cdb4fdcdf">853</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic3c81c2eb9544b3892643cc586b11a5b_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzUtMTEtMS0xLTEwMjU2NA_011bcc7c-af02-45f3-9025-199ded88f574">2,456</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1b1456749c4141e8935d5eff49c409fb_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzUtMTMtMS0xLTEwMjU2NA_9875a6ae-5efd-424e-b9a1-82fece6291d4">17,093</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other current assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4ea0b889e5434d22b1941f98869bcd38_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzYtMy0xLTEtMTAyNTY0_f1403b43-617d-4735-aed1-0656020310d0">576</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6799a626e2724e80b54d415eebad9174_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzYtOS0xLTEtMTAyNTY0_e7b14d68-3ba4-4b76-9915-e1c21f5df125">485</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic3c81c2eb9544b3892643cc586b11a5b_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzYtMTEtMS0xLTEwMjU2NA_3ce10a4b-c3a2-42df-baed-1a81b775c6d5">71</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1b1456749c4141e8935d5eff49c409fb_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzYtMTMtMS0xLTEwMjU2NA_dc3e812f-ea05-4c86-b2d0-c4ec957be0c0">1,132</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4ea0b889e5434d22b1941f98869bcd38_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzctMy0xLTEtMTAyNTY0_ee9b91bd-8c4f-4579-9edc-25c081a73d06">2,590</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6799a626e2724e80b54d415eebad9174_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzctOS0xLTEtMTAyNTY0_5e02e681-d59b-45ce-b54b-f35f959796df">1,269</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic3c81c2eb9544b3892643cc586b11a5b_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzctMTEtMS0xLTEwMjU2NA_942820f2-ea53-4b40-ba18-a14cac5f9a39">4,498</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1b1456749c4141e8935d5eff49c409fb_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzctMTMtMS0xLTEwMjU2NA_57c0829f-6e28-4494-ba82-9554eee2eab1">8,357</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease right-of-use asset </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4ea0b889e5434d22b1941f98869bcd38_I20221231" decimals="-3" name="ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzgtMy0xLTEtMTAyNTY0_23463a79-63a9-4abd-b723-1046e3cd7695">844</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6799a626e2724e80b54d415eebad9174_I20221231" decimals="-3" name="ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzgtOS0xLTEtMTAyNTY0_2e5f3236-b505-476a-bb66-8e2f5c7abcf7">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic3c81c2eb9544b3892643cc586b11a5b_I20221231" decimals="-3" name="ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzgtMTEtMS0xLTEwMjU2NA_e009e5fb-c20f-41e9-b5f3-9d9702ae377f">66</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1b1456749c4141e8935d5eff49c409fb_I20221231" decimals="-3" name="ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzgtMTMtMS0xLTEwMjU2NA_2de6ce0b-30c7-426a-bf93-781d364e9871">910</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intangibles</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4ea0b889e5434d22b1941f98869bcd38_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzktMy0xLTEtMTAyNTY0_d0d2393c-3393-4365-9f11-f060130d21fc">34,900</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6799a626e2724e80b54d415eebad9174_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzktOS0xLTEtMTAyNTY0_157c6609-295c-469b-b659-d3db8b039077">12,800</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic3c81c2eb9544b3892643cc586b11a5b_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzktMTEtMS0xLTEwMjU2NA_0b713989-643f-4a5a-b0be-b763f144f0ce">17,365</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1b1456749c4141e8935d5eff49c409fb_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzktMTMtMS0xLTEwMjU2NA_7be9693e-72f7-4a9f-9b25-839970daf228">65,065</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4ea0b889e5434d22b1941f98869bcd38_I20221231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzEwLTMtMS0xLTEwMjU2NA_00391024-4753-422a-988e-68d8a16015df">27,594</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6799a626e2724e80b54d415eebad9174_I20221231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzEwLTktMS0xLTEwMjU2NA_5cf3c2b8-d601-4dbe-9f53-3d72c01c9359">10,546</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic3c81c2eb9544b3892643cc586b11a5b_I20221231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzEwLTExLTEtMS0xMDI1NjQ_12ba517d-87b8-4202-90d9-6a5eccb8b1bd">11,154</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1b1456749c4141e8935d5eff49c409fb_I20221231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzEwLTEzLTEtMS0xMDI1NjQ_1c5d828c-04f6-49cf-b43c-4fae945f8a05">49,294</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other non-current assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4ea0b889e5434d22b1941f98869bcd38_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzExLTMtMS0xLTEwMjU2NA_b4768244-4a25-4a17-90cc-f5af3157f3ab">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6799a626e2724e80b54d415eebad9174_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzExLTktMS0xLTEwMjU2NA_e912cc47-859b-49ee-8ef3-4f42ba758f2c">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic3c81c2eb9544b3892643cc586b11a5b_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzExLTExLTEtMS0xMDI1NjQ_35addc61-cb36-43f6-ae7d-4ab0f1da41c3">56</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1b1456749c4141e8935d5eff49c409fb_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzExLTEzLTEtMS0xMDI1NjQ_0afd4005-6d93-4e28-b65c-d0945b688e55">56</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts payable and other current liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i4ea0b889e5434d22b1941f98869bcd38_I20221231" decimals="-3" name="ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzEyLTMtMS0xLTEwMjU2NA_c73766b9-ed89-4840-85c2-b0661662ba88">5,387</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6799a626e2724e80b54d415eebad9174_I20221231" decimals="-3" name="ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzEyLTktMS0xLTEwMjU2NA_329f66b3-b048-496c-9b00-022d625f5de4">2,677</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic3c81c2eb9544b3892643cc586b11a5b_I20221231" decimals="-3" name="ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzEyLTExLTEtMS0xMDI1NjQ_99d89425-0b76-4924-bcae-fc89ad5cccda">2,133</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i1b1456749c4141e8935d5eff49c409fb_I20221231" decimals="-3" name="ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzEyLTEzLTEtMS0xMDI1NjQ_fa7d2e52-aed6-43b2-8b6d-283c2d66a05d">10,197</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred income tax liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4ea0b889e5434d22b1941f98869bcd38_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzEzLTMtMS0xLTExNTI5NQ_a6d526c6-4422-4e53-86c4-1ac83e5c980b">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6799a626e2724e80b54d415eebad9174_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzEzLTktMS0xLTExNTI5NQ_4359a29f-4c00-4a81-8164-d929ce250f1e">2,455</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic3c81c2eb9544b3892643cc586b11a5b_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzEzLTExLTEtMS0xMTUyOTU_45b89354-e869-47e3-8ab1-8acfd0e9af35">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i1b1456749c4141e8935d5eff49c409fb_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzEzLTEzLTEtMS0xMTUyOTU_694f9597-158c-4aeb-a33a-a857d24033d6">2,455</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income tax payable</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4ea0b889e5434d22b1941f98869bcd38_I20221231" decimals="-3" name="ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzEzLTMtMS0xLTEwMjU2NA_dc846809-3e7f-4d62-8ced-a4e7b644bae7">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6799a626e2724e80b54d415eebad9174_I20221231" decimals="-3" name="ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzEzLTktMS0xLTEwMjU2NA_2a640823-b158-43a2-b540-4cf22908408c">229</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic3c81c2eb9544b3892643cc586b11a5b_I20221231" decimals="-3" name="ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzEzLTExLTEtMS0xMDI1NjQ_5e7db9d5-069d-41d8-95cf-1d14858c72ee">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i1b1456749c4141e8935d5eff49c409fb_I20221231" decimals="-3" name="ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzEzLTEzLTEtMS0xMDI1NjQ_7959f8bf-1e82-414b-a97d-da903d2ca018">229</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other long-term liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i4ea0b889e5434d22b1941f98869bcd38_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzE1LTMtMS0xLTEwMjU2NA_5c1896d1-b573-41de-ba98-8a84f8aee8c2">569</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6799a626e2724e80b54d415eebad9174_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzE1LTktMS0xLTEwMjU2NA_48a67b65-ac68-448c-8897-0db55bb2324e">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic3c81c2eb9544b3892643cc586b11a5b_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzE1LTExLTEtMS0xMDI1NjQ_f87b862b-c4eb-4ffa-a852-305e0d4004c5">22</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i1b1456749c4141e8935d5eff49c409fb_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzE1LTEzLTEtMS0xMDI1NjQ_1aefc390-a711-42ee-a7bc-1b4d7ce06af2">591</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fair value of assets acquired and purchase price</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4ea0b889e5434d22b1941f98869bcd38_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzE2LTMtMS0xLTEwMjU2NA_1c97199e-852e-46c7-8e05-f252ef3e344c">78,077</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6799a626e2724e80b54d415eebad9174_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzE2LTktMS0xLTEwMjU2NA_caadcae6-3ec2-431f-b075-9e0f85b3db31">23,562</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic3c81c2eb9544b3892643cc586b11a5b_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzE2LTExLTEtMS0xMDI1NjQ_c6460710-3940-44c7-8ebd-7d56492ba33d">39,398</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1b1456749c4141e8935d5eff49c409fb_I20221231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzE2LTEzLTEtMS0xMDI1NjQ_8a01b8ad-7787-4557-8154-d6ac8d6ab54b">141,037</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less seller obligations</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i17e40893dd0a4213a1a40822606dfbc2_D20220101-20221231" decimals="-3" name="ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzE3LTMtMS0xLTEwMjU2NA_a83b4d69-5f1d-46bd-87f3-d8dd14739980">22,927</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1b396f3cac964335a636f6f33458525c_D20220101-20221231" decimals="-3" name="ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzE3LTktMS0xLTEwMjU2NA_609a36d0-9d94-450d-bcc7-7724703af46e">412</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iea7705e474d24beea8cfced5133c968c_D20220101-20221231" decimals="-3" name="ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzE3LTExLTEtMS0xMDI1NjQ_8d537887-ad84-4a26-9710-599dd49ee325">3,639</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i276eed2b955047a5a439cf9a1c6de1cd_D20220101-20221231" decimals="-3" name="ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzE3LTEzLTEtMS0xMDI1NjQ_7d5f4ced-8b57-4a71-b749-e5ef66b8d9da">26,978</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash paid</span></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i17e40893dd0a4213a1a40822606dfbc2_D20220101-20221231" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzE4LTMtMS0xLTEwMjU2NA_1ad380d1-5298-4a58-943c-78cb71b8c935">55,150</ix:nonFraction>&#160;</span></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1b396f3cac964335a636f6f33458525c_D20220101-20221231" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzE4LTktMS0xLTEwMjU2NA_5a9e3b1b-06ca-4da3-97fe-e3fc4431e011">23,150</ix:nonFraction>&#160;</span></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iea7705e474d24beea8cfced5133c968c_D20220101-20221231" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzE4LTExLTEtMS0xMDI1NjQ_39ea6aee-c334-4f0c-b509-100d3a838945">35,759</ix:nonFraction>&#160;</span></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i276eed2b955047a5a439cf9a1c6de1cd_D20220101-20221231" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzE4LTEzLTEtMS0xMDI1NjQ_d7cfa7da-5591-4dbe-8b32-5b8ac2c117d1">114,059</ix:nonFraction>&#160;</span></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="margin-top:7pt;padding-right:11.25pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:32.964%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.619%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.619%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.619%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.619%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.624%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="27" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">IWI</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Five Star</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">AMD</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Estimated fair values:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i37461516afa443f88fce8a7675608fdd_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzQtMS0xLTEtMTAwMDAy_2c7cffc5-c007-4297-99fa-008b0f6c8fbb">168</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3f72dbb0d5fd4dcb9005c5f0671dda91_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzQtOS0xLTEtMTAwMDAy_e2ea2a35-6c3b-47d7-8551-9d109aabfcc8">1,472</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ief0682dd5a7e47179c4aa045d07dca78_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzQtMTUtMS0xLTEwMDAwMg_a7a72e02-808f-41ef-b813-9664ead01ca4">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1fea681f0af84e9cb42e995810f12b15_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzQtMTctMS0xLTEwMDAwMg_39d4c1ed-7726-4527-aed9-d4f8532a746a">67</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i54c7aecd583b422db1836ea36b1df9ac_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzQtMTktMS0xLTEwMDAwMg_c8598edd-9432-4e79-9390-ab49391cb502">1,707</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts receivable</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i37461516afa443f88fce8a7675608fdd_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzUtMS0xLTEtMTAwMDAy_5fb68130-2e51-4a00-87fd-dcdb42eee6bc">5,122</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3f72dbb0d5fd4dcb9005c5f0671dda91_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzUtOS0xLTEtMTAwMDAy_fc5270a6-e9c0-4ec9-a889-1fc788bc4214">4,583</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ief0682dd5a7e47179c4aa045d07dca78_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzUtMTUtMS0xLTEwMDAwMg_abc446ac-1a41-4d18-8158-acd0711a0568">8,393</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1fea681f0af84e9cb42e995810f12b15_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzUtMTctMS0xLTEwMDAwMg_a5d638a0-eab1-4b97-8784-a9898882765d">13,584</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i54c7aecd583b422db1836ea36b1df9ac_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzUtMTktMS0xLTEwMDAwMg_c7a25a1f-3878-48ea-bf21-a6d29dfd00ee">31,682</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventories</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i37461516afa443f88fce8a7675608fdd_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzYtMS0xLTEtMTAwMDAy_454f71db-ee0d-44c7-b44b-20ba87eb5c25">1,157</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3f72dbb0d5fd4dcb9005c5f0671dda91_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzYtOS0xLTEtMTAwMDAy_fec2b091-8415-451c-9b01-d4f07de6dbd8">1,399</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ief0682dd5a7e47179c4aa045d07dca78_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzYtMTUtMS0xLTEwMDAwMg_4fd9312e-9351-46a5-8196-7deef76f94a3">7,540</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1fea681f0af84e9cb42e995810f12b15_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzYtMTctMS0xLTEwMDAwMg_3cce2cfa-d6db-4eb2-812d-f4b040235965">1,786</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i54c7aecd583b422db1836ea36b1df9ac_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzYtMTktMS0xLTEwMDAwMg_e86a7abd-5ea2-485c-92a7-a82cb5f9df1e">11,882</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other current assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i37461516afa443f88fce8a7675608fdd_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzctMS0xLTEtMTAwMDAy_bced11bc-cb9c-476b-b52c-5b0997dd0b59">3,014</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3f72dbb0d5fd4dcb9005c5f0671dda91_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzctOS0xLTEtMTAwMDAy_4a4967a9-1afc-4781-8e91-95191c90df14">330</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ief0682dd5a7e47179c4aa045d07dca78_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzctMTUtMS0xLTEwMDAwMg_3ca2a5cc-be0d-4eb9-9685-46a9bc0ea08f">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1fea681f0af84e9cb42e995810f12b15_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzctMTctMS0xLTEwMDAwMg_bd69cdf3-62e6-4ebe-9e7e-4cc690fd5121">1,975</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i54c7aecd583b422db1836ea36b1df9ac_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzctMTktMS0xLTEwMDAwMg_2de75b7d-b354-4815-97b5-26756cd02807">5,319</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i37461516afa443f88fce8a7675608fdd_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzgtMS0xLTEtMTAwMDAy_c978d840-249f-415d-be26-17a5c1f05b88">796</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3f72dbb0d5fd4dcb9005c5f0671dda91_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzgtOS0xLTEtMTAwMDAy_218477c4-f612-409f-b52b-e4814e070aa9">1,161</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ief0682dd5a7e47179c4aa045d07dca78_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzgtMTUtMS0xLTEwMDAwMg_08bd423e-d92c-4674-b7a4-fe3ea445b9e4">1,133</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1fea681f0af84e9cb42e995810f12b15_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzgtMTctMS0xLTEwMDAwMg_c5511e0c-e20f-47f2-8bde-19e8e0205637">4,124</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i54c7aecd583b422db1836ea36b1df9ac_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzgtMTktMS0xLTEwMDAwMg_fa0cbe13-cafd-45d9-8d09-32e3534c99db">7,214</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease right of-use-asset</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i37461516afa443f88fce8a7675608fdd_I20211231" decimals="-3" name="ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzktMS0xLTEtMTA3OTM5_c64429af-8d6a-4452-8a4d-944aa4c97082">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3f72dbb0d5fd4dcb9005c5f0671dda91_I20211231" decimals="-3" name="ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzktOS0xLTEtMTA3OTM5_d87ae8e5-49a5-453e-a7a7-64047315073e">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ief0682dd5a7e47179c4aa045d07dca78_I20211231" decimals="-3" name="ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzktMTUtMS0xLTEwNzkzOQ_10b15884-e47a-44d2-9e03-a5bc3d848070">199</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1fea681f0af84e9cb42e995810f12b15_I20211231" decimals="-3" name="ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzktMTctMS0xLTEwNzk0OQ_1b017fd6-7396-4e60-a2c7-827760b14877">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i54c7aecd583b422db1836ea36b1df9ac_I20211231" decimals="-3" name="ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzktMTktMS0xLTEwNzk0OQ_e6d77c91-77c6-45dc-813e-95b49e727802">199</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intangibles</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i37461516afa443f88fce8a7675608fdd_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzktMS0xLTEtMTAwMDAy_951b767d-dc0a-435d-ac12-39977f4ee71c">25,200</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3f72dbb0d5fd4dcb9005c5f0671dda91_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzktOS0xLTEtMTAwMDAy_c73e4645-ca5f-464e-aa89-0534266881ad">17,400</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ief0682dd5a7e47179c4aa045d07dca78_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzktMTUtMS0xLTEwMDAwMg_2e8af3bd-d6b4-4513-a594-6fca50f7f544">52,800</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1fea681f0af84e9cb42e995810f12b15_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzktMTctMS0xLTEwMDAwMg_fc3e91d4-fefd-4913-9f7d-fbcd3a9b72ed">31,554</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i54c7aecd583b422db1836ea36b1df9ac_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzktMTktMS0xLTEwMDAwMg_f70fd448-2c1a-4b71-aa25-81c2720ac473">126,954</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i37461516afa443f88fce8a7675608fdd_I20211231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzEwLTEtMS0xLTEwMDAwMg_fdca4623-a3fb-47d1-ad6a-01030093e5f8">23,282</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3f72dbb0d5fd4dcb9005c5f0671dda91_I20211231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzEwLTktMS0xLTEwMDAwMg_64a6d1b1-f7ef-4be1-a579-113c2c57a656">6,626</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ief0682dd5a7e47179c4aa045d07dca78_I20211231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzEwLTE1LTEtMS0xMDAwMDI_0bcd5742-b61b-436d-af81-a75b20b7bbd1">56,327</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1fea681f0af84e9cb42e995810f12b15_I20211231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzEwLTE3LTEtMS0xMDAwMDI_6ab98606-d7a1-4302-bf91-b502860d23ba">21,122</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i54c7aecd583b422db1836ea36b1df9ac_I20211231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzEwLTE5LTEtMS0xMDAwMDI_5bee8cad-d83a-44ae-9b71-74e6cc12db9f">107,357</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other non-current assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i37461516afa443f88fce8a7675608fdd_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzExLTEtMS0xLTEwMDAwMg_9cef5cfc-df64-45db-883f-b56e56bdda4d">264</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3f72dbb0d5fd4dcb9005c5f0671dda91_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzExLTktMS0xLTEwMDAwMg_61da9c58-fbc2-4fd5-bf1f-6c333cf69e30">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ief0682dd5a7e47179c4aa045d07dca78_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzExLTE1LTEtMS0xMDAwMDI_015b61e4-e57d-4bf0-bcf7-d06d5ab52c0f">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1fea681f0af84e9cb42e995810f12b15_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzExLTE3LTEtMS0xMDAwMDI_5960193c-f1aa-45ae-9913-73debd8653a8">417</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i54c7aecd583b422db1836ea36b1df9ac_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzExLTE5LTEtMS0xMDAwMDI_c64c74d6-d6fd-44b4-b413-057948bf1eb9">681</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts payable and other current liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i37461516afa443f88fce8a7675608fdd_I20211231" decimals="-3" name="ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzEyLTEtMS0xLTEwMDAwMg_ca1874d3-5a08-495b-b7eb-511faa63722b">8,416</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i3f72dbb0d5fd4dcb9005c5f0671dda91_I20211231" decimals="-3" name="ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzEyLTktMS0xLTEwMDAwMg_33cf06db-8219-485e-8e29-2fbd1753494e">1,170</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ief0682dd5a7e47179c4aa045d07dca78_I20211231" decimals="-3" name="ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzEyLTE1LTEtMS0xMDAwMDI_7d6d144a-a799-40bd-ba73-d118a05886b0">184</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i1fea681f0af84e9cb42e995810f12b15_I20211231" decimals="-3" name="ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzEyLTE3LTEtMS0xMDAwMDI_0972380f-2794-4234-80e0-c958075b93c7">6,809</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i54c7aecd583b422db1836ea36b1df9ac_I20211231" decimals="-3" name="ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzEyLTE5LTEtMS0xMDAwMDI_e649adfa-aab6-403d-a57d-3106844ad585">16,579</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred income tax liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i37461516afa443f88fce8a7675608fdd_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzEzLTEtMS0xLTEwMDAwMg_5a780bb9-df89-4a81-88d7-4dfc7bdb6c49">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3f72dbb0d5fd4dcb9005c5f0671dda91_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzEzLTktMS0xLTEwMDAwMg_463a065b-7ad4-476b-a72a-94e8c0291121">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ief0682dd5a7e47179c4aa045d07dca78_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzEzLTE1LTEtMS0xMDAwMDI_c2500dd8-18dd-4317-bddc-d59958d6ac43">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i1fea681f0af84e9cb42e995810f12b15_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzEzLTE3LTEtMS0xMDAwMDI_f9c80029-bce2-4269-928c-476c3759d9f6">2,089</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i54c7aecd583b422db1836ea36b1df9ac_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzEzLTE5LTEtMS0xMDAwMDI_ba82c185-f190-48e5-9424-5baf64af3502">2,089</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other long-term liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i37461516afa443f88fce8a7675608fdd_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE0LTEtMS0xLTEwMDAwMg_a502a9ea-432b-4550-a56d-cbe1517b0cff">2,530</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i3f72dbb0d5fd4dcb9005c5f0671dda91_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE0LTktMS0xLTEwMDAwMg_ea2f647a-795d-4411-a0a3-51386433cb07">27</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ief0682dd5a7e47179c4aa045d07dca78_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE0LTE1LTEtMS0xMDAwMDI_6055f738-b8b7-40b6-b2bf-d8fa549efb4e">87</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i1fea681f0af84e9cb42e995810f12b15_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE0LTE3LTEtMS0xMDAwMDI_2cb0fd34-57cb-4f85-97ed-68c9bb77e535">777</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i54c7aecd583b422db1836ea36b1df9ac_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE0LTE5LTEtMS0xMDAwMDI_69b326c8-25a9-4c31-b433-b0da58f85dd5">3,421</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fair value of assets acquired and purchase price</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i37461516afa443f88fce8a7675608fdd_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE1LTEtMS0xLTEwMDAwMg_a413e5d7-62b7-4bd4-85ff-458f29cf5b4d">48,057</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3f72dbb0d5fd4dcb9005c5f0671dda91_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE1LTktMS0xLTEwMDAwMg_52eae96a-b05a-4e98-8ac2-5b7fbda35abb">31,774</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ief0682dd5a7e47179c4aa045d07dca78_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE1LTE1LTEtMS0xMDAwMDI_13f48c06-a1e9-4487-8728-5082308b8792">126,121</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1fea681f0af84e9cb42e995810f12b15_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE1LTE3LTEtMS0xMDAwMDI_e19b78d0-cc92-4d24-b3ba-20819936a704">64,954</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i54c7aecd583b422db1836ea36b1df9ac_I20211231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE1LTE5LTEtMS0xMDAwMDI_0ca1b640-8ef3-4369-9d16-856e6e7ac38e">270,906</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less seller obligations</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i446e65df412f490680b00003d7cc2e37_D20210101-20211231" decimals="-3" name="ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE2LTEtMS0xLTEwMDAwMg_256a0846-24cf-41f3-8aef-7e4903f7a977">5,959</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4cc34e117bf4229a839843df1c735d9_D20210101-20211231" decimals="-3" name="ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE2LTktMS0xLTEwMDAwMg_8c1fa5a7-1b09-41f6-80c2-d5705da40995">5,466</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i14747cce30c4466097ad2e71ba78d40d_D20210101-20211231" decimals="-3" name="ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE2LTE1LTEtMS0xMDAwMDI_2304db12-75c5-48eb-8de3-54474a71c8b0">6,631</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i19488ffc40d7436687f44b5b09748ede_D20210101-20211231" decimals="-3" name="ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE2LTE3LTEtMS0xMDAwMDI_9351917c-d95c-4e31-bd2b-58261fef4bb6">9,835</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i924b337b12024dc6bb6ab4744d528582_D20210101-20211231" decimals="-3" name="ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE2LTE5LTEtMS0xMDAwMDI_c8369381-956c-4cac-a6c9-36d18258e051">27,891</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash paid</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i446e65df412f490680b00003d7cc2e37_D20210101-20211231" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE3LTEtMS0xLTEwMDAwMg_61cfecfe-d97d-486d-9a76-c654d7b924df"><ix:nonFraction unitRef="usd" contextRef="i446e65df412f490680b00003d7cc2e37_D20210101-20211231" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE3LTEtMS0xLTEwMDAwMg_f0287fbc-b815-4db5-9ede-2eb873978a1c">42,098</ix:nonFraction></ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4cc34e117bf4229a839843df1c735d9_D20210101-20211231" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE3LTktMS0xLTEwMDAwMg_74d1251c-9210-4190-8fda-ed4d2f79cc7e"><ix:nonFraction unitRef="usd" contextRef="ia4cc34e117bf4229a839843df1c735d9_D20210101-20211231" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE3LTktMS0xLTEwMDAwMg_ed089405-d604-47a7-8e76-b58a5ed6f39b">26,308</ix:nonFraction></ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i14747cce30c4466097ad2e71ba78d40d_D20210101-20211231" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE3LTE1LTEtMS0xMDAwMDI_05f7025d-2a74-4348-9957-faa3a69c6698"><ix:nonFraction unitRef="usd" contextRef="i14747cce30c4466097ad2e71ba78d40d_D20210101-20211231" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE3LTE1LTEtMS0xMDAwMDI_71a26158-2ece-4e39-bb20-8bb4dce7445e">119,490</ix:nonFraction></ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i19488ffc40d7436687f44b5b09748ede_D20210101-20211231" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE3LTE3LTEtMS0xMDAwMDI_2f95839d-9bd1-4059-901a-3064601f155d">55,119</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i924b337b12024dc6bb6ab4744d528582_D20210101-20211231" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE3LTE5LTEtMS0xMDAwMDI_436f5430-1b23-43e0-be9e-8208a852e51b"><ix:nonFraction unitRef="usd" contextRef="i924b337b12024dc6bb6ab4744d528582_D20210101-20211231" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE3LTE5LTEtMS0xMDAwMDI_8cce8eae-9c88-49b4-88dc-8dfdb89a7fec">243,015</ix:nonFraction></ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">85</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:63pt;width:100%"><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div></div><ix:continuation id="i0ef947e14acd4abab5fed5d9d999b184" continuedAt="i2720bd5048dd45f186b75c78ecadc56c"><div style="margin-top:7pt;padding-right:11.25pt"><ix:continuation id="i20d4ee2bbc134069aa4b4cde6b31a929"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:59.572%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.619%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.619%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.622%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ICON</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Estimated fair values:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts receivable</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i37b53970c4384c8d8b5815957a2a9908_I20201231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzQtNy0xLTEtMTAwMDAy_ce55d536-a9ef-43a1-a98e-ec4bd3b3782c">4,828</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if857301956214edda788d832c3f07c01_I20201231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzQtMTMtMS0xLTEwMDAwMg_64059fd8-c30e-402f-be55-fd8dde7cc175">12,777</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia387d8d0753347c3b9d9976f60eb571f_I20201231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzQtMTUtMS0xLTEwMDAwMg_7a06ab39-55e9-4615-96e9-fcf5ae02140a">17,605</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventories</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i37b53970c4384c8d8b5815957a2a9908_I20201231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzUtNy0xLTEtMTAwMDAy_ca9ce932-fb6a-40e4-8956-3ff6027d318c">243</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if857301956214edda788d832c3f07c01_I20201231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzUtMTMtMS0xLTEwMDAwMg_b1d9aa3c-6af3-45e7-8874-61211e983f88">2,518</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia387d8d0753347c3b9d9976f60eb571f_I20201231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzUtMTUtMS0xLTEwMDAwMg_6eb26661-1e1c-4bd6-805f-9de3c3c8c446">2,761</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other current assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i37b53970c4384c8d8b5815957a2a9908_I20201231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzYtNy0xLTEtMTAwMDAy_42a0cb1f-c27c-4a2c-a009-173bc81f4c1b">675</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if857301956214edda788d832c3f07c01_I20201231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzYtMTMtMS0xLTEwMDAwMg_16a45391-047f-45b9-89fb-edbd01caecc5">779</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia387d8d0753347c3b9d9976f60eb571f_I20201231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzYtMTUtMS0xLTEwMDAwMg_854e242c-f4f2-468c-9249-411a5f930465">1,454</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i37b53970c4384c8d8b5815957a2a9908_I20201231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzctNy0xLTEtMTAwMDAy_db418a09-02a5-4823-9345-555126e58388">380</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if857301956214edda788d832c3f07c01_I20201231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzctMTMtMS0xLTEwMDAwMg_15c29896-3ef3-4fb8-b298-18a625770f42">5,482</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia387d8d0753347c3b9d9976f60eb571f_I20201231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzctMTUtMS0xLTEwMDAwMg_4ee2134b-68a0-4ec8-a072-98021c845b8a">5,862</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intangibles</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i37b53970c4384c8d8b5815957a2a9908_I20201231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzgtNy0xLTEtMTAwMDAy_a4b18768-366e-434a-9b03-fad098a92fb5">11,830</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if857301956214edda788d832c3f07c01_I20201231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzgtMTMtMS0xLTEwMDAwMg_3a244300-153a-456b-a04e-bd3fe538dbc7">34,393</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia387d8d0753347c3b9d9976f60eb571f_I20201231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzgtMTUtMS0xLTEwMDAwMg_b72a71ce-f04f-4906-a2fa-b40bb57f2eb8">46,223</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i37b53970c4384c8d8b5815957a2a9908_I20201231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzktNy0xLTEtMTAwMDAy_ddd1e8b9-ce24-4afe-8c0d-f38977db9369">2,870</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if857301956214edda788d832c3f07c01_I20201231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzktMTMtMS0xLTEwMDAwMg_4db583ff-7c6e-4548-814b-1e8655b5ec9a">18,435</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia387d8d0753347c3b9d9976f60eb571f_I20201231" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzktMTUtMS0xLTEwMDAwMg_3ee25e09-1552-49b3-98b9-7d8f2d9315f9">21,305</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other non-current assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i37b53970c4384c8d8b5815957a2a9908_I20201231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzEwLTctMS0xLTEwMDAwMg_0bfb547d-3f27-40ed-bb87-344021099b16">145</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if857301956214edda788d832c3f07c01_I20201231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzEwLTEzLTEtMS0xMDAwMDI_79f4fbbf-ec6f-4339-b9ae-1d38b60a96e7">96</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia387d8d0753347c3b9d9976f60eb571f_I20201231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzEwLTE1LTEtMS0xMDAwMDI_e12c01e8-47cd-4053-9ae3-dab57bcb876d">241</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts payable and other current liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i37b53970c4384c8d8b5815957a2a9908_I20201231" decimals="-3" name="ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzExLTctMS0xLTEwMDAwMg_e32b6cf0-7d34-4491-a886-a5d78d11e552">445</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="if857301956214edda788d832c3f07c01_I20201231" decimals="-3" name="ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzExLTEzLTEtMS0xMDAwMDI_9536dcda-c9f4-4a8a-b9e9-78f1be34eaaf">4,196</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia387d8d0753347c3b9d9976f60eb571f_I20201231" decimals="-3" name="ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzExLTE1LTEtMS0xMDAwMDI_76a20cec-c7a8-4e73-886a-e56298c049f6">4,641</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other long-term liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i37b53970c4384c8d8b5815957a2a9908_I20201231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzEzLTctMS0xLTEwMDAwMg_b6f45589-eebf-4a80-8adb-94b0279b2c39">28</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="if857301956214edda788d832c3f07c01_I20201231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzEzLTEzLTEtMS0xMDAwMDI_65eecdac-22a4-49e0-9e9e-741b2af7fdaf">250</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia387d8d0753347c3b9d9976f60eb571f_I20201231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzEzLTE1LTEtMS0xMDAwMDI_0d7ae199-8ae9-4a0c-b905-cfc1a424bfe4">278</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fair value of assets acquired and purchase price</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i37b53970c4384c8d8b5815957a2a9908_I20201231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzE0LTctMS0xLTEwMDAwMg_8060f9ab-85a9-49ca-87f4-34caffbed1c8">20,498</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if857301956214edda788d832c3f07c01_I20201231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzE0LTEzLTEtMS0xMDAwMDI_66e152da-b930-4178-ae37-a5a07a5aca58">70,034</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia387d8d0753347c3b9d9976f60eb571f_I20201231" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzE0LTE1LTEtMS0xMDAwMDI_ae408814-8001-46d1-a65f-d5039eabfa8f">90,532</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less seller obligations</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i84a0099b25b7437fa82470d966b55b3f_D20200101-20201231" decimals="-3" name="ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzE1LTctMS0xLTEwMDAwMg_a0bbbf56-921b-4a2d-9506-d27862ce88a0">3,598</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5a1d37cf66e64283aea0cb97c7d46f4a_D20200101-20201231" decimals="-3" name="ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzE1LTEzLTEtMS0xMDAwMDI_4f733e8e-96e6-47a8-b04a-9ad3553240bf">10,488</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i00fded2e14994d2da83d37845bb5950c_D20200101-20201231" decimals="-3" name="ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzE1LTE1LTEtMS0xMDAwMDI_bb8c82b9-ce93-4a44-82d3-17057a44a47f">14,086</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash paid</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i84a0099b25b7437fa82470d966b55b3f_D20200101-20201231" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzE2LTctMS0xLTEwMDAwMg_8fd0c934-d3f9-47af-b529-d81db4718e77">16,900</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5a1d37cf66e64283aea0cb97c7d46f4a_D20200101-20201231" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzE2LTEzLTEtMS0xMDAwMDI_c2b28202-272a-4be6-9b9d-3ce5691d573b">59,546</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i00fded2e14994d2da83d37845bb5950c_D20200101-20201231" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzE2LTE1LTEtMS0xMDAwMDI_3fae4020-7b2e-4b8d-94fa-6081b7d08f36">76,446</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></ix:continuation></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Contingent consideration is included as &#8220;seller obligations&#8221; in the above table or within &#8220;fair value of assets acquired&#8221; if subsequently paid during the period presented. These contingent payments consist primarily of earnouts based on performance that are recorded at fair value at the time of acquisition, and/or non-compete agreements and amounts based on working capital calculations. When these payments are expected to be made over one year from the acquisition date, the contingent consideration is discounted to net present value of future payments based on a weighted average of various future forecast scenarios.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Further adjustments to the allocation for each acquisition still under its measurement period are expected as third-party or internal valuations are finalized, certain tax aspects of the transaction are completed, contingent consideration is settled, and customary post-closing reviews are concluded during the measurement period attributable to each individual business combination. As a result, insignificant adjustments to the fair value of assets acquired, and in some cases total purchase price, have been made to certain business combinations since the date of acquisition and future adjustments may be made through the end of each measurement period. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The provisional amounts for one of our 2021 acquisitions originally reported in our Consolidated Balance Sheets included in our Annual Report on Form 10-K for the period ended December&#160;31, 2021 were adjusted due to adjustments to pre-acquisition financial information and ongoing analysis of the fair value measurements. As a result of an independent appraisal, we increased goodwill by approximately $<ix:nonFraction unitRef="usd" contextRef="i063187198d8a4662a8e28042ad648f83_D20220101-20221231" decimals="-5" name="us-gaap:GoodwillPurchaseAccountingAdjustments" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzEwOTk1MTE2NTI4NTM_b08385f5-b7ad-4f68-b53e-7a70e4ed1fed">1.6</ix:nonFraction> million and decreased intangibles by $(<ix:nonFraction unitRef="usd" contextRef="i43ab2840190646a9a29f626d4ea9f201_I20211231" decimals="-5" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzEwOTk1MTE2NTI4ODY_8494e4c9-4ba7-4e7c-9d13-d27382987e54">3.0</ix:nonFraction>) million. These adjustments were within applicable measurement period guidelines and did not effect earnings.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Goodwill and intangibles per the above table may not agree to the total gross increases of these assets as shown in Note 7, Goodwill and Intangibles, during the years ended December&#160;31, 2022, 2021 and 2020 due to minor adjustments to goodwill for the allocation of certain acquisitions still under measurement as well as other immaterial intangible assets added during the ordinary course of business. </span></div><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:FiniteLivedAndIndefiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzUxMDg_1838a186-1b77-4659-b24f-b736290d636f" escape="true"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Estimates of acquired intangible assets related to the acquisitions are as follows (dollars in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"></td><td style="width:30.811%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.635%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.535%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.635%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.535%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.635%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.535%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.635%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.535%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.635%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.535%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.639%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquired intangibles assets</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Estimated Fair Value</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted Average Estimated Useful Life (yrs)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Estimated Fair Value</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted Average Estimated Useful Life (yrs)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Estimated Fair Value</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted Average Estimated Useful Life (yrs)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iae67bb7820424a05bb9980c0a54a1be7_D20220101-20221231" decimals="-3" name="us-gaap:FinitelivedIntangibleAssetsAcquired1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzItMS0xLTEtMTAwMDAy_80cd823b-521e-4d8c-820b-1f3055160e29">45,236</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="iae67bb7820424a05bb9980c0a54a1be7_D20220101-20221231" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzItMy0xLTEtMTAwMDAy_48ae5054-0a09-4656-b48f-75a5c1e11699">12</ix:nonNumeric></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib8eafb787d87447f819d6c22e636a252_D20210101-20211231" decimals="-3" name="us-gaap:FinitelivedIntangibleAssetsAcquired1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzItNS0xLTEtMTAwMDAy_cd765ae6-37fc-4e69-9347-b7f23865ba96">95,173</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="ib8eafb787d87447f819d6c22e636a252_D20210101-20211231" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzItNy0xLTEtMTAwMDAy_3a668c84-d8ad-4701-823c-d0a565d3c7bd">12</ix:nonNumeric></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i29b07b75dec34c58bfd17b6c91f7699f_D20200101-20201231" decimals="-3" name="us-gaap:FinitelivedIntangibleAssetsAcquired1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzItOS0xLTEtMTAwMDAy_2536cd5c-e8e5-4d30-a54c-beec1f312145">28,307</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i29b07b75dec34c58bfd17b6c91f7699f_D20200101-20201231" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzItMTEtMS0xLTEwMDAwMg_2a03e353-e8b1-4b91-9cd8-f60dfa64a6a7">8</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trademarks and trade names</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4666e95abc2946b4bcffd2713db1b4eb_D20220101-20221231" decimals="-3" name="us-gaap:FinitelivedIntangibleAssetsAcquired1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzMtMS0xLTEtMTAwMDAy_dc847110-58c5-48a8-95f5-e188ae8dd2ab">16,794</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i4666e95abc2946b4bcffd2713db1b4eb_D20220101-20221231" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzMtMy0xLTEtMTAwMDAy_9946890e-963e-4354-b89b-1d58b8168423">15</ix:nonNumeric></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i655e00359db74a0498a6260a1e2b37b2_D20210101-20211231" decimals="-3" name="us-gaap:FinitelivedIntangibleAssetsAcquired1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzMtNS0xLTEtMTAwMDAy_269360d7-3939-40f2-aac3-74e52e83eb85">23,149</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i655e00359db74a0498a6260a1e2b37b2_D20210101-20211231" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzMtNy0xLTEtMTAwMDAy_722b6509-f7af-4c56-adac-42e59c41e234">15</ix:nonNumeric></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i225a38d9cb004a13806bd49986908185_D20200101-20201231" decimals="-3" name="us-gaap:FinitelivedIntangibleAssetsAcquired1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzMtOS0xLTEtMTAwMDAy_27d972eb-6e8b-4629-822b-5782d5656d9c">9,834</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i225a38d9cb004a13806bd49986908185_D20200101-20201231" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzMtMTEtMS0xLTEwMDAwMg_e4598aa4-191c-46d9-b88d-e1aec194a240">15</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-competition agreements</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id3522748cf874adaa26e4fb5a429c9a7_D20220101-20221231" decimals="-3" name="us-gaap:FinitelivedIntangibleAssetsAcquired1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzQtMS0xLTEtMTAwMDAy_cbbb8730-d2aa-47c6-a103-4b6763c9119e">2,645</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="id3522748cf874adaa26e4fb5a429c9a7_D20220101-20221231" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzQtMy0xLTEtMTAwMDAy_25012924-3a68-484b-8f5b-188e895cb78f">5</ix:nonNumeric></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i92ce7e4cb80b43d4a197299a3a96c2db_D20210101-20211231" decimals="-3" name="us-gaap:FinitelivedIntangibleAssetsAcquired1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzQtNS0xLTEtMTAwMDAy_c58a9246-ede2-4757-9f2b-69c315d7fa82">7,054</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i92ce7e4cb80b43d4a197299a3a96c2db_D20210101-20211231" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzQtNy0xLTEtMTAwMDAy_a860b34a-b457-44b0-8ddd-bfd6aeb32430">5</ix:nonNumeric></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id8808320f1eb4843a0b744cc1b5d15a8_D20200101-20201231" decimals="-3" name="us-gaap:FinitelivedIntangibleAssetsAcquired1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzQtOS0xLTEtMTAwMDAy_433a99aa-bf0b-433b-821b-2866cf61ea36">3,315</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="id8808320f1eb4843a0b744cc1b5d15a8_D20200101-20201231" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzQtMTEtMS0xLTEwMDAwMg_32d8aec1-ff60-4cf8-93f8-95b1f745be91">5</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Backlog</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic32ff90b2ecd4ade9ebb1b86f0d45e7b_D20220101-20221231" decimals="-3" name="us-gaap:FinitelivedIntangibleAssetsAcquired1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzUtMS0xLTEtMTAwMDAy_08e583a6-124b-40b0-bcf5-3d3ced9fd5fb">390</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="ic32ff90b2ecd4ade9ebb1b86f0d45e7b_D20220101-20221231" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzUtMy0xLTEtMTAwMDAy_6c4ef4b0-3c39-4aa9-9f3b-c78c64c75e6f">1</ix:nonNumeric></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib0e8ef84dde647a1a1daba7531646eaa_D20210101-20211231" decimals="-3" name="us-gaap:FinitelivedIntangibleAssetsAcquired1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzUtNS0xLTEtMTAwMDAy_a165e17b-29a3-4b0c-b97c-d0bb66a6a301">1,578</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="ib0e8ef84dde647a1a1daba7531646eaa_D20210101-20211231" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzUtNy0xLTEtMTAwMDAy_d8100a4d-e571-4009-a8d8-6020a871b532">1.5</ix:nonNumeric></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2ad67bbb20fb45b2bb2af956fbc5b0f9_D20200101-20201231" decimals="-3" name="us-gaap:FinitelivedIntangibleAssetsAcquired1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzUtOS0xLTEtMTAwMDAy_5c3add13-f017-4c18-b213-ffd94d08d4ae">4,767</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i2ad67bbb20fb45b2bb2af956fbc5b0f9_D20200101-20201231" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzUtMTEtMS0xLTEwMDAwMg_9d41e402-9873-4d8d-a267-0dbf7861af91">1.5</ix:nonNumeric></span></td></tr></table></div></ix:nonNumeric></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">86</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:63pt;width:100%"><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC. </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</span></div></div><ix:continuation id="i2720bd5048dd45f186b75c78ecadc56c"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Pro Forma Information (unaudited)</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The unaudited pro forma information has been prepared as if the 2022 acquisitions had taken place on January 1, 2021, the 2021 acquisitions had taken place on January 1, 2020 and the 2020 acquisitions had taken place on January 1, 2019. The unaudited pro forma information is not necessarily indicative of the results that we would have achieved had the transactions actually taken place on January 1, 2021, 2020 and 2019 and the unaudited pro forma information does not purport to be indicative of future financial operating results (in thousands, except for per share data):</span></div><div style="margin-top:5pt;text-align:center"><ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:BusinessAcquisitionProFormaInformationTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzUxMDk_8f3a008f-12d7-43e0-9556-413b97fe9543" escape="true"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:70.467%"><tr><td style="width:1.0%"></td><td style="width:42.675%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.949%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.837%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.949%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.837%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.953%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31,</span></div></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net revenue</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:BusinessAcquisitionsProFormaRevenue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToxMGI3YTIxMDlhZTU0M2ZiYmZjYjlmOGJiNmY2M2VkMS90YWJsZXJhbmdlOjEwYjdhMjEwOWFlNTQzZmJiZmNiOWY4YmI2ZjYzZWQxXzItMS0xLTEtMTAwMDAy_82ba3f7b-337d-4503-bd4c-cda8be6eebef">2,732,084</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:BusinessAcquisitionsProFormaRevenue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToxMGI3YTIxMDlhZTU0M2ZiYmZjYjlmOGJiNmY2M2VkMS90YWJsZXJhbmdlOjEwYjdhMjEwOWFlNTQzZmJiZmNiOWY4YmI2ZjYzZWQxXzItMy0xLTEtMTAwMDAy_452940a4-4a01-4775-b7d7-b198cd67037a">2,217,592</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:BusinessAcquisitionsProFormaRevenue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToxMGI3YTIxMDlhZTU0M2ZiYmZjYjlmOGJiNmY2M2VkMS90YWJsZXJhbmdlOjEwYjdhMjEwOWFlNTQzZmJiZmNiOWY4YmI2ZjYzZWQxXzItNS0xLTEtMTAwMDAy_1f60f578-677a-4658-8667-05ec4c9c13c8">1,922,327</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net income</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:BusinessAcquisitionsProFormaNetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToxMGI3YTIxMDlhZTU0M2ZiYmZjYjlmOGJiNmY2M2VkMS90YWJsZXJhbmdlOjEwYjdhMjEwOWFlNTQzZmJiZmNiOWY4YmI2ZjYzZWQxXzMtMS0xLTEtMTAwMDAy_5b65c0d2-5694-43ae-9991-88c16d90673e">227,108</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:BusinessAcquisitionsProFormaNetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToxMGI3YTIxMDlhZTU0M2ZiYmZjYjlmOGJiNmY2M2VkMS90YWJsZXJhbmdlOjEwYjdhMjEwOWFlNTQzZmJiZmNiOWY4YmI2ZjYzZWQxXzMtMy0xLTEtMTAwMDAy_e7cdfe03-aea1-4ead-a129-ad0d8cc9f1eb">135,850</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:BusinessAcquisitionsProFormaNetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToxMGI3YTIxMDlhZTU0M2ZiYmZjYjlmOGJiNmY2M2VkMS90YWJsZXJhbmdlOjEwYjdhMjEwOWFlNTQzZmJiZmNiOWY4YmI2ZjYzZWQxXzMtNS0xLTEtMTAwMDAy_1d605b01-e051-4bf7-ac9b-14092265b674">107,791</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Basic net income per share</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="2" name="us-gaap:BusinessAcquisitionProFormaEarningsPerShareBasic" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToxMGI3YTIxMDlhZTU0M2ZiYmZjYjlmOGJiNmY2M2VkMS90YWJsZXJhbmdlOjEwYjdhMjEwOWFlNTQzZmJiZmNiOWY4YmI2ZjYzZWQxXzQtMS0xLTEtMTAwMDAy_f6b243c5-2ec3-4dd9-a694-92e1af51e6ee">7.91</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="2" name="us-gaap:BusinessAcquisitionProFormaEarningsPerShareBasic" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToxMGI3YTIxMDlhZTU0M2ZiYmZjYjlmOGJiNmY2M2VkMS90YWJsZXJhbmdlOjEwYjdhMjEwOWFlNTQzZmJiZmNiOWY4YmI2ZjYzZWQxXzQtMy0xLTEtMTAwMDAy_bc487f1b-717f-4352-929a-28207490f77c">4.63</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="2" name="us-gaap:BusinessAcquisitionProFormaEarningsPerShareBasic" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToxMGI3YTIxMDlhZTU0M2ZiYmZjYjlmOGJiNmY2M2VkMS90YWJsZXJhbmdlOjEwYjdhMjEwOWFlNTQzZmJiZmNiOWY4YmI2ZjYzZWQxXzQtNS0xLTEtMTAwMDAy_ca28b9c5-4248-4098-87fc-3c67f5e8fccd">3.65</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted net income per share</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="2" name="us-gaap:BusinessAcquisitionProFormaEarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToxMGI3YTIxMDlhZTU0M2ZiYmZjYjlmOGJiNmY2M2VkMS90YWJsZXJhbmdlOjEwYjdhMjEwOWFlNTQzZmJiZmNiOWY4YmI2ZjYzZWQxXzUtMS0xLTEtMTAwMDAy_f202af0a-a50e-4d6c-a905-a7f6a3bfb124">7.87</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="2" name="us-gaap:BusinessAcquisitionProFormaEarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToxMGI3YTIxMDlhZTU0M2ZiYmZjYjlmOGJiNmY2M2VkMS90YWJsZXJhbmdlOjEwYjdhMjEwOWFlNTQzZmJiZmNiOWY4YmI2ZjYzZWQxXzUtMy0xLTEtMTAwMDAy_b9375275-b052-46fb-b535-d8d27eede9d6">4.59</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="2" name="us-gaap:BusinessAcquisitionProFormaEarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToxMGI3YTIxMDlhZTU0M2ZiYmZjYjlmOGJiNmY2M2VkMS90YWJsZXJhbmdlOjEwYjdhMjEwOWFlNTQzZmJiZmNiOWY4YmI2ZjYzZWQxXzUtNS0xLTEtMTAwMDAy_cc899071-5776-4547-9026-5d41f58295ba">3.63</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></ix:nonNumeric></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Unaudited pro forma net income reflects additional intangible asset amortization expense of $<ix:nonFraction unitRef="usd" contextRef="id0be1243c38b48029fee5ea0f354d284_D20220101-20221231" decimals="-5" name="us-gaap:AmortizationOfIntangibleAssets" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzQ4NTI_2e8ebd10-cb55-4992-afaf-40bf268de704">2.5</ix:nonFraction> million, $<ix:nonFraction unitRef="usd" contextRef="i50702d9644604ef6b8e4664d366e408c_D20210101-20211231" decimals="-5" name="us-gaap:AmortizationOfIntangibleAssets" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzQ4NTY_574974d4-0bf3-4540-a99d-2f6f4cee3a53">13.1</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="i31829ad5db3b4aaaa72e5507f7df28a5_D20200101-20201231" decimals="-5" name="us-gaap:AmortizationOfIntangibleAssets" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzQ4NjM_2c8059ef-7700-4c86-8fda-85293b5f6d00">18.2</ix:nonFraction> million for the years ended December&#160;31, 2022, 2021 and 2020, respectively, additional interest expense of $<ix:nonFraction unitRef="usd" contextRef="i50702d9644604ef6b8e4664d366e408c_D20210101-20211231" decimals="-3" name="us-gaap:InterestExpense" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzU0OTc1NTgxOTIwMQ_1b0fc301-7ac3-4e5e-83e2-57d01a9f0b01">4.3</ix:nonFraction> million for each of the years ended December&#160;31, 2021 and 2020, respectively, as well as additional income tax expense of $<ix:nonFraction unitRef="usd" contextRef="id0be1243c38b48029fee5ea0f354d284_D20220101-20221231" decimals="-5" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzUwNDU_9d9f37a0-dd67-4e77-83e5-3dfb3c0fe2d0">1.2</ix:nonFraction> million, $<ix:nonFraction unitRef="usd" contextRef="i50702d9644604ef6b8e4664d366e408c_D20210101-20211231" decimals="-5" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzUwNDk_62051b06-f7e8-4518-833b-f924e6e84df5">5.7</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="i31829ad5db3b4aaaa72e5507f7df28a5_D20200101-20201231" decimals="-5" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzUwNTY_6972385a-5dcb-420b-a056-50d501ff2207">3.7</ix:nonFraction> million for the years ended December&#160;31, 2022, 2021 and 2020, respectively.</span></div></ix:continuation><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_142"></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 19 &#8211; <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:EarningsPerShareTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNDIvZnJhZzoyOWM3YzgzYzA3MGQ0MzFlOWQxYjk5ODQyZmZkNjhmNy90ZXh0cmVnaW9uOjI5YzdjODNjMDcwZDQzMWU5ZDFiOTk4NDJmZmQ2OGY3XzcwNw_7ad9820e-f7af-43a9-a577-b91a05ab135b" continuedAt="i75ff2d51c3db42efb1c5ba52f7682eef" escape="true">INCOME PER COMMON SHARE</ix:nonNumeric></span></div><ix:continuation id="i75ff2d51c3db42efb1c5ba52f7682eef"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Basic net income per common share is calculated by dividing net income by the weighted average shares outstanding during the period, without consideration for common stock equivalents.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Diluted net income per common share is calculated by adjusting weighted average shares outstanding for the dilutive effect of common stock equivalents outstanding for the period, determined using the treasury stock method. Potential common stock is included in the diluted income per common share calculation when dilutive. The dilutive effect of outstanding restricted stock awards after application of the treasury stock method as of December&#160;31, 2022, 2021 and 2020, was <ix:nonFraction unitRef="shares" contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" decimals="-3" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNDIvZnJhZzoyOWM3YzgzYzA3MGQ0MzFlOWQxYjk5ODQyZmZkNjhmNy90ZXh0cmVnaW9uOjI5YzdjODNjMDcwZDQzMWU5ZDFiOTk4NDJmZmQ2OGY3XzY3OQ_63a2d6dd-39c0-4ab6-9a50-1eb6bee4b0a8">161</ix:nonFraction> thousand, <ix:nonFraction unitRef="shares" contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231" decimals="-3" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNDIvZnJhZzoyOWM3YzgzYzA3MGQ0MzFlOWQxYjk5ODQyZmZkNjhmNy90ZXh0cmVnaW9uOjI5YzdjODNjMDcwZDQzMWU5ZDFiOTk4NDJmZmQ2OGY3XzY4Mw_6c43d78a-64e5-44fd-8d16-93ae19c05289">261</ix:nonFraction> thousand and <ix:nonFraction unitRef="shares" contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231" decimals="-3" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNDIvZnJhZzoyOWM3YzgzYzA3MGQ0MzFlOWQxYjk5ODQyZmZkNjhmNy90ZXh0cmVnaW9uOjI5YzdjODNjMDcwZDQzMWU5ZDFiOTk4NDJmZmQ2OGY3XzY5MA_8429f977-b927-46ba-8723-79cbe95fd67b">213</ix:nonFraction> thousand, respectively. Approximately two&#160;thousand shares of potential common stock were not included in the calculation of diluted net income per common share for the years ended December&#160;31, 2022, because the effect would have been anti-dilutive.</span></div></ix:continuation><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_148"></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 20 &#8211; <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="us-gaap:SubsequentEventsTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNDgvZnJhZzpmZmY5YWRkNmZmMDc0OGUwOTQ4MmFjNmZlNjUxYmEyMy90ZXh0cmVnaW9uOmZmZjlhZGQ2ZmYwNzQ4ZTA5NDgyYWM2ZmU2NTFiYTIzXzIwMzU_4d41774f-3b62-41ea-a4c4-196d139e06f7" continuedAt="i9b7581ad78624ad38c567f2b556e252f" escape="true">SUBSEQUENT EVENTS</ix:nonNumeric></span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="i9b7581ad78624ad38c567f2b556e252f" continuedAt="ibf9cc897dd1a4c508605586d633e1e84">On February 22, 2023, we announced that our board of directors approved a special annual dividend, payable on March 31, 2023 to stockholders of record on March 15, 2023 at a rate of <ix:nonFraction unitRef="usdPerShare" contextRef="ida4bc7c180464dc792325f41bd379c82_I20230222" decimals="2" name="us-gaap:DividendsPayableAmountPerShare" format="ixt:num-dot-decimal" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNDgvZnJhZzpmZmY5YWRkNmZmMDc0OGUwOTQ4MmFjNmZlNjUxYmEyMy90ZXh0cmVnaW9uOmZmZjlhZGQ2ZmYwNzQ4ZTA5NDgyYWM2ZmU2NTFiYTIzXzE0Nzk_74031b37-5a61-43ef-a047-ef87a731aea7">90</ix:nonFraction> cents per share. In addition, we recently announced that our board of directors declared a quarterly dividend, payable on March 31, 2023 to stockholders of record on March 15, 2023 at a rate of <ix:nonFraction unitRef="usdPerShare" contextRef="i9a33ed4e39e141a1ae28eae3d8b26778_I20230315" decimals="3" name="us-gaap:DividendsPayableAmountPerShare" format="ixt:num-dot-decimal" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNDgvZnJhZzpmZmY5YWRkNmZmMDc0OGUwOTQ4MmFjNmZlNjUxYmEyMy90ZXh0cmVnaW9uOmZmZjlhZGQ2ZmYwNzQ4ZTA5NDgyYWM2ZmU2NTFiYTIzXzE2NzA_0d6f3db5-dd8e-41ca-8161-d1f67152943f">33.0</ix:nonFraction>&#160;cents per share.</ix:continuation></span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="ibf9cc897dd1a4c508605586d633e1e84">On February 22, 2023, we also announced that our board of directors authorized a new stock repurchase program that allows for the repurchase of up to $<ix:nonFraction unitRef="usd" contextRef="iaf7f2985f94c4c49bd394258ac3e1c59_I20230222" decimals="-5" name="us-gaap:StockRepurchaseProgramAuthorizedAmount1" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNDgvZnJhZzpmZmY5YWRkNmZmMDc0OGUwOTQ4MmFjNmZlNjUxYmEyMy90ZXh0cmVnaW9uOmZmZjlhZGQ2ZmYwNzQ4ZTA5NDgyYWM2ZmU2NTFiYTIzXzE5Mzk_1a0a92f2-09f1-44d6-9be6-123b30e49d94">200.0</ix:nonFraction>&#160;million of our outstanding common stock. The new program replaces the previous program and is in effect through March 1, 2024. For more information about our stock repurchase programs, see Note 13, Stockholders' Equity.</ix:continuation> </span></div><div><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">87</span></div></div></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_151"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div style="margin-top:18pt;padding-left:54pt;text-indent:-54pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 9.&#160;&#160;&#160;&#160;Changes in and Disagreements with Accountants on Accounting and Financial Disclosure</span></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">None.</span></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_154"></div><div style="margin-top:18pt;padding-left:54pt;text-indent:-54pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 9A.&#160;&#160;&#160;&#160;Controls and Procedures</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Evaluation of Disclosure Controls and Procedures</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We conducted an evaluation of our disclosure controls and procedures (as defined in Rule 13a-15(e) under the Exchange Act) as of December&#160;31, 2022 with the participation of the Company&#8217;s principal executive officer and principal financial officer as required by Exchange Act Rule 13a-15(b). Based on that evaluation, the Company&#8217;s principal executive officer and principal financial officer concluded that, as of December&#160;31, 2022, our disclosure controls and procedures were effective to ensure that information required to be disclosed in the reports that we file or submit under the Exchange Act is recorded, processed, summarized and reported, within the time periods specified in the SEC&#8217;s rules and forms, and includes, without limitation, controls and procedures designed to ensure that information required to be disclosed by us in the reports we file or submit under the Exchange Act is accumulated and communicated to our management, including our principal executive officer and our principal financial officer, or persons performing similar functions, as appropriate to allow timely decisions regarding required disclosure.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Management&#8217;s Report on Internal Control over Financial Reporting</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our management is responsible for establishing and maintaining adequate internal control over financial reporting (as defined in Rule 13a-15(f) under the Exchange Act). Our internal control over financial reporting is a process designed to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with accounting principles generally accepted in the United States of America.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Management, under the supervision of the principal executive officer and the principal financial officer, assessed the effectiveness of our internal control over financial reporting, excluding the internal control over financial reporting at the subsidiaries listed below that we acquired during 2022 as of December&#160;31, 2022 using the criteria set forth by the Committee of Sponsoring Organizations of the Treadway Commission (COSO) in Internal Control &#8211; Integrated Framework (2013). The scope of management&#8217;s assessment of the effectiveness of internal control over financial reporting as of December&#160;31, 2022 includes all of the Company&#8217;s subsidiaries except the subsidiaries listed below, which were acquired during 2022 and whose financial statements constitute the percentages of total assets and net revenue listed below of the consolidated financial statements of the Company as of and for the year ended December&#160;31, 2022:</span></div><div><span><br/></span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:74.853%"><tr><td style="width:1.0%"></td><td style="width:34.056%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.776%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:26.829%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.776%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.892%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.776%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.895%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Subsidiary</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquisition&#160;Date</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Percentage<br/>of Total<br/>Assets</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Percent&#160;<br/>of&#160;Net<br/>Revenue</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Pisgah Insulation</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">February 28, 2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.1%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.4%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Central Aluminum</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 11, 2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.2%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.4%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Tri County Insulation</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">May 23, 2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.3%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.3%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Ozark's Modern Insulation</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">August 1, 2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.0%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.1%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">All Florida Insulation</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">September 26, 2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.0%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.0%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Lynch Insulation</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">November 14, 2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.1%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.0%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Orr Industries</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 5, 2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.2%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.0%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ABS Insulating</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 19, 2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.3%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.0%</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div><span><br/></span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Management excluded the internal control over financial reporting at these subsidiaries from its assessment in accordance with the guidance of the staff of the SEC that an assessment of a recently acquired business may be omitted from the scope of management&#8217;s assessment of internal control over financial reporting for one year following the acquisition. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Based on this assessment, management has determined that our internal control over financial reporting was effective as of December&#160;31, 2022. We have not experienced any material impact to our internal controls over financial reporting due to the COVID-19 pandemic. We are continually monitoring and assessing the COVID-19 situation to identify potential limitations on our current internal controls that would adversely impact the design and operating effectiveness of internal controls over financial reporting.</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">88</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The effectiveness of our internal control over financial reporting as of December&#160;31, 2022, has been audited by Deloitte &amp; Touche LLP, an independent registered public accounting firm, as stated in their report, which follows below.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Changes in Internal Control over Financial Reporting</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There were no changes in our internal control over financial reporting identified in management&#8217;s evaluation pursuant to Rules 13a-15(d) or 15d-15(d) of the Exchange Act during the quarter ended December&#160;31, 2022 that has materially affected, or are reasonably likely to materially affect, our internal control over financial reporting.</span></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_157"></div><div style="margin-top:18pt;padding-left:54pt;text-indent:-54pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 9B.&#160;&#160;&#160;&#160;Other Information</span></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">None.</span></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_160"></div><div style="margin-top:18pt;padding-left:54pt;text-indent:-54pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 9C.&#160;&#160;&#160;&#160;Disclosure Regarding Foreign Jurisdictions that Prevent Inspections</span></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Not applicable.</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">89</span></div></div></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_163"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div style="margin-top:5pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">REPORT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">To the stockholders and the Board of Directors of Installed Building Products, Inc.</span></div><div><span><br/></span></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Opinion on Internal Control over Financial Reporting</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have audited the internal control over financial reporting of Installed Building Products, Inc. (the &#8220;Company&#8221;) as of December&#160;31, 2022, based on criteria established in Internal Control &#8212; Integrated Framework (2013) issued by the Committee of Sponsoring Organizations of the Treadway Commission (COSO). In our opinion, the Company maintained, in all material respects, effective internal control over financial reporting as of December&#160;31, 2022. We have also audited, in accordance with the standards of the Public Company Accounting Oversight Board (United States) (PCAOB), the consolidated financial statements as of and for the year ended December&#160;31, 2022, of the Company and our report dated February&#160;22, 2023, expressed an unqualified opinion on those financial statements.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As described in Management&#8217;s Report on Internal Control over Financial Reporting, management excluded from its assessment the internal control over financial reporting at the subsidiaries listed below, which were acquired during 2022 and whose financial statements constitute the percentages of total revenues and assets listed below of the consolidated financial statements of the Company as of and for the year ended December&#160;31, 2022.</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:75.877%"><tr><td style="width:1.0%"></td><td style="width:34.930%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.763%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:26.452%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.763%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.663%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.763%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.666%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline">Subsidiary</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquisition Date</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Percentage&#160;<br/>of Total<br/>Assets</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Percent&#160;<br/>of&#160;Net<br/>Revenue</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Pisgah Insulation</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">February 28, 2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.1%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.4%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Central Aluminum</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 11, 2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.2%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.4%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Tri County Insulation</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">May 23, 2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.3%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.3%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Ozark's Modern Insulation</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">August 1, 2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.0%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.1%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">All Florida Insulation</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">September 26, 2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.0%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.0%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Lynch Insulation</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">November 14, 2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.1%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.0%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Orr Industries</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 5, 2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.2%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.0%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ABS Insulating</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 19, 2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.3%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.0%</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accordingly, our audit did not include the internal control over financial reporting of the subsidiaries listed above.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Basis for Opinion</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company&#8217;s management is responsible for maintaining effective internal control over financial reporting and for its assessment of the effectiveness of internal control over financial reporting, included in the accompanying Management&#8217;s Report on Internal Control over Financial Reporting. Our responsibility is to express an opinion on the Company&#8217;s internal control over financial reporting based on our audit. We are a public accounting firm registered with the PCAOB and are required to be independent with respect to the Company in accordance with the U.S. federal securities laws and the applicable rules and regulations of the Securities and Exchange Commission and the PCAOB.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We conducted our audit in accordance with the standards of the PCAOB. Those standards require that we plan and perform the audit to obtain reasonable assurance about whether effective internal control over financial reporting was maintained in all material respects. Our audit included obtaining an understanding of internal control over financial reporting, assessing the risk that a material weakness exists, testing and evaluating the design and operating effectiveness of internal control based on the assessed risk, and performing such other procedures as we considered necessary in the circumstances. We believe that our audit provides a reasonable basis for our opinion.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Definition and Limitations of Internal Control over Financial Reporting</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A company&#8217;s internal control over financial reporting is a process designed 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. A company&#8217;s internal control over financial reporting includes those policies and procedures that (1) pertain to the maintenance of records that, in reasonable detail, accurately and fairly reflect the transactions and dispositions of the assets of the company; (2) provide reasonable assurance that transactions are recorded as necessary to permit preparation of financial statements in accordance with generally accepted accounting principles, and that receipts and expenditures of the company are being made only in accordance with authorizations of management and directors of the </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">90</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">company; and (3) provide reasonable assurance regarding prevention or timely detection of unauthorized acquisition, use, or disposition of the company&#8217;s assets that could have a material effect on the financial statements.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Because of its inherent limitations, internal control over financial reporting may not prevent or detect misstatements. Also, projections of any evaluation of effectiveness to future periods are subject to the risk that controls may become inadequate because of changes in conditions, or that the degree of compliance with the policies or procedures may deteriorate.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">/s/ Deloitte &amp; Touche LLP</span></div><div style="margin-top:1pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Columbus, Ohio </span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">February&#160;22, 2023</span></div><div style="text-align:center"><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">91</span></div></div></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_166"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div style="margin-top:5pt;padding-left:12.37pt;padding-right:12.37pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:120%">PART III</span></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_169"></div><div style="margin-top:18pt;padding-left:54pt;text-indent:-54pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 10.&#160;&#160;&#160;&#160;Directors, Executive Officers and Corporate Governance</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The information required by this item will be set forth under the headings &#8220;Election of Directors,&#8221; &#8220;Executive Officers and Certain Significant Employees&#8221; and &#8220;Corporate Governance&#8221; in our definitive proxy statement for the 2023 Annual Meeting of Stockholders (&#8220;2023 Proxy Statement&#8221;) to be filed with the SEC within 120 days of the fiscal year ended December&#160;31, 2022 and is incorporated herein by reference.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our board of directors has adopted a code of business conduct and ethics that applies to all of our employees, officers and directors, including our Chief Executive Officer, Chief Financial Officer and other executive and senior financial officers. The full text of our code of business conduct and ethics is posted on the investor relations page on our website which is located at http://investors.installedbuildingproducts.com. We will post any amendments to our code of business conduct and ethics, or waivers of its requirements, on our website.</span></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_172"></div><div style="margin-top:18pt;padding-left:54pt;text-indent:-54pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 11.&#160;&#160;&#160;&#160;Executive Compensation</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The information required by this item will be set forth under the headings &#8220;Executive Compensation&#8221; and &#8220;Compensation Committee Interlocks and Insider Participation&#8221; in our 2023 Proxy Statement and is incorporated herein by reference.</span></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_175"></div><div style="margin-top:18pt;padding-left:54pt;text-indent:-54pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 12.&#160;&#160;&#160;&#160;Security Ownership of Certain Beneficial Owners and Management and Related Stockholder Matters</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Information regarding security ownership of certain beneficial owners and management and related stockholder matters, as well as equity compensation plan information, will be presented in our Proxy Statement for our 2023 Annual Meeting of Stockholders, to be filed on or before April 13, 2023, and such information is incorporated herein by reference.</span></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_178"></div><div style="margin-top:18pt;padding-left:54pt;text-indent:-54pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 13.&#160;&#160;&#160;&#160;Certain Relationships and Related Transactions, and Director Independence</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The information required by this item will be set forth under the headings &#8220;Certain Relationships and Related-Party Transactions&#8221; and &#8220;Corporate Governance&#8221; in our 2023 Proxy Statement and is incorporated herein by reference.</span></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_181"></div><div style="margin-top:18pt;padding-left:54pt;text-indent:-54pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 14.&#160;&#160;&#160;&#160;Principal Accounting Fees and Services</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The information required by this item will be set forth under the heading &#8220;Fees Paid to Deloitte" and "Pre-Approval of Services&#8221; in our 2023 Proxy Statement and is incorporated herein by reference.</span></div><div style="text-align:center"><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">92</span></div></div></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_184"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div style="margin-top:5pt;padding-left:12.37pt;padding-right:12.37pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:120%">PART IV</span></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_187"></div><div style="-sec-extract:summary;margin-top:18pt;padding-left:54pt;text-indent:-54pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item&#160;15.&#160;&#160;&#160;&#160;Exhibits, Financial Statement Schedules</span></div><div><span><br/></span></div><div style="padding-left:72pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(a)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:6.91pt">The following documents are filed as a part of this Form&#160;10-K:</span></div><div style="padding-left:36pt"><span><br/></span></div><div style="padding-left:90pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">1.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">Financial Statements: The Consolidated Financial Statements, the Notes to Consolidated Financial Statements and the Report of Independent Registered Public Accounting Firm (PCAOB ID No. <ix:nonNumeric contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231" name="dei:AuditorFirmId" id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xODcvZnJhZzo5ZDdlNTExN2U1YmU0MjE3OWQzYWQxZTJkOGNjYzMyMi90ZXh0cmVnaW9uOjlkN2U1MTE3ZTViZTQyMTc5ZDNhZDFlMmQ4Y2NjMzIyXzMwNw_61469f33-baaa-46c1-bccf-2d7a38eeb690">34</ix:nonNumeric>) for Installed Building Products, Inc. are presented in Item 8, Financial Statements and Supplementary Data, of Part II of this Form 10-K.</span></div><div style="margin-top:9pt;padding-left:90pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">Financial Schedules: All financial statement schedules have been omitted because they are inapplicable, not required, or shown in the consolidated financial statements and notes in Item 8, Financial Statements and Supplementary Data, of Part II of this Form10-K.</span></div><div style="padding-left:72pt"><span><br/></span></div><div style="padding-left:72pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(b)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:6.34pt;text-decoration:underline">Exhibits.</span></div><div><span><br/></span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:10.173%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:86.895%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Exhibit</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%;text-decoration:underline">Number</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%;text-decoration:underline">Description</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.1</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312518063835/d529088dex31.htm">Second Amended and Restated Certificate of Incorporation of Installed Building Products, Inc., incorporated by reference to Exhibit 3.1 to the Company&#8217;s Current Report on Form 8-K filed on February&#160;25, 2014.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.2</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312518063835/d529088dex31.htm">Amended and Restated Bylaws of Installed Building Products, Inc., incorporated by reference to Exhibit 3.1 to the Company&#8217;s Current Report on Form 8-K filed on February&#160;28, 2018.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.1</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312514021873/d614029dex41.htm">Form of Common Stock Certificate of Installed Building Products, Inc., incorporated by reference to Exhibit 4.1 to the Company&#8217;s Registration Statement on Form S-1/A filed on January&#160;27, 2014.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.2</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312519256450/d808735dex41.htm">Indenture, dated September&#160;26, 2019, among Installed Building Products, Inc., the guarantors named therein and U.S. Bank National Association, as Trustee (including the Form of Note), incorporated by reference to Exhibit 4.1 to the Company&#8217;s Current Report on Form 8-K filed on September&#160;27, 2019.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.3</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312520052757/d853980dex43.htm">Description of Installed Building Product, Inc.&#8217;s Securities Registered Pursuant to Section&#160;12 of the Exchange Act, incorporated by reference to Exhibit 4.3 to the Company's Annual Report on Form 10-K filed on February 27, 2020.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.1#</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000158090521000001/ibp-20210331xex101.htm">Form of</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000158090521000001/ibp-20210331xex101.htm"> Amended and Restated Indemnification Agreement for directors and officers, incorporated by reference to Exhibit&#160;10.2 to the Company&#8217;s Quarterly Report on Form 10-Q filed on May 7, 2021.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.2#</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000158090521000001/ibp-2021x0331xex102.htm">Amended and Restated Employment Agreement, dated as of April 15, 2021, by and between Installed Building Products, Inc. and Jeffrey W. Edwards, incorporated by reference to Exhibit 10.1 to the Company&#8217;s Quarterly Report on Form 10-Q filed on May 7, 2021</a></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">.</span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.3#</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312514021873/d614029dex1021.htm">Installed Building Products, Inc. 2014 Omnibus Incentive Plan, incorporated by reference to Exhibit&#160;10.21 to the Company&#8217;s Registration Statement on Form S-1/A filed on January&#160;27, 2014.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.4#</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312517062227/d310839dex1016.htm">Amendment, dated as of February&#160;24, 2017, to the Installed Building Products, Inc. 2014 Omnibus Incentive Plan, incorporated by reference to Exhibit 10.16 to the Company&#8217;s Annual Report on Form&#160;10-K filed on February&#160;28, 2017.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.5</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312517125174/d308593dex101.htm">Term Loan Credit Agreement, dated April&#160;13, 2017, by and among Installed Building Products, Inc., the lenders party thereto from time to time, Royal Bank of Canada, as term administrative agent, and RBC Capital Markets, UBS Securities LLC and Jefferies Finance LLC as joint lead arrangers and joint bookrunners, incorporated by reference to Exhibit 10.1 to the Company&#8217;s Current Report on Form 8-K filed on April&#160;17, 2017.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.6</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312517125174/d308593dex102.htm">Credit Agreement, dated April&#160;13, 2017, by and among Installed Building Products, Inc., the subsidiary guarantors from time to time party thereto, the financial institutions from time to time party thereto, and SunTrust Bank, as issuing bank, swing bank and administrative agent, with SunTrust Robinson Humphrey, Inc. as left lead arranger and bookrunner, incorporated by reference to Exhibit 10.2 to the Company&#8217;s Current Report on Form 8-K filed on April&#160;17, 2017.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.7</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312517125174/d308593dex103.htm">ABL/Term Loan Intercreditor Agreement, dated April&#160;13, 2017, by and among Installed Building Products, Inc., SunTrust Bank, as ABL agent, Royal Bank of Canada, as term loan agent, and each of the agents and certain of the Company&#8217;s subsidiaries from time to time party thereto, incorporated by reference to Exhibit 10.3 to the Company&#8217;s Current Report on Form 8-K filed on April&#160;17, 2017.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.8</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312517125174/d308593dex104.htm">Term Collateral Agreement, dated April&#160;13, 2017, among Installed Building Products, Inc., certain of its subsidiaries and Royal Bank of Canada, as term collateral agent, incorporated by reference to Exhibit 10.4 to the Company&#8217;s Current Report on Form 8-K filed on April&#160;17, 2017.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.9</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312517125174/d308593dex105.htm">Security Agreement, dated April&#160;13, 2017, among Installed Building Products, Inc., certain of its subsidiaries and SunTrust Bank, as administrative agent, incorporated by reference to Exhibit 10.5 to the Company&#8217;s Current Report on Form 8-K filed on April&#160;17, 2017.</a></span></div></td></tr></table></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="-sec-extract:summary;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">93</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:10.173%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:86.895%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.10</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312517125174/d308593dex106.htm">Term Guarantee Agreement, dated April&#160;13, 2017, among certain of Installed Building Products, Inc.&#8217;s subsidiaries and Royal Bank of Canada, as term collateral agent, incorporated by reference to Exhibit 10.6 to the Company&#8217;s Current Report on Form 8-K filed on April&#160;17, 2017.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.11</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312518064142/d519411dex1031.htm">Amendment No.&#160;1, dated October&#160;26, 2017, to Term Loan Credit Agreement by and among Installed Building Products, Inc., the other loan parties party thereto, the participating lenders and fronting bank party thereto, Royal Bank of Canada, as administrative agent, and RBC Capital Markets, as lead arranger and bookrunner, incorporated by reference to Exhibit 10.31 to the Company&#8217;s Annual Report on Form 10-K filed on February&#160;28, 2018.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.12</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312517358896/d500394dex101.htm">First Amendment, dated November&#160;30, 2017, to Term Loan Credit Agreement, by and among Installed Building Products, Inc., the other loan parties party thereto, the participating lenders and fronting bank party thereto, Royal Bank of Canada, as administrative agent, and RBC Capital Markets, as lead arranger and bookrunner, incorporated by reference to Exhibit 10.1 to the Company&#8217;s Current Report on Form 8-K filed on December&#160;1, 2017.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.13</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312518064142/d519411dex1033.htm">First Amendment, dated October&#160;26, 2017, to the Credit Agreement among Installed Building Products, Inc., certain of its subsidiaries and SunTrust Bank, as administrative agent, incorporated by reference to Exhibit 10.33 to the Company&#8217;s Annual Report on Form 10-K filed on February&#160;28, 2018.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.14</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312518064142/d519411dex1034.htm">Second Amendment, dated December&#160;26, 2017, to the Credit Agreement among Installed Building Products, Inc., certain of its subsidiaries and SunTrust Bank, as administrative agent, incorporated by reference to Exhibit 10.34 to the Company&#8217;s Annual Report on Form 10-K filed on February&#160;28, 2018.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.15</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312518196996/d761929dex101.htm">Second Amendment to Term Loan Credit Agreement, dated as of June&#160;19, 2018, by and among Installed Building Products, Inc., the other loan parties party thereto, the participating lenders and fronting bank party thereto, Royal Bank of Canada, as administrative agent, and RBC Capital Markets, as joint lead arranger and joint bookrunner, incorporated by reference to Exhibit 10.1 to the Company&#8217;s Current Report on Form 8-K filed on June&#160;19, 2018.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.16</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312518196996/d761929dex102.htm">Third Amendment to Credit Agreement, dated as of June&#160;19, 2018, by and among Installed Building Products, Inc., the lenders party thereto, and SunTrust Bank, as administrative agent, incorporated by reference to Exhibit 10.2 to the Company&#8217;s Current Report on Form 8-K filed on June&#160;19, 2018.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.17</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312519316791/d825363dex101.htm">Restatement Agreement, dated as of December&#160;17, 2019, among Installed Building Products, Inc., as Borrower, the Lenders party thereto and Bank of America, N.A., as Administrative Agent, incorporated by reference to Exhibit 10.1 to the Company&#8217;s Current Report on Form&#160;8-K&#160;filed on December&#160;18, 2019.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.18</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312518196996/d761929dex103.htm">First Amendment to ABL/Term Loan Intercreditor Agreement, dated as of June&#160;19, 2018, by and among Installed Building Products, Inc., SunTrust Bank, as ABL agent, and Royal Bank of Canada, as term loan agent, incorporated by reference to Exhibit 10.3 to the Company&#8217;s Current Report on Form 8-K filed on June&#160;19, 2018.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.19</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312519316791/d825363dex102.htm">Second Amendment to ABL/Term Loan Intercreditor Agreement, dated as of December&#160;17, 2019, by and among Installed Building Products, Inc., as Borrower, Bank of America, N.A., as ABL Agent, and Bank of America, N.A., as Term Loan Agent, incorporated by reference to Exhibit 10.2 to the Company&#8217;s Current Report on Form 8-K filed on December&#160;18, 2019.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.20</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312519246279/d770196dex101.htm">Purchase Agreement, dated as of September&#160;16, 2019, by and among Installed Building Products, Inc., as issuer, the subsidiary guarantors party thereto, and BofA Securities, Inc. for itself and on behalf of several initial purchasers, incorporated by reference to Exhibit 10.1 to the Company&#8217;s Current Report on Form 8-K filed on September&#160;17, 2019.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.21</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312519256450/d808735dex101.htm">Credit Agreement, dated September&#160;26, 2019, among Installed Building Products, Inc., the guarantors party thereto, the lenders party thereto and Bank of America, N.A., as issuing bank, swing bank and administrative agent, with KeyBank National Association, as a syndication agent and U.S. Bank National Association, as a syndication agent, and Bank of America, N.A., as lead arranger and bookrunner, incorporated by reference to Exhibit 10.1 to the Company&#8217;s Current Report on Form 8-K filed on September&#160;27, 2019.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.22</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312519256450/d808735dex102.htm">Security Agreement, dated September&#160;26, 2019, among Installed Building Products, Inc., the other grantors party thereto and Bank of America, N.A., as administrative agent, incorporated by reference to Exhibit 10.2 to the Company&#8217;s Current Report on Form 8-K filed on September&#160;27, 2019.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.23</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312521356941/d218385dex101.htm">Term Loan Credit Agreement, dated December 14, 2021, by and among Installed Building Products, Inc., the lenders party thereto from time to time, Royal Bank to Canada, as term administrative agent and term collateral agent, and RBC Capital Markets, BofA Securities, Inc. and Goldman Sachs Bank USA as joint lead arrangers and joint bookrunners and Loop Capital Markets LLC, US Bank National Associations, KeyBank Capital Markets Inc. and PNC Capital Markets LLC as Co-managers, incorporated by reference to Exhibit 10.1 to the Company's Current Report on Form 8-K filed on December 14, 2021.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.24</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312521356941/d218385dex103.htm">Third Amendment to ABL/Term Loan Intercreditor Agreement, dated December 14, 2021, by and among Installed Building Products, Inc., Bank of America, N.A., as ABL agent, Royal Bank of Canada, as collateral agent and certain of the Company's subsidiaries from time to time party thereto, incorporated by reference to Exhibit 10.3 to the Company's Current Report on Form 8-K filed on December 14, 2021.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.25</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312521356941/d218385dex104.htm">Lien Sharing and Priority Confirmation Joinder, dated, December 14, 2021, among Installed Building Products, Inc., the guarantors named therein, Bank of America, N.A., as ABL agent, and Royal Bank of Canada, as collateral agent under the Term Loan Agreement, incorporated by reference to Exhibit 10.4 to the Company's Current Report on Form 8-K filed on December 14, 2021.</a></span></div></td></tr></table></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="-sec-extract:summary;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">94</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:10.173%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:86.895%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.26</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312521356941/d218385dex105.htm">Term Collateral Agreement, dated December 14, 2021, among Installed Building Products, Inc., certain of its subsidiaries and Royal Bank of Canada, as term collateral agent</a></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">, </span><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312519256450/d808735dex102.htm">incorporated by reference to Exhibit 10.5 to the Company&#8217;s Current Report on Form 8-K filed on December 14, 2021.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.27</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312521356941/d218385dex106.htm">Term Guarantee Agreement, dated December 14, 2021 among certain of Installed Building Products, Inc.'s subsidiaries and Royal of Canada, as term collateral agent</a></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">, </span><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312519256450/d808735dex102.htm">incorporated by reference to Exhibit 10.6 to the Company&#8217;s Current Report on Form 8-K filed on December 14, 2021.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.28</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312521356941/d218385dex107.htm">Consent and Amendment No. 2 to Credit Agreement, dated December 14, 2021, by and among Installed Building Products, Inc., the financial institutions party thereto and Bank of America N.A., as administrative agent</a></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">, </span><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312519256450/d808735dex102.htm">incorporated by reference to Exhibit 10.7 to the Company&#8217;s Current Report on Form 8-K filed on December 14, 2021.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.29</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312522046115/d316055dex101.htm">Amendment No. 3 to Credit Agreement, dated February 17, 2022, by and among Installed Building Products, Inc., the financial institutions party thereto as lenders and Bank of America N.A., as administrative agent, incorporated by reference to Exhibit 10.1 to the Company's Current Report on Form 8-K filed on February 18, 2022.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.30#</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312514199045/d697084dex101.htm">Form of Restricted Stock Agreement, incorporated by reference to Exhibit 10.1 to the Company&#8217;s Quarterly Report on Form 10-Q filed on May&#160;14, 2014.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.31#</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312514308395/d745101dex104.htm">Form of Performance Share Award Agreement, incorporated by reference to Exhibit 10.4 to the Company&#8217;s Quarterly Report on Form 10-Q filed on August&#160;13, 2014.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.32#</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312515090717/d846579dex1022.htm">Form of Restricted Stock Agreement for Employees, incorporated by reference to Exhibit 10.22 to the Company&#8217;s Annual Report on Form 10-K filed on March&#160;13, 2015.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.33#</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312517162572/d212147dex1035.htm">Form of Restricted Stock Agreement for awards made on or after April&#160;19, 2017, incorporated by reference to Exhibit 10.35 to the Company&#8217;s Quarterly Report on Form 10-Q filed on May&#160;8, 2017.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.34#</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312517162572/d212147dex1036.htm">Form of Performance Share Agreement for awards made on or after April&#160;19, 2017, incorporated by reference to Exhibit 10.36 to the Company&#8217;s Quarterly Report on Form 10-Q filed on May&#160;8, 2017.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.35#</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312517162572/d212147dex1037.htm">Form of Stock Award Agreement, incorporated by reference to Exhibit 10.37 to the Company&#8217;s Quarterly Report on Form 10-Q filed on May&#160;8, 2017.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.36#</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/1580905/000119312517162572/d212147dex1038.htm">Form of Performance-Based Cash Award Agreement, incorporated by reference to Exhibit 10.38 to the Company&#8217;s Quarterly Report on Form 10-Q filed on May&#160;8, 2017.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><a style="-sec-extract:exhibit;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="ibp-20221231xex211xsignifi.htm">21.1</a><a style="-sec-extract:exhibit;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="ibp-20221231xex211xsignifi.htm">*</a></span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><a style="-sec-extract:exhibit;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="ibp-20221231xex211xsignifi.htm">List of Subsidiaries of Installed Building Products, Inc.</a></span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><a style="-sec-extract:exhibit;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="ibp-20221231xex231xdeloitt.htm">23.1</a>*</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><a style="-sec-extract:exhibit;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="ibp-20221231xex231xdeloitt.htm">Consent of Deloitte&#160;&amp; Touche LLP.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><a style="-sec-extract:exhibit;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="ibp-20221231xex311xceocert.htm">31.1</a>*</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><a style="-sec-extract:exhibit;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="ibp-20221231xex311xceocert.htm">CEO Certification pursuant to Exchange Act Rule 13a-14(a), as adopted pursuant to Section&#160;302 of the Sarbanes-Oxley Act of 2002.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><a style="-sec-extract:exhibit;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="ibp-20221231xex312xcfocert.htm">31.2</a>*</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><a style="-sec-extract:exhibit;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="ibp-20221231xex312xcfocert.htm">CFO Certification pursuant to Exchange Act Rule 13a-14(a), as adopted pursuant to Section&#160;302 of the Sarbanes-Oxley Act of 2002.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><a style="-sec-extract:exhibit;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="ibp-20221231xex321xceo.htm">32.1</a>*</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><a style="-sec-extract:exhibit;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="ibp-20221231xex321xceo.htm">CEO Certification pursuant to 18 U.S.C. Section&#160;1350, as adopted pursuant to Section&#160;906 of the Sarbanes-Oxley Act of 2002.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><a style="-sec-extract:exhibit;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="ibp-20221231xex322xcfo.htm">32.2</a>*</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><a style="-sec-extract:exhibit;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="ibp-20221231xex321xceo.htm">CFO Certification pursuant to 18 U.S.C. Section&#160;1350, as adopted pursuant to Section&#160;906 of the Sarbanes-Oxley Act of 2002.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">101**</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">The following financial statements from the Company's Annual Report on Form 10-K for the period ended December 31, 2021, formatted in inline XBRL, include: (i) Consolidated Balance Sheets, (ii) Consolidated Statements of Operations and Comprehensive Income, (iii) Consolidated Statements of Stockholders' Equity, (iv) Consolidated Statements of Cash Flows and (v) the Notes to the Consolidated Financial Statements.</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">104**</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cover Page Interactive Data File (formatted in Inline XBRL and contained in Exhibit 101)</span></td></tr></table></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">___________</span></div><div style="padding-left:27pt;text-indent:-27pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">*&#160;&#160;&#160;&#160;Filed herewith</span></div><div style="padding-left:27pt;text-indent:-27pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">**&#160;&#160;&#160;&#160;Submitted electronically with the report.</span></div><div style="padding-left:27pt;text-indent:-27pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">#&#160;&#160;&#160;&#160;Indicates management contract or compensatory plan.</span></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_190"></div><div style="margin-top:9pt;padding-left:54pt;text-indent:-54pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 16.&#160;&#160;&#160;&#160;Form 10-K Summary</span></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">None</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">95</span></div></div></div><div id="ifaaa61522ada4ef2b3459f1c02fd7df4_193"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">SIGNATURES</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Pursuant to the requirements of Section 13 or 15(d) of the Securities Exchange Act of 1934, the registrant has duly caused this report to be signed on its behalf by the undersigned, thereunto duly authorized.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Date: February&#160;22, 2023 </span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:57.525%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:3.432%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:35.013%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">INSTALLED BUILDING PRODUCTS, INC.</span></td></tr><tr style="height:6pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">/s/ Jeffrey W. Edwards</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">By:</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Jeffrey W. Edwards</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">President and Chief Executive Officer</span></td></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Pursuant to the requirements of the Securities Exchange Act of 1934, this report has been signed below by the following persons on behalf of the registrant and in the capacities and on the dates indicated.</span></div><div><span><br/></span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:41.128%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:36.876%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.230%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%;text-decoration:underline">Signature</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%;text-decoration:underline">Title</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%;text-decoration:underline">Date</span></td></tr><tr style="height:6pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">/s/ Jeffrey W. Edwards&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">President,&#160;Chief&#160;Executive&#160;Officer&#160;and<br/>Chairman of the Board of Directors<br/>(Principal Executive Officer)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">February 22, 2023</span></td></tr><tr style="height:21pt"><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Jeffrey W. Edwards</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:6pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">/s/ Michael T. Miller</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Executive Vice President, Chief Financial Officer and Director<br/>(Principal Financial Officer)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">February 22, 2023</span></td></tr><tr style="height:21pt"><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Michael T. Miller</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:6pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">/s/ Todd R. Fry</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Chief&#160;Accounting&#160;Officer&#160;and&#160;Treasurer<br/>(Principal Accounting Officer)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">February 22, 2023</span></td></tr><tr style="height:15pt"><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Todd R. Fry</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:6pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">/s/ Margot L. Carter&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Director</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">February 22, 2023</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Margot L. Carter</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:6pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">/s/ Lawrence A. Hilsheimer</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Director</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">February 22, 2023</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Lawrence A. Hilsheimer</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:6pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">/s/ Janet E. Jackson</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Director</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">February 22, 2023</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Janet E. Jackson</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:6pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">/s/ David R. Meuse</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Director</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">February 22, 2023</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">David R. Meuse</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:6pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">/s/ Robert H. Schottenstein</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Director</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">February 22, 2023</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Robert H. Schottenstein</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:6pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">/s/ Michael H. Thomas</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Director</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">February 22, 2023</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Michael H. Thomas</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:6pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">/s/ Vikas Verma</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Director</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">February 22, 2023</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vikas Verma</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr></table></div><div><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">96</span></div></div></div></body></html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-21.1
<SEQUENCE>2
<FILENAME>ibp-20221231xex211xsignifi.htm
<DESCRIPTION>EX-21.1
<TEXT>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head>
<!-- Document created using Wdesk -->
<!-- Copyright 2023 Workiva -->
<title>Document</title></head><body><div id="i7d094eda0eee417ca299ae2e6db164ad_1"></div><div style="min-height:72pt;width:100%"><div style="margin-bottom:0.08pt"><font><br></font></div></div><div style="text-align:right"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Exhibit 21.1</font></div><div style="margin-top:12pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Significant Subsidiaries of Installed Building Products, Inc. </font></div><div style="margin-top:12pt;text-align:center"><font><br></font></div><div style="margin-bottom:0.08pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:94.230%"><tr><td style="width:1.0%"></td><td style="width:53.321%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:44.479%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Name</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Jurisdiction of Organization</font></td></tr><tr style="height:13pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 2.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5 Star Building Products LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Utah</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5 Star Building Products of Southern Utah, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Utah</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">A+ Insulation of Kansas City, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ABS Coastal Insulating Company, Inc.</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">South Carolina</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ABS Insulating Company, Inc.</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">North Carolina</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accurate Insulation LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Maryland</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accurate Insulation of Colorado, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accurate Insulation of Delaware, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accurate Insulation of Upper Marlboro, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Advanced Fiber, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Advanced Insulation, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Alert Insulation of California, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">All Construction Services, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">All in One &#38; Moore Building Systems, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Alpha Insulation &#38; Water Proofing Company</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Georgia</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Alpha Insulation &#38; Water Proofing, Inc.</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Texas</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Alpine Construction of Colorado, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Ohio</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Alpine Insulation I, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">AMD Distribution Services, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">American Insulation &#38; Energy Services, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Alabama</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Any Season Insulation, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Apple Valley Insulation, a BDI Company, Inc.</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">California</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Aster Contractors Holdings, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Astro Insulation of Illinois, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Baytherm Insulation, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">BDI Insulation of Idaho Falls, Inc.</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Idaho</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">BDI Insulation of Salt Lake, L.L.C.</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Utah</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Big City Insulation of Idaho, Inc.</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Idaho</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Big City Insulation, Inc.</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Utah</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">B-Organized Insulation, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Broken Drum Insulation Visalia, Inc.</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">California</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Broken Drum of Bakersfield, Inc.</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">California</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Builders Installed Products of Maine, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Builders Installed Products of New Hampshire, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Builders Installed Products of New York, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Builders Installed Products of Vermont, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Building Materials Finance, Inc.</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">C.Q. Insulation, Inc.</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Florida</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Central Aluminum Supply Corporation</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">New Jersey</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Central Aluminum Supply of North Jersey, L.L.C.</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">New Jersey</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">CFI Insulation, Inc.</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;Tennessee</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">CLS Insulation, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cornhusker Insulation, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr></table></div><div style="height:50.4pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="margin-bottom:0.08pt"><font><br></font></div></div></div><hr style="page-break-after:always"><div style="min-height:72pt;width:100%"><div style="margin-bottom:0.08pt"><font><br></font></div></div><div style="margin-bottom:0.08pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:94.230%"><tr><td style="width:1.0%"></td><td style="width:53.321%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:44.479%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Division 7 8 9 Supply, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">East Coast Insulators II, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Eastern Contractor Services Limited Liability Company</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">New Jersey</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Ecologic Energy Solutions, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Edwards&#47;Mooney &#38; Moses, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Elite Spray Foam of Las Vegas, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">EMPER Holdings, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Energy Savers of Louisville, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expert Insulation of Minnesota, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">FiberClass Insulation, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">First State Building Products, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fort Wayne Urethane, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Garage Door Systems, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gold Insulation, Inc.</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gold Star Insulation, L.P.</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Green Star Plus Insulation, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">G-T-G, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">South Carolina</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gulf Coast Insulation, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Hinkle Insulation &#38; Drywall Company, Incorporated</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Texas</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Horizon Electric Services, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">I.W. International Insulation Incorporated</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Washington</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">IBHL A Holding Company, Inc.</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">IBHL B Holding Company, Inc.</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">IBHL II-A Holding Company, Inc.</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">IBHL II-B Holding Company, Inc.</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">IBP Arctic Express, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">IBP Asset II, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">IBP Asset, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">IBP Corporation Holdings, Inc.</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">IBP Exteriors, Inc.</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">New Jersey</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">IBP Holdings II, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">IBP Holdings, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">IBP Legacy Glass &#38; Supply, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">IBP Logistics, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">IBP of Mansfield, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">IBP of Oklahoma, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">IBP of San Antonio, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">IBP of Toledo, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">IBP Rating Services, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Texas</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">IBP Texas Assets I, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">IBP Texas Assets II, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">IBP Texas Assets III, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Installed Building Products &#8211; Panhandle, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Installed Building Products &#8211; Portland, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Oregon</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Installed Building Products Distribution Services, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Installed Building Products II, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Installed Building Products of Fort Myers, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Installed Building Products of Houston, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Installed Building Products of Jacksonville, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr></table></div><div style="height:50.4pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="margin-bottom:0.08pt"><font><br></font></div></div></div><hr style="page-break-after:always"><div style="min-height:72pt;width:100%"><div style="margin-bottom:0.08pt"><font><br></font></div></div><div style="margin-bottom:0.08pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:94.230%"><tr><td style="width:1.0%"></td><td style="width:53.321%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:44.479%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Installed Building Products of Maine, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Installed Building Products of Miami, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Installed Building Products of Missouri, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Installed Building Products of Tampa, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Installed Building Products of Utah, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Installed Building Products of West Palm, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Installed Building Products, Inc.</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Installed Building Products, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Installed Building Solutions II, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Insulation Contractors of Washington, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Insulation Northwest, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Insulation Wholesale Supply, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Nevada</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">InsulVail, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Colorado</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Key Insulation of Austin, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Key Insulation of San Antonio, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Lakeside Insulation, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Layman Brothers Insulation, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">LKS Transportation, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Loveday Insulation, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Lynch Insulation of Montana, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">M&#38;D Insulation, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">MAP Installed Building Products of Sagamore, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">MAP Installed Building Products of Seekonk, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Marv&#8217;s Insulation, Inc.</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Idaho</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Metro Home Insulation, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Mid South Construction and Building Products, Inc.</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Georgia</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Mid-Atlantic Insulation, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">MIG Building Systems of East Syracuse, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">MIG Building Systems, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Momper Insulation of Crown Point, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Momper Insulation of Elkhart, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Momper Insulation of Fort Wayne, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Norkote of Washington, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Northwest Insulation, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">OJ Insulation Holdings, Inc.</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">OJ Insulation, L.P.</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Orr Industries of Pennsylvania, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Pacific Partners Insulation North, a BDI Company, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Washington</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Pacific Partners Insulation South, a BDI Company, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Washington</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Parker Insulation and Building Products, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Texas</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">PEG, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Texas</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Pisgah Insulation and Fireplaces of NC, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">North Carolina</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Premier Building Supply SLC, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Utah</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Premier Building Supply, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Utah</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">RaJan, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Ohio</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Rocket Insulation, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Rockford Insulation, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Royals Commercial of Maryland, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">SCE of Chicago, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr></table></div><div style="height:50.4pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="margin-bottom:0.08pt"><font><br></font></div></div></div><hr style="page-break-after:always"><div style="min-height:72pt;width:100%"><div style="margin-bottom:0.08pt"><font><br></font></div></div><div style="margin-bottom:0.08pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:94.230%"><tr><td style="width:1.0%"></td><td style="width:53.321%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:44.479%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sierra Insulation Contractors II, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Southern Insulators, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Spec 7 Insulation Co., LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Colorado</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Suburban Insulation, Inc.</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Pennsylvania</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Superior Insulation Services, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Superior Insulation, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">TCI Contracting of Charleston, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">TCI Contracting of Hilton Head, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">TCI Contracting of Kentucky, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">TCI Contracting of Memphis, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">TCI Contracting of Nashville, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">TCI Contracting of the Gulf, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">TCI Contracting, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Georgia</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thermal Control Insulation, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Ohio</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Therm-Con of Tennessee, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Tidewater Insulators, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Town Building Systems, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trademark Roofing Company, Inc.</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">North Carolina</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trademark Seamless Gutter Company, Inc.</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">North Carolina</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Tri-County Building Products of California, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trilok Industries, Inc.</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Georgia</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">U.S. Insulation Corp.</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Connecticut</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Water-Tite Company, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">WeatherSeal Company, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Delaware</font></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Wilson Insulation Company, LLC</font></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Georgia</font></td></tr></table></div><div style="margin-top:12pt;text-align:center"><font><br></font></div><div style="height:50.4pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="margin-bottom:0.08pt"><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-23.1
<SEQUENCE>3
<FILENAME>ibp-20221231xex231xdeloitt.htm
<DESCRIPTION>EX-23.1
<TEXT>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head>
<!-- Document created using Wdesk -->
<!-- Copyright 2023 Workiva -->
<title>Document</title></head><body><div id="ie597757099234b8cb3989aadc7b1432c_1"></div><div style="min-height:72pt;width:100%"><div style="margin-bottom:0.1pt"><font><br></font></div></div><div style="margin-bottom:10pt;text-align:right"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:133%">Exhibit 23.1</font></div><div style="margin-bottom:10pt"><font><br></font></div><div style="margin-bottom:10pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:133%">CONSENT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM</font></div><div style="margin-bottom:10pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:133%">We consent to the incorporation by reference in Registration Statement No. 333-195107</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:133%"> </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:133%">on Form S-8 of our reports dated February 22, 2023, relating to the consolidated financial statements of Installed Building Products, Inc., and the effectiveness of Installed Building Products, Inc.&#8217;s internal control over financial reporting, appearing in this Annual Report on Form 10-K of Installed Building Products, Inc. for the year ended December 31, 2022.</font></div><div><font><br></font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#47;s&#47; Deloitte &#38; Touche LLP</font></div><div><font><br></font></div><div style="margin-bottom:0.1pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:133%">Columbus, Ohio</font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">February 22, 2023</font></div><div style="margin-bottom:10pt"><font><br></font></div><div style="height:72pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="margin-bottom:0.1pt"><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.1
<SEQUENCE>4
<FILENAME>ibp-20221231xex311xceocert.htm
<DESCRIPTION>EX-31.1
<TEXT>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head>
<!-- Document created using Wdesk -->
<!-- Copyright 2023 Workiva -->
<title>Document</title></head><body><div id="idc510d44b8324c2e9459348a1c727596_1"></div><div style="min-height:42.75pt;width:100%"><div><font><br></font></div></div><div style="text-align:right"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Exhibit 31.1</font></div><div style="margin-top:12pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC.</font></div><div style="margin-top:12pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Certification Required by Rule&#160;13a-14(a)&#160;or&#160;15d-14(a)</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">of the Securities Exchange Act of 1934</font></div><div style="margin-top:12pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">I, Jeffrey W. Edwards, certify that&#58;</font></div><div style="margin-top:12pt;padding-left:18pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">1.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">I have reviewed this Annual Report on Form&#160;10-K&#160;of Installed Building Products, Inc.&#59;</font></div><div style="margin-top:12pt;padding-left:18pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report&#59;</font></div><div style="margin-top:12pt;padding-left:18pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">3.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report&#59;</font></div><div style="margin-top:12pt;padding-left:18pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">4.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">The registrant&#8217;s other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules&#160;13a-15(e)&#160;and&#160;15d-15(e))&#160;and internal control over financial reporting (as defined in Exchange Act Rules&#160;13a-15(f)&#160;and&#160;15d-15(f))&#160;for the registrant and have&#58;</font></div><div style="margin-top:12pt;padding-left:54pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">a)</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6pt;font-weight:400;line-height:120%;padding-left:10.24pt">&#160;</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared&#59;</font></div><div style="margin-top:12pt;padding-left:54pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">b)</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.67pt">designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles&#59;</font></div><div style="margin-top:12pt;padding-left:54pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">c)</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.24pt">evaluated the effectiveness of the registrant&#8217;s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation&#59; and</font></div><div style="margin-top:12pt;padding-left:54pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">d)</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.67pt">disclosed in this report any change in the registrant&#8217;s internal control over financial reporting that occurred during the registrant&#8217;s most recent fiscal quarter (the registrant&#8217;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#8217;s internal control over financial reporting.</font></div><div style="margin-top:12pt;padding-left:18pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">5.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">The registrant&#8217;s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant&#8217;s auditors and the audit committee of the registrant&#8217;s board of directors (or persons performing the equivalent functions)&#58;</font></div><div style="margin-top:12pt;padding-left:54pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">a)</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.24pt">all significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant&#8217;s ability to record, process, summarize and report financial information&#59; and</font></div><div style="margin-top:12pt;padding-left:54pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">b)</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.67pt">any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#8217;s internal control over financial reporting.</font></div><div><font><br></font></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:41.506%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:42.825%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date&#58; February 22, 2023</font></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">By&#58;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;&#47;s&#47; Jeffrey W. Edwards</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Jeffrey W. Edwards</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">President and Chief Executive Officer</font></td></tr></table></div><div><font><br></font></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.2
<SEQUENCE>5
<FILENAME>ibp-20221231xex312xcfocert.htm
<DESCRIPTION>EX-31.2
<TEXT>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head>
<!-- Document created using Wdesk -->
<!-- Copyright 2023 Workiva -->
<title>Document</title></head><body><div id="if84edfe71e604b50add6c92646c0acf5_1"></div><div style="min-height:42.75pt;width:100%"><div><font><br></font></div></div><div style="text-align:right"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Exhibit 31.2</font></div><div style="margin-top:12pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC.</font></div><div style="margin-top:12pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Certification Required by Rule&#160;13a-14(a)&#160;or&#160;15d-14(a)</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">of the Securities Exchange Act of 1934</font></div><div style="margin-top:12pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">I, Michael T. Miller, certify that&#58;</font></div><div style="margin-top:12pt;padding-left:18pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">1.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">I have reviewed this Annual Report on Form&#160;10-K&#160;of Installed Building Products, Inc.&#59;</font></div><div style="margin-top:12pt;padding-left:18pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report&#59;</font></div><div style="margin-top:12pt;padding-left:18pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">3.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report&#59;</font></div><div style="margin-top:12pt;padding-left:18pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">4.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">The registrant&#8217;s other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules&#160;13a-15(e)&#160;and&#160;15d-15(e))&#160;and internal control over financial reporting (as defined in Exchange Act Rules&#160;13a-15(f)&#160;and&#160;15d-15(f))&#160;for the registrant and have&#58;</font></div><div style="margin-top:12pt;padding-left:54pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">a)</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.24pt">designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared&#59;</font></div><div style="margin-top:12pt;padding-left:54pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">b)</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.67pt">designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles&#59;</font></div><div style="margin-top:12pt;padding-left:54pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">c)</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6pt;font-weight:400;line-height:120%;padding-left:10.24pt">&#160;</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">evaluated the effectiveness of the registrant&#8217;s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation&#59; and</font></div><div style="margin-top:12pt;padding-left:54pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">d)</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.67pt">disclosed in this report any change in the registrant&#8217;s internal control over financial reporting that occurred during the registrant&#8217;s most recent fiscal quarter (the registrant&#8217;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#8217;s internal control over financial reporting.</font></div><div style="margin-top:12pt;padding-left:18pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">5.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">The registrant&#8217;s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant&#8217;s auditors and the audit committee of the registrant&#8217;s board of directors (or persons performing the equivalent functions)&#58;</font></div><div style="margin-top:12pt;padding-left:54pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">a)</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.24pt">all significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant&#8217;s ability to record, process, summarize and report financial information&#59; and</font></div><div style="margin-top:12pt;padding-left:54pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">b)</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.67pt">any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#8217;s internal control over financial reporting.</font></div><div style="margin-top:17pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:41.506%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:42.825%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date&#58; February 22, 2023</font></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">By&#58;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;&#47;s&#47; Michael T. Miller</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Michael T. Miller</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Executive&#160;Vice&#160;President&#160;and&#160;Chief&#160;Financial&#160;Officer</font></td></tr></table></div><div><font><br></font></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.1
<SEQUENCE>6
<FILENAME>ibp-20221231xex321xceo.htm
<DESCRIPTION>EX-32.1
<TEXT>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head>
<!-- Document created using Wdesk -->
<!-- Copyright 2023 Workiva -->
<title>Document</title></head><body><div id="iac10e69344c14532b0cd15ad3f0830a1_1"></div><div style="min-height:42.75pt;width:100%"><div><font><br></font></div></div><div style="text-align:right"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Exhibit 32.1</font></div><div style="margin-top:12pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC.</font></div><div style="margin-top:12pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Certification Required by Rule&#160;13a-14(b)&#160;or&#160;15d-14(b)</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">of the Securities Exchange Act of 1934 and</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Section&#160;1350 of Chapter 63 of Title 18 of the</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">United States Code</font></div><div style="margin-top:12pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The certification set forth below is being submitted in connection with the Installed Building Products, Inc. Annual Report on Form&#160;10-K&#160;for the year ended December&#160;31, 2022 (the &#8220;Report&#8221;) for the purpose of complying with Rule&#160;13a-14(b)&#160;or Rule&#160;15d-14(b)&#160;of the Securities Exchange Act of 1934 (the &#8220;Exchange Act&#8221;) and Section&#160;1350 of Chapter 63 of Title 18 of the United States Code.</font></div><div style="margin-top:12pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Jeffrey W. Edwards, the President and Chief Executive Officer, of Installed Building Products, Inc., certifies that, to the best of his knowledge&#58;</font></div><div style="margin-top:12pt;padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">1.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">The Report fully complies with the requirements of Section&#160;13(a) or 15(d) of the Securities Exchange Act of 1934&#59; and</font></div><div style="margin-top:12pt;padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">The information contained in the Report fairly presents, in all material respects, the consolidated financial condition and results of operations of Installed Building Products, Inc.</font></div><div><font><br></font></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:42.091%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:42.240%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Dated&#58; February 22, 2023</font></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">By&#58;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160; &#47;s&#47; Jeffrey W. Edwards</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Jeffrey W. Edwards</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">President and Chief Executive Officer</font></td></tr></table></div><div style="margin-bottom:8pt"><font><br></font></div><div><font><br></font></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.2
<SEQUENCE>7
<FILENAME>ibp-20221231xex322xcfo.htm
<DESCRIPTION>EX-32.2
<TEXT>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head>
<!-- Document created using Wdesk -->
<!-- Copyright 2023 Workiva -->
<title>Document</title></head><body><div id="ibbcc0778c48a4ee0843750081e3aa785_1"></div><div style="min-height:42.75pt;width:100%"><div><font><br></font></div></div><div style="text-align:right"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Exhibit 32.2</font></div><div style="margin-top:12pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">INSTALLED BUILDING PRODUCTS, INC.</font></div><div style="margin-top:12pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Certification Required by Rule&#160;13a-14(b)&#160;or&#160;15d-14(b)</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">of the Securities Exchange Act of 1934 and</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Section&#160;1350 of Chapter 63 of Title 18 of the</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">United States Code</font></div><div style="margin-top:12pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The certification set forth below is being submitted in connection with the Installed Building Products, Inc. Annual Report on Form&#160;10-K&#160;for the year ended December&#160;31, 2022 (the &#8220;Report&#8221;) for the purpose of complying with Rule&#160;13a-14(b)&#160;or Rule&#160;15d-14(b)&#160;of the Securities Exchange Act of 1934 (the &#8220;Exchange Act&#8221;) and Section&#160;1350 of Chapter 63 of Title 18 of the United States Code.</font></div><div style="margin-top:12pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Michael T. Miller, the Executive Vice President and Chief Financial Officer, of Installed Building Products, Inc., certifies that, to the best of his knowledge&#58;</font></div><div style="margin-top:12pt;padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">1.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">The Report fully complies with the requirements of Section&#160;13(a) or 15(d) of the Securities Exchange Act of 1934&#59; and</font></div><div style="margin-top:12pt;padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">The information contained in the Report fairly presents, in all material respects, the consolidated financial condition and results of operations of Installed Building Products, Inc.</font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6pt;font-weight:400;line-height:120%">&#160;</font></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:42.091%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.637%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:42.240%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Dated&#58; February 22, 2023</font></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">By&#58;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160; &#47;s&#47; Michael T. Miller</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Michael T. Miller</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Executive&#160;Vice&#160;President&#160;and&#160;Chief&#160;Financial&#160;Officer</font></td></tr></table></div><div style="margin-bottom:8pt"><font><br></font></div><div><font><br></font></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>8
<FILENAME>ibp-20221231.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with Wdesk from Workiva-->
<!--Copyright 2023 Workiva-->
<!--r:a3e4206c-1cfd-4e6c-927f-ccbea40704ec,g:8e7b03d8-eedd-4de2-8abd-33b4866ed975-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:ibp="http://installedbuildingproducts.com/20221231" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2020-01-21" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://installedbuildingproducts.com/20221231">
  <xs:import namespace="http://fasb.org/srt/2022" schemaLocation="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd"/>
  <xs:import namespace="http://fasb.org/us-gaap/2022" schemaLocation="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd"/>
  <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="http://www.xbrl.org/2003/xlink-2003-12-31.xsd"/>
  <xs:import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd"/>
  <xs:import namespace="http://www.xbrl.org/2003/linkbase" schemaLocation="http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd"/>
  <xs:import namespace="http://www.xbrl.org/dtr/type/2020-01-21" schemaLocation="https://www.xbrl.org/dtr/type/2020-01-21/types.xsd"/>
  <xs:import namespace="http://xbrl.org/2005/xbrldt" schemaLocation="http://www.xbrl.org/2005/xbrldt-2005.xsd"/>
  <xs:import namespace="http://xbrl.sec.gov/dei/2022" schemaLocation="https://xbrl.sec.gov/dei/2022/dei-2022.xsd"/>
  <xs:annotation>
    <xs:appinfo>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="ibp-20221231_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="ibp-20221231_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="ibp-20221231_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="ibp-20221231_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:type="simple"/>
      <link:roleType id="CoverPage" roleURI="http://installedbuildingproducts.com/role/CoverPage">
        <link:definition>0000001 - Document - Cover Page</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="AuditInformation" roleURI="http://installedbuildingproducts.com/role/AuditInformation">
        <link:definition>0000002 - Document - Audit 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 id="CONSOLIDATEDBALANCESHEETS" roleURI="http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS">
        <link:definition>0000003 - Statement - CONSOLIDATED BALANCE SHEETS</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CONSOLIDATEDBALANCESHEETSParenthetical" roleURI="http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETSParenthetical">
        <link:definition>0000004 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME" roleURI="http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME">
        <link:definition>0000005 - Statement - CONSOLIDATED STATEMENTS OF OPERATIONS AND 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 id="CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEParenthetical" roleURI="http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEParenthetical">
        <link:definition>0000006 - Statement - CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (Parenthetical)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY" roleURI="http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY">
        <link:definition>0000007 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYParenthetical" roleURI="http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYParenthetical">
        <link:definition>0000008 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (Parenthetical)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CONSOLIDATEDSTATEMENTSOFCASHFLOWS" roleURI="http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS">
        <link:definition>0000009 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CONSOLIDATEDSTATEMENTSOFCASHFLOWSParenthetical" roleURI="http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSParenthetical">
        <link:definition>0000010 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS (Parenthetical)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="Organization" roleURI="http://installedbuildingproducts.com/role/Organization">
        <link:definition>0000011 - Disclosure - 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 id="SignificantAccountingPolicies" roleURI="http://installedbuildingproducts.com/role/SignificantAccountingPolicies">
        <link:definition>0000012 - Disclosure - Significant Accounting Policies</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RevenueRecognition" roleURI="http://installedbuildingproducts.com/role/RevenueRecognition">
        <link:definition>0000013 - Disclosure - Revenue Recognition</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CreditLosses" roleURI="http://installedbuildingproducts.com/role/CreditLosses">
        <link:definition>0000014 - Disclosure - Credit Losses</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CashandCashEquivalents" roleURI="http://installedbuildingproducts.com/role/CashandCashEquivalents">
        <link:definition>0000015 - Disclosure - Cash and Cash Equivalents</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="PropertyandEquipment" roleURI="http://installedbuildingproducts.com/role/PropertyandEquipment">
        <link:definition>0000016 - Disclosure - Property and Equipment</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="GoodwillandIntangibles" roleURI="http://installedbuildingproducts.com/role/GoodwillandIntangibles">
        <link:definition>0000017 - Disclosure - Goodwill and Intangibles</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LongTermDebt" roleURI="http://installedbuildingproducts.com/role/LongTermDebt">
        <link:definition>0000018 - Disclosure - Long-Term 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 id="Leases" roleURI="http://installedbuildingproducts.com/role/Leases">
        <link:definition>0000019 - 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 id="FairValueMeasurements" roleURI="http://installedbuildingproducts.com/role/FairValueMeasurements">
        <link:definition>0000020 - Disclosure - Fair Value Measurements</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="InformationonSegments" roleURI="http://installedbuildingproducts.com/role/InformationonSegments">
        <link:definition>0000021 - Disclosure - Information on Segments</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DerivativesandHedgingActivities" roleURI="http://installedbuildingproducts.com/role/DerivativesandHedgingActivities">
        <link:definition>0000022 - Disclosure - Derivatives and Hedging Activities</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockholdersEquity" roleURI="http://installedbuildingproducts.com/role/StockholdersEquity">
        <link:definition>0000023 - 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 id="EmployeeBenefits" roleURI="http://installedbuildingproducts.com/role/EmployeeBenefits">
        <link:definition>0000024 - Disclosure - Employee Benefits</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IncomeTaxes" roleURI="http://installedbuildingproducts.com/role/IncomeTaxes">
        <link:definition>0000025 - 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 id="RelatedPartyTransactions" roleURI="http://installedbuildingproducts.com/role/RelatedPartyTransactions">
        <link:definition>0000026 - Disclosure - Related Party Transactions</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CommitmentsandContingencies" roleURI="http://installedbuildingproducts.com/role/CommitmentsandContingencies">
        <link:definition>0000027 - Disclosure - Commitments and Contingencies</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="BusinessCombinations" roleURI="http://installedbuildingproducts.com/role/BusinessCombinations">
        <link:definition>0000028 - Disclosure - Business Combinations</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IncomePerCommonShare" roleURI="http://installedbuildingproducts.com/role/IncomePerCommonShare">
        <link:definition>0000029 - Disclosure - Income Per Common Share</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SubsequentEvents" roleURI="http://installedbuildingproducts.com/role/SubsequentEvents">
        <link:definition>0000030 - Disclosure - Subsequent Events</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SignificantAccountingPoliciesPolicies" roleURI="http://installedbuildingproducts.com/role/SignificantAccountingPoliciesPolicies">
        <link:definition>0000031 - Disclosure - Significant Accounting Policies (Policies)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SignificantAccountingPoliciesTables" roleURI="http://installedbuildingproducts.com/role/SignificantAccountingPoliciesTables">
        <link:definition>0000032 - Disclosure - Significant Accounting Policies (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RevenueRecognitionTables" roleURI="http://installedbuildingproducts.com/role/RevenueRecognitionTables">
        <link:definition>0000033 - Disclosure - Revenue Recognition (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CreditLossesTables" roleURI="http://installedbuildingproducts.com/role/CreditLossesTables">
        <link:definition>0000034 - Disclosure - Credit Losses (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="PropertyandEquipmentTables" roleURI="http://installedbuildingproducts.com/role/PropertyandEquipmentTables">
        <link:definition>0000035 - Disclosure - Property and Equipment (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="GoodwillandIntangiblesTables" roleURI="http://installedbuildingproducts.com/role/GoodwillandIntangiblesTables">
        <link:definition>0000036 - Disclosure - Goodwill and Intangibles (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LongTermDebtTables" roleURI="http://installedbuildingproducts.com/role/LongTermDebtTables">
        <link:definition>0000037 - Disclosure - Long-Term Debt (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LeasesTables" roleURI="http://installedbuildingproducts.com/role/LeasesTables">
        <link:definition>0000038 - 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 id="FairValueMeasurementsTables" roleURI="http://installedbuildingproducts.com/role/FairValueMeasurementsTables">
        <link:definition>0000039 - Disclosure - Fair Value Measurements (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="InformationonSegmentsTables" roleURI="http://installedbuildingproducts.com/role/InformationonSegmentsTables">
        <link:definition>0000040 - Disclosure - Information on Segments (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DerivativesandHedgingActivitiesTables" roleURI="http://installedbuildingproducts.com/role/DerivativesandHedgingActivitiesTables">
        <link:definition>0000041 - Disclosure - Derivatives and Hedging Activities (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockholdersEquityTables" roleURI="http://installedbuildingproducts.com/role/StockholdersEquityTables">
        <link:definition>0000042 - 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 id="EmployeeBenefitsTables" roleURI="http://installedbuildingproducts.com/role/EmployeeBenefitsTables">
        <link:definition>0000043 - Disclosure - Employee Benefits (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IncomeTaxesTables" roleURI="http://installedbuildingproducts.com/role/IncomeTaxesTables">
        <link:definition>0000044 - Disclosure - Income Taxes (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RelatedPartyTransactionsTables" roleURI="http://installedbuildingproducts.com/role/RelatedPartyTransactionsTables">
        <link:definition>0000045 - Disclosure - Related Party Transactions (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CommitmentsandContingenciesTables" roleURI="http://installedbuildingproducts.com/role/CommitmentsandContingenciesTables">
        <link:definition>0000046 - 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 id="BusinessCombinationsTables" roleURI="http://installedbuildingproducts.com/role/BusinessCombinationsTables">
        <link:definition>0000047 - Disclosure - Business Combinations (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="OrganizationAdditionalInformationDetail" roleURI="http://installedbuildingproducts.com/role/OrganizationAdditionalInformationDetail">
        <link:definition>0000048 - Disclosure - 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 id="SignificantAccountingPoliciesDetail" roleURI="http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail">
        <link:definition>0000049 - Disclosure - Significant Accounting Policies (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 id="RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail" roleURI="http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail">
        <link:definition>0000050 - Disclosure - Revenue Recognition - Summary of Revenues Disaggregated by End Market and Product (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 id="RevenueRecognitionSummaryofAssetsandLiabilitiesRelatedtoUncompletedContractsandCustomerDepositsDetail" roleURI="http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofAssetsandLiabilitiesRelatedtoUncompletedContractsandCustomerDepositsDetail">
        <link:definition>0000051 - Disclosure - Revenue Recognition - Summary of Assets and Liabilities Related to Uncompleted Contracts and Customer Deposits (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 id="RevenueRecognitionScheduleofCostandEstimatedEarningsonUncompletedContractsDetail" roleURI="http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofCostandEstimatedEarningsonUncompletedContractsDetail">
        <link:definition>0000052 - Disclosure - Revenue Recognition - Schedule of Cost and Estimated Earnings on Uncompleted Contracts (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 id="RevenueRecognitionScheduleofNetUnderOverBillingsDetail" roleURI="http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofNetUnderOverBillingsDetail">
        <link:definition>0000053 - Disclosure - Revenue Recognition - Schedule of Net Under (Over) Billings (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 id="RevenueRecognitionAdditionalInformationDetail" roleURI="http://installedbuildingproducts.com/role/RevenueRecognitionAdditionalInformationDetail">
        <link:definition>0000054 - Disclosure - Revenue Recognition - 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 id="RevenueRecognitionAdditionalInformationDetail_1" roleURI="http://installedbuildingproducts.com/role/RevenueRecognitionAdditionalInformationDetail_1">
        <link:definition>0000054 - Disclosure - Revenue Recognition - 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 id="CreditLossesAdditionalInformationDetails" roleURI="http://installedbuildingproducts.com/role/CreditLossesAdditionalInformationDetails">
        <link:definition>0000055 - Disclosure - Credit Losses - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CreditLossesScheduleofChangesinAllowanceforCreditLossesDetails" roleURI="http://installedbuildingproducts.com/role/CreditLossesScheduleofChangesinAllowanceforCreditLossesDetails">
        <link:definition>0000056 - Disclosure - Credit Losses - Schedule of Changes in Allowance for Credit Losses (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CashandCashEquivalentsAdditionalInformationDetail" roleURI="http://installedbuildingproducts.com/role/CashandCashEquivalentsAdditionalInformationDetail">
        <link:definition>0000057 - Disclosure - Cash and Cash Equivalents - 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 id="PropertyandEquipmentScheduleofPropertyandEquipmentDetails" roleURI="http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails">
        <link:definition>0000058 - Disclosure - Property and Equipment - Schedule of Property and Equipment (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="PropertyandEquipmentScheduleofDepreciationandAmortizationExpenseonPropertyandEquipmentbyIncomeStatementCategoryDetails" roleURI="http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofDepreciationandAmortizationExpenseonPropertyandEquipmentbyIncomeStatementCategoryDetails">
        <link:definition>0000059 - Disclosure - Property and Equipment - Schedule of Depreciation and Amortization Expense on Property and Equipment, by Income Statement Category (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails" roleURI="http://installedbuildingproducts.com/role/GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails">
        <link:definition>0000060 - Disclosure - Goodwill and Intangibles - Summary of Change in Carrying Amount of Goodwill (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="GoodwillandIntangiblesAdditionalInformationDetail" roleURI="http://installedbuildingproducts.com/role/GoodwillandIntangiblesAdditionalInformationDetail">
        <link:definition>0000061 - Disclosure - Goodwill and Intangibles - 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 id="GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails" roleURI="http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails">
        <link:definition>0000062 - Disclosure - Goodwill and Intangibles - Schedule of Gross Carrying Amount and Accumulated Amortization (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="GoodwillandIntangiblesScheduleofEstimatedAggregateAnnualAmortizationDetails" roleURI="http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofEstimatedAggregateAnnualAmortizationDetails">
        <link:definition>0000063 - Disclosure - Goodwill and Intangibles - Schedule of Estimated Aggregate Annual Amortization (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LongtermDebtScheduleofDebtDetail" roleURI="http://installedbuildingproducts.com/role/LongtermDebtScheduleofDebtDetail">
        <link:definition>0000064 - Disclosure - Long-term Debt - Schedule of Debt (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 id="LongTermDebtScheduleofMaturitiesofLongTermDebtDetail" roleURI="http://installedbuildingproducts.com/role/LongTermDebtScheduleofMaturitiesofLongTermDebtDetail">
        <link:definition>0000065 - Disclosure - Long-Term Debt - Schedule of Maturities of Long Term Debt (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 id="LongtermDebtAdditionalInformationDetail" roleURI="http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail">
        <link:definition>0000066 - Disclosure - Long-term 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 id="LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails" roleURI="http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails">
        <link:definition>0000067 - Disclosure - Leases - Schedule of Supplemental Balance Sheet In formation Related To Leases (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LeasesLeaseCostFinanceandOperatingLeasesDetails" roleURI="http://installedbuildingproducts.com/role/LeasesLeaseCostFinanceandOperatingLeasesDetails">
        <link:definition>0000068 - Disclosure - Leases - Lease Cost Finance and Operating Leases (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LeasesScheduleofSupplementalCashFlowInformationRelatedtoLeasesDetails" roleURI="http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalCashFlowInformationRelatedtoLeasesDetails">
        <link:definition>0000069 - Disclosure - Leases - Schedule of Supplemental Cash Flow Information Related to Leases (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail" roleURI="http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail">
        <link:definition>0000070 - Disclosure - Leases - Finance Lease Obligations and Operating Lease Obligations (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 id="LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail_1" roleURI="http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail_1">
        <link:definition>0000070 - Disclosure - Leases - Finance Lease Obligations and Operating Lease Obligations (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 id="FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail" roleURI="http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail">
        <link:definition>0000071 - Disclosure - Fair Value Measurements - Schedule of Fair Values of Financial Assets and 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 id="FairvaluemeasurementsSummaryofChangeinFairValueofContingentConsiderationDetail" roleURI="http://installedbuildingproducts.com/role/FairvaluemeasurementsSummaryofChangeinFairValueofContingentConsiderationDetail">
        <link:definition>0000072 - Disclosure - Fair value measurements - Summary of Change in Fair Value of Contingent Consideration (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 id="FairValuemeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetail" roleURI="http://installedbuildingproducts.com/role/FairValuemeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetail">
        <link:definition>0000073 - Disclosure - Fair Value measurements - Summary of Carrying Values and Associated Fair Values of Financial Assets and 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 id="InformationonSegmentsDetails" roleURI="http://installedbuildingproducts.com/role/InformationonSegmentsDetails">
        <link:definition>0000074 - Disclosure - Information on Segments (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DerivativeandHedgingActivitiesOpenInterestSwapContractSummaryDetails" roleURI="http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesOpenInterestSwapContractSummaryDetails">
        <link:definition>0000075 - Disclosure - Derivative and Hedging Activities - Open Interest Swap Contract Summary (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DerivativeandHedgingActivitiesNarrativeDetails" roleURI="http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesNarrativeDetails">
        <link:definition>0000076 - Disclosure - Derivative and Hedging Activities - Narrative (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DerivativeandHedgingActivitiesInterestRateSwapSummaryDetails" roleURI="http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesInterestRateSwapSummaryDetails">
        <link:definition>0000077 - Disclosure - Derivative and Hedging Activities - Interest Rate Swap Summary (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockholdersEquityChangeinAOCIDetails" roleURI="http://installedbuildingproducts.com/role/StockholdersEquityChangeinAOCIDetails">
        <link:definition>0000078 - Disclosure - Stockholders' Equity - Change in AOCI (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockholdersEquityAdditionalInformationDetails" roleURI="http://installedbuildingproducts.com/role/StockholdersEquityAdditionalInformationDetails">
        <link:definition>0000079 - Disclosure - Stockholders' Equity - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockholdersEquityScheduleofDividendsDeclaredDetails" roleURI="http://installedbuildingproducts.com/role/StockholdersEquityScheduleofDividendsDeclaredDetails">
        <link:definition>0000080 - Disclosure - Stockholders' Equity - Schedule of Dividends Declared (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="EmployeeBenefitsAdditionalInformationDetail" roleURI="http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail">
        <link:definition>0000081 - Disclosure - Employee Benefits - 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 id="EmployeeBenefitsSummaryofWorkersCompensationKnownClaimsandIBNRReservesDetail" roleURI="http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofWorkersCompensationKnownClaimsandIBNRReservesDetail">
        <link:definition>0000082 - Disclosure - Employee Benefits - Summary of Workers' Compensation Known Claims and IBNR Reserves (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 id="EmployeeBenefitsScheduleofInsuranceReceivableforClaimsDetail" roleURI="http://installedbuildingproducts.com/role/EmployeeBenefitsScheduleofInsuranceReceivableforClaimsDetail">
        <link:definition>0000083 - Disclosure - Employee Benefits - Schedule of Insurance Receivable for Claims (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 id="EmployeeBenefitsContributionstoMultiemployerPensionsandHealthandWelfareBenefitPlansDetails" roleURI="http://installedbuildingproducts.com/role/EmployeeBenefitsContributionstoMultiemployerPensionsandHealthandWelfareBenefitPlansDetails">
        <link:definition>0000084 - Disclosure - Employee Benefits - Contributions to Multiemployer Pensions and Health and Welfare Benefit Plans (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail" roleURI="http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail">
        <link:definition>0000085 - Disclosure - Employee Benefits - Summary of Equity-Based Awards for Employees (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 id="EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails" roleURI="http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails">
        <link:definition>0000086 - Disclosure - Employee Benefits - Summary of Share-Based Compensation Expense Under the 2014 Omnibus Incentive Plan (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="EmployeeBenefitsSummaryofStockCompensationExpenseDetail" roleURI="http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofStockCompensationExpenseDetail">
        <link:definition>0000087 - Disclosure - Employee Benefits - Summary of Stock Compensation Expense (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 id="EmployeeBenefitsUnrecognizedShareBasedCompensationExpenseRelatedtoUnvestedAwardsDetails" roleURI="http://installedbuildingproducts.com/role/EmployeeBenefitsUnrecognizedShareBasedCompensationExpenseRelatedtoUnvestedAwardsDetails">
        <link:definition>0000088 - Disclosure - Employee Benefits - Unrecognized Share-Based Compensation Expense Related to Unvested Awards (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IncomeTaxesProvisionforIncomeTaxesDetail" roleURI="http://installedbuildingproducts.com/role/IncomeTaxesProvisionforIncomeTaxesDetail">
        <link:definition>0000089 - Disclosure - Income Taxes - Provision for Income Taxes (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 id="IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail" roleURI="http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail">
        <link:definition>0000090 - Disclosure - Income Taxes - Reconciliation of Effective Tax Rate on Net Income (Loss) and Federal Statutory Tax Rate (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 id="IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail" roleURI="http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail">
        <link:definition>0000091 - Disclosure - Income Taxes - Components of Net Deferred Tax Asset or Liability (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 id="IncomeTaxesAdditionalInformationDetail" roleURI="http://installedbuildingproducts.com/role/IncomeTaxesAdditionalInformationDetail">
        <link:definition>0000092 - 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 id="IncomeTaxesGrossUnrecognizedTaxBenefitDetail" roleURI="http://installedbuildingproducts.com/role/IncomeTaxesGrossUnrecognizedTaxBenefitDetail">
        <link:definition>0000093 - Disclosure - Income Taxes - Gross Unrecognized Tax Benefit (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 id="RelatedPartyTransactionsScheduleofRelatedPartyTransactionsDetail" roleURI="http://installedbuildingproducts.com/role/RelatedPartyTransactionsScheduleofRelatedPartyTransactionsDetail">
        <link:definition>0000094 - Disclosure - Related Party Transactions - Schedule of Related Party Transactions (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 id="RelatedPartyTransactionsAdditionalInformationDetail" roleURI="http://installedbuildingproducts.com/role/RelatedPartyTransactionsAdditionalInformationDetail">
        <link:definition>0000095 - Disclosure - Related Party Transactions - 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 id="CommitmentsandContingenciesScheduleofAccruedGeneralInsuranceReservesDetail" roleURI="http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofAccruedGeneralInsuranceReservesDetail">
        <link:definition>0000096 - Disclosure - Commitments and Contingencies - Schedule of Accrued General Insurance Reserves (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 id="CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetail" roleURI="http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetail">
        <link:definition>0000097 - Disclosure - Commitments and Contingencies - Schedule of Insurance Receivable for Claims (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 id="BusinessCombinationsAdditionalInformationDetail" roleURI="http://installedbuildingproducts.com/role/BusinessCombinationsAdditionalInformationDetail">
        <link:definition>0000098 - Disclosure - Business Combinations - 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 id="BusinessCombinationsSummaryofBusinessAcquisitionsDetail" roleURI="http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetail">
        <link:definition>0000099 - Disclosure - Business Combinations - Summary of Business Acquisitions (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 id="BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail" roleURI="http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail">
        <link:definition>0000100 - Disclosure - Business Combinations - Summary of Estimated Fair Value of Assets Acquired and Liabilities Assumed (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 id="BusinessCombinationsEstimatesofAcquiredIntangibleAssetsDetail" roleURI="http://installedbuildingproducts.com/role/BusinessCombinationsEstimatesofAcquiredIntangibleAssetsDetail">
        <link:definition>0000101 - Disclosure - Business Combinations - Estimates of Acquired Intangible 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 id="BusinessCombinationsProFormaResultsofOperationsDetail" roleURI="http://installedbuildingproducts.com/role/BusinessCombinationsProFormaResultsofOperationsDetail">
        <link:definition>0000102 - Disclosure - Business Combinations - Pro Forma Results of Operations (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 id="IncomePerCommonShareAdditionalInformationDetail" roleURI="http://installedbuildingproducts.com/role/IncomePerCommonShareAdditionalInformationDetail">
        <link:definition>0000103 - Disclosure - Income Per Common Share - 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 id="SubsequentEventsDetails" roleURI="http://installedbuildingproducts.com/role/SubsequentEventsDetails">
        <link:definition>0000104 - Disclosure - Subsequent Events (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
    </xs:appinfo>
  </xs:annotation>
  <xs:element id="ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember" abstract="true" name="FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_OperatingLeaseMember" abstract="true" name="OperatingLeaseMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_FinanceLeaseExecutoryCosts" abstract="false" name="FinanceLeaseExecutoryCosts" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_OtherAcquisitionMember" abstract="true" name="OtherAcquisitionMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_AMDMember" abstract="true" name="AMDMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_RepairAndRemodelMember" abstract="true" name="RepairAndRemodelMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_PropertyPlantAndEquipmentDepreciationAllocationCategoriesTableTextBlock" abstract="false" name="PropertyPlantAndEquipmentDepreciationAllocationCategoriesTableTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <xs:element id="ibp_ABSMember" abstract="true" name="ABSMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds" abstract="false" name="DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <xs:element id="ibp_IncomeTaxTable" abstract="true" name="IncomeTaxTable" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrldt:hypercubeItem" type="xbrli:stringItemType"/>
  <xs:element id="ibp_AdjustedGrossProfitPercentage" abstract="false" name="AdjustedGrossProfitPercentage" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <xs:element id="ibp_TwoThousandTwentyTwoAcquisitionsMember" abstract="true" name="TwoThousandTwentyTwoAcquisitionsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_ScheduleOfEmployeeRelatedLiabilitiesTableTextBlock" abstract="false" name="ScheduleOfEmployeeRelatedLiabilitiesTableTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <xs:element id="ibp_FinanceLeaseObligationsIncurred" abstract="false" name="FinanceLeaseObligationsIncurred" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_IncrementalRevolvingCreditFacilityMember" abstract="true" name="IncrementalRevolvingCreditFacilityMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_DeferredOfferingCostsPolicyTextBlock" abstract="false" name="DeferredOfferingCostsPolicyTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <xs:element id="ibp_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfEqualInstallmentsForVestingOfStockAwards" abstract="false" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfEqualInstallmentsForVestingOfStockAwards" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:decimalItemType"/>
  <xs:element id="ibp_CostsAndEstimatedEarningsOnUncompletedContractsTableTextBlock" abstract="false" name="CostsAndEstimatedEarningsOnUncompletedContractsTableTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <xs:element id="ibp_InterestRateSwapOneEffectiveJuly202021Member" abstract="true" name="InterestRateSwapOneEffectiveJuly202021Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_WeightedAverageRemainingLeaseTermOfOperatingFinanceLeasesAbstract" abstract="true" name="WeightedAverageRemainingLeaseTermOfOperatingFinanceLeasesAbstract" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="ibp_VehicleAndEquipmentNotesMember" abstract="true" name="VehicleAndEquipmentNotesMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsTable" abstract="true" name="PensionPlansPostretirementAndOtherEmployeeBenefitsTable" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrldt:hypercubeItem" type="xbrli:stringItemType"/>
  <xs:element id="ibp_LiabilityPerformanceBasedStockAwardsMember" abstract="true" name="LiabilityPerformanceBasedStockAwardsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_AblCreditAgreementMember" abstract="true" name="AblCreditAgreementMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_DividendsDeclaredAndPaid1Member" abstract="true" name="DividendsDeclaredAndPaid1Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities" abstract="false" name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_LineOfCreditFacilityAccordionFeatureIncreaseLimit" abstract="false" name="LineOfCreditFacilityAccordionFeatureIncreaseLimit" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion" abstract="false" name="GrossProfitExcludingDepreciationAmortizationAndDepletion" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_TermLoanMember" abstract="true" name="TermLoanMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_WeightedAverageDiscountRateOfOperatingFinanceLeasesAbstract" abstract="true" name="WeightedAverageDiscountRateOfOperatingFinanceLeasesAbstract" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="ibp_RevenueFromContractWithCustomerPaymentTerms" abstract="false" name="RevenueFromContractWithCustomerPaymentTerms" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="ibp_ProductInstallationMember" abstract="true" name="ProductInstallationMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember" abstract="true" name="TwoThousandAndFourteenOmnibusIncentivePlanMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_UnrecognizedTaxBenefitsIncreaseResultingFromLapseOfApplicableStatuteOfLimitations" abstract="false" name="UnrecognizedTaxBenefitsIncreaseResultingFromLapseOfApplicableStatuteOfLimitations" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_PerformanceBasedAwardsMember" abstract="true" name="PerformanceBasedAwardsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_BillingsInExcessOfCostOnUncompletedContracts" abstract="false" name="BillingsInExcessOfCostOnUncompletedContracts" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_FiveStarMember" abstract="true" name="FiveStarMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_InterestRateSwapTwoEffectiveDecember312021Member" abstract="true" name="InterestRateSwapTwoEffectiveDecember312021Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_LeaseLiabilities" abstract="false" name="LeaseLiabilities" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_WorkersCompensationExpense" abstract="false" name="WorkersCompensationExpense" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_FireproofingAndFirestoppingMember" abstract="true" name="FireproofingAndFirestoppingMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_LeaseAssetsAbstract" abstract="true" name="LeaseAssetsAbstract" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable" abstract="false" name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_CommonStockAwardsMember" abstract="true" name="CommonStockAwardsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_TwoThousandTwentyAcquisitionsMember" abstract="true" name="TwoThousandTwentyAcquisitionsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_NoncurrentLeaseLiabilitiesAbstract" abstract="true" name="NoncurrentLeaseLiabilitiesAbstract" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="ibp_InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy" abstract="false" name="InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_NumberOfLocationsInOperation" abstract="false" name="NumberOfLocationsInOperation" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="xbrli:integerItemType"/>
  <xs:element id="ibp_OtherSegmentMember" abstract="true" name="OtherSegmentMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_LeaseLiabilitiesAbstract" abstract="true" name="LeaseLiabilitiesAbstract" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="ibp_FixedChargeCoverageRatio" abstract="false" name="FixedChargeCoverageRatio" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:pureItemType"/>
  <xs:element id="ibp_CommitmentsAndContingenciesDisclosureLineItems" abstract="true" name="CommitmentsAndContingenciesDisclosureLineItems" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="ibp_CommitmentsAndContingenciesDisclosureTable" abstract="true" name="CommitmentsAndContingenciesDisclosureTable" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrldt:hypercubeItem" type="xbrli:stringItemType"/>
  <xs:element id="ibp_DebtInstrumentMaximumCashProceeds" abstract="false" name="DebtInstrumentMaximumCashProceeds" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_DividendsDeclaredAndPaid2Member" abstract="true" name="DividendsDeclaredAndPaid2Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_TermLoanAgreementMember" abstract="true" name="TermLoanAgreementMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_SurrenderOfCommonStockAwardsByEmployees" abstract="false" name="SurrenderOfCommonStockAwardsByEmployees" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_VehiclesAndEquipmentMember" abstract="true" name="VehiclesAndEquipmentMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_DeferredIncomeTaxLiabilitiesNetMember" abstract="true" name="DeferredIncomeTaxLiabilitiesNetMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_ShowerDoorsShelvingAndMirrorsMember" abstract="true" name="ShowerDoorsShelvingAndMirrorsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_FinanceLeaseMember" abstract="true" name="FinanceLeaseMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnContingentConsideration" abstract="false" name="FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnContingentConsideration" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_InsuranceReceivableClaimsTableTextBlock" abstract="false" name="InsuranceReceivableClaimsTableTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <xs:element id="ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds2" abstract="false" name="DebtInstrumentPrepaymentsPercentageOfNetCashProceeds2" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <xs:element id="ibp_ResidentialNewConstructionMember" abstract="true" name="ResidentialNewConstructionMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems" abstract="true" name="PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="ibp_RelatedPartyOperatingLeasesMember" abstract="true" name="RelatedPartyOperatingLeasesMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_NoncashActivitiesReleaseOfIndemnificationOfAcquisitionRelatedDebt" abstract="false" name="NoncashActivitiesReleaseOfIndemnificationOfAcquisitionRelatedDebt" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_CostAndEstimatedEarningsUnderOverBillingsNet" abstract="false" name="CostAndEstimatedEarningsUnderOverBillingsNet" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_SwingLineLoansMember" abstract="true" name="SwingLineLoansMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_IntangibleAssetsExcludingCustomerRelationshipsMember" abstract="true" name="IntangibleAssetsExcludingCustomerRelationshipsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances" abstract="false" name="DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_WaterproofingMember" abstract="true" name="WaterproofingMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_CommercialMember" abstract="true" name="CommercialMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_AggregateCapWorkersCompensationLiability" abstract="false" name="AggregateCapWorkersCompensationLiability" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_GarageDoorsMember" abstract="true" name="GarageDoorsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_OtherCustomerInstallationMember" abstract="true" name="OtherCustomerInstallationMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_CashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesAbstract" abstract="true" name="CashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesAbstract" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds2" abstract="false" name="DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds2" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <xs:element id="ibp_NumberOfSwaps" abstract="false" name="NumberOfSwaps" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="xbrli:integerItemType"/>
  <xs:element id="ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds" abstract="false" name="DebtInstrumentPrepaymentsPercentageOfNetCashProceeds" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <xs:element id="ibp_AuditorInformationAbstract" abstract="true" name="AuditorInformationAbstract" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="ibp_AccountingPoliciesAndGeneralInformationLineItems" abstract="true" name="AccountingPoliciesAndGeneralInformationLineItems" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="ibp_IncomeTaxLineItems" abstract="true" name="IncomeTaxLineItems" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsTable" abstract="true" name="FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsTable" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrldt:hypercubeItem" type="xbrli:stringItemType"/>
  <xs:element id="ibp_GeneralLiabilityInsuranceProgramMember" abstract="true" name="GeneralLiabilityInsuranceProgramMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_CustomerInstallationMember" abstract="true" name="CustomerInstallationMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_WindowBlindsMember" abstract="true" name="WindowBlindsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_InterestRateSwapThreeEffectiveDecember312021Member" abstract="true" name="InterestRateSwapThreeEffectiveDecember312021Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_VehiclesInsuranceMember" abstract="true" name="VehiclesInsuranceMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_OtherLiabilitiesPolicyTextBlock" abstract="false" name="OtherLiabilitiesPolicyTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <xs:element id="ibp_OtherBuildingProductsMember" abstract="true" name="OtherBuildingProductsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_PerformanceBasedStockUnitsMember" abstract="true" name="PerformanceBasedStockUnitsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnEarnoutLiability" abstract="false" name="FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnEarnoutLiability" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_InterestRateSwapFourEffectiveDecember312025Member" abstract="true" name="InterestRateSwapFourEffectiveDecember312025Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_AccountingPoliciesAndGeneralInformationTable" abstract="true" name="AccountingPoliciesAndGeneralInformationTable" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrldt:hypercubeItem" type="xbrli:stringItemType"/>
  <xs:element id="ibp_InterestRateSwapFiveEffectiveDecember312025Member" abstract="true" name="InterestRateSwapFiveEffectiveDecember312025Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_CostsIncurredOnUncompletedContracts" abstract="false" name="CostsIncurredOnUncompletedContracts" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_DebtInstrumentCovenantMarketCapitalizationThreshold" abstract="false" name="DebtInstrumentCovenantMarketCapitalizationThreshold" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <xs:element id="ibp_InstallationSegmentMember" abstract="true" name="InstallationSegmentMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax" abstract="false" name="OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_DenisonGlassAndMirrorMember" abstract="true" name="DenisonGlassAndMirrorMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_InsuranceReceivableForClaimsExceedingStopLossLimit" abstract="false" name="InsuranceReceivableForClaimsExceedingStopLossLimit" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_InsulationMember" abstract="true" name="InsulationMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_DebtRelatedFinancingCost" abstract="false" name="DebtRelatedFinancingCost" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_MasterLoanAgreementMember" abstract="true" name="MasterLoanAgreementMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" abstract="false" name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_OtherProductInstallationMember" abstract="true" name="OtherProductInstallationMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_ScheduleOfAccruedInsuranceReservesTableTextBlock" abstract="false" name="ScheduleOfAccruedInsuranceReservesTableTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <xs:element id="ibp_LeaseAssets" abstract="false" name="LeaseAssets" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_EstimatedEarningsOnLongTermContracts" abstract="false" name="EstimatedEarningsOnLongTermContracts" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness" abstract="false" name="SellerObligationsInConnectionWithAcquisitionOfBusiness" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_NorkoteMember" abstract="true" name="NorkoteMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_ProceedsFromTerminationOfDerivativeInstruments" abstract="false" name="ProceedsFromTerminationOfDerivativeInstruments" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_UnrecognizedTaxBenefitsNetOfIncomeTaxPenaltiesAndInterestExpense" abstract="false" name="UnrecognizedTaxBenefitsNetOfIncomeTaxPenaltiesAndInterestExpense" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts" abstract="false" name="CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_ScheduleOfInsuranceLossReservesForInsuredObligationsTableTextBlock" abstract="false" name="ScheduleOfInsuranceLossReservesForInsuredObligationsTableTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <xs:element id="ibp_NonCurrentLeaseAssetsAbstract" abstract="true" name="NonCurrentLeaseAssetsAbstract" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="ibp_IncomeTaxExpenseBenefitOperatingLossCarryforwards" abstract="false" name="IncomeTaxExpenseBenefitOperatingLossCarryforwards" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_AssetsAndLiabilitiesLesseeTableTextBlock" abstract="false" name="AssetsAndLiabilitiesLesseeTableTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <xs:element id="ibp_TwoThousandTwentyOneAcquisitionsMember" abstract="true" name="TwoThousandTwentyOneAcquisitionsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_PerformanceBasedRestrictedStockUnitsMember" abstract="true" name="PerformanceBasedRestrictedStockUnitsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_SeniorSecuredCreditAgreementMember" abstract="true" name="SeniorSecuredCreditAgreementMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_IncomeTaxesLineItems" abstract="true" name="IncomeTaxesLineItems" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsLineItems" abstract="true" name="FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsLineItems" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="ibp_OtherPartyOperatingLeasesMember" abstract="true" name="OtherPartyOperatingLeasesMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_CurrentLeaseLiabilitiesAbstract" abstract="true" name="CurrentLeaseLiabilitiesAbstract" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityAccretionExpense" abstract="false" name="FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityAccretionExpense" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_RainGuttersMember" abstract="true" name="RainGuttersMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_SwapOffMarketTermsCapitalized" abstract="false" name="SwapOffMarketTermsCapitalized" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_IWMember" abstract="true" name="IWMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_CentralAluminumMember" abstract="true" name="CentralAluminumMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ibp_HealthInsuranceExpense" abstract="false" name="HealthInsuranceExpense" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ibp_CertainEmployeesMember" abstract="true" name="CertainEmployeesMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
</xs:schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>9
<FILENAME>ibp-20221231_cal.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with Wdesk from Workiva-->
<!--Copyright 2023 Workiva-->
<!--r:a3e4206c-1cfd-4e6c-927f-ccbea40704ec,g:8e7b03d8-eedd-4de2-8abd-33b4866ed975-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS" xlink:type="simple" xlink:href="ibp-20221231.xsd#CONSOLIDATEDBALANCESHEETS"/>
  <link:calculationLink xlink:role="http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Liabilities_2ca51e3e-ae17-4700-8565-2a8f9d47d85e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Liabilities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_dc2e7589-1210-47ee-b5df-42a1c701e601" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities_2ca51e3e-ae17-4700-8565-2a8f9d47d85e" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_dc2e7589-1210-47ee-b5df-42a1c701e601" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherLiabilitiesNoncurrent_55abecbf-148b-437f-a8a9-123bc55ede77" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherLiabilitiesNoncurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities_2ca51e3e-ae17-4700-8565-2a8f9d47d85e" xlink:to="loc_us-gaap_OtherLiabilitiesNoncurrent_55abecbf-148b-437f-a8a9-123bc55ede77" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityNoncurrent_3a0c08d8-ca8a-4679-a0b7-40ad65b71e4a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityNoncurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities_2ca51e3e-ae17-4700-8565-2a8f9d47d85e" xlink:to="loc_us-gaap_FinanceLeaseLiabilityNoncurrent_3a0c08d8-ca8a-4679-a0b7-40ad65b71e4a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_a70779a3-7756-4043-97ad-997e1135a1ed" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities_2ca51e3e-ae17-4700-8565-2a8f9d47d85e" xlink:to="loc_us-gaap_LiabilitiesCurrent_a70779a3-7756-4043-97ad-997e1135a1ed" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtNoncurrent_e3e67bdc-1a3f-4fd9-8d11-ad5554fcb898" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtNoncurrent"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities_2ca51e3e-ae17-4700-8565-2a8f9d47d85e" xlink:to="loc_us-gaap_LongTermDebtNoncurrent_e3e67bdc-1a3f-4fd9-8d11-ad5554fcb898" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_ced3bbf4-eff6-43ab-a727-d3ab34b48005" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities_2ca51e3e-ae17-4700-8565-2a8f9d47d85e" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_ced3bbf4-eff6-43ab-a727-d3ab34b48005" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_597a89b6-927d-4049-926f-109027f7020a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_d7e09b04-754b-43fe-962a-e378a1014aba" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_597a89b6-927d-4049-926f-109027f7020a" xlink:to="loc_us-gaap_StockholdersEquity_d7e09b04-754b-43fe-962a-e378a1014aba" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Liabilities_8d148181-c7bf-4b99-a3a8-503a3ba9fa08" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Liabilities"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_597a89b6-927d-4049-926f-109027f7020a" xlink:to="loc_us-gaap_Liabilities_8d148181-c7bf-4b99-a3a8-503a3ba9fa08" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingencies_a32253b1-3a9d-415d-a33f-6bac96219bea" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingencies"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_597a89b6-927d-4049-926f-109027f7020a" xlink:to="loc_us-gaap_CommitmentsAndContingencies_a32253b1-3a9d-415d-a33f-6bac96219bea" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_398433c9-eed7-4563-ab9e-5f8ba68e35db" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Assets"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_fc409475-b882-4cdc-951f-31a307cf9a26" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_398433c9-eed7-4563-ab9e-5f8ba68e35db" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_fc409475-b882-4cdc-951f-31a307cf9a26" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_c9bf3913-0661-49e7-a972-5c3e58713ff2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_398433c9-eed7-4563-ab9e-5f8ba68e35db" xlink:to="loc_us-gaap_Goodwill_c9bf3913-0661-49e7-a972-5c3e58713ff2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_a1da05b4-2546-4d12-9189-2f2edf2805dd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_398433c9-eed7-4563-ab9e-5f8ba68e35db" xlink:to="loc_us-gaap_AssetsCurrent_a1da05b4-2546-4d12-9189-2f2edf2805dd" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsNoncurrent_ab5a32f0-1910-4bc4-a62f-a6f7d10725b2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAssetsNoncurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_398433c9-eed7-4563-ab9e-5f8ba68e35db" xlink:to="loc_us-gaap_OtherAssetsNoncurrent_ab5a32f0-1910-4bc4-a62f-a6f7d10725b2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_c14a22db-135f-4d39-8149-ff1ced232dba" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_398433c9-eed7-4563-ab9e-5f8ba68e35db" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_c14a22db-135f-4d39-8149-ff1ced232dba" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_697535ff-6b5f-44a0-b09e-61c16c272d92" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_398433c9-eed7-4563-ab9e-5f8ba68e35db" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_697535ff-6b5f-44a0-b09e-61c16c272d92" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_84ddef8b-ce43-41c1-88cf-0041cb7d611c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockValue_eaed7f81-2991-42ef-a470-2e552044c13c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockValue"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_84ddef8b-ce43-41c1-88cf-0041cb7d611c" xlink:to="loc_us-gaap_CommonStockValue_eaed7f81-2991-42ef-a470-2e552044c13c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock_abd02c8d-1047-4d71-aded-0edf2236bd93" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapitalCommonStock"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_84ddef8b-ce43-41c1-88cf-0041cb7d611c" xlink:to="loc_us-gaap_AdditionalPaidInCapitalCommonStock_abd02c8d-1047-4d71-aded-0edf2236bd93" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_7bc19702-37ec-4600-b4f3-73946cdf51b6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_84ddef8b-ce43-41c1-88cf-0041cb7d611c" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_7bc19702-37ec-4600-b4f3-73946cdf51b6" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockCommonValue_17821e34-2d14-473a-831c-3eb94f3c2804" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockCommonValue"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_84ddef8b-ce43-41c1-88cf-0041cb7d611c" xlink:to="loc_us-gaap_TreasuryStockCommonValue_17821e34-2d14-473a-831c-3eb94f3c2804" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_750884ce-0f7f-405c-9635-299e3c4dc825" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_84ddef8b-ce43-41c1-88cf-0041cb7d611c" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_750884ce-0f7f-405c-9635-299e3c4dc825" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockValue_fc41304d-7ff2-4fc6-9475-49660c9c844d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockValue"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_84ddef8b-ce43-41c1-88cf-0041cb7d611c" xlink:to="loc_us-gaap_PreferredStockValue_fc41304d-7ff2-4fc6-9475-49660c9c844d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_f4853248-6184-4077-bb60-cc9e9af5197a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherLiabilitiesCurrent_7c6a82ca-9a8c-40f7-95f9-9c62477a448a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherLiabilitiesCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_f4853248-6184-4077-bb60-cc9e9af5197a" xlink:to="loc_us-gaap_OtherLiabilitiesCurrent_7c6a82ca-9a8c-40f7-95f9-9c62477a448a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_a11e0b69-7ac8-48b0-9659-ad3f81344fcd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_f4853248-6184-4077-bb60-cc9e9af5197a" xlink:to="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_a11e0b69-7ac8-48b0-9659-ad3f81344fcd" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableCurrent_7e9f2471-6bd0-452d-8c2d-a213bb665cd7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableCurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_f4853248-6184-4077-bb60-cc9e9af5197a" xlink:to="loc_us-gaap_AccountsPayableCurrent_7e9f2471-6bd0-452d-8c2d-a213bb665cd7" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtCurrent_3885cdeb-6bcc-4bbb-a9db-33b59d804b6a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtCurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_f4853248-6184-4077-bb60-cc9e9af5197a" xlink:to="loc_us-gaap_LongTermDebtCurrent_3885cdeb-6bcc-4bbb-a9db-33b59d804b6a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityCurrent_8b31e1f8-5c92-43de-85b3-11bc82b2a01f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityCurrent"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_f4853248-6184-4077-bb60-cc9e9af5197a" xlink:to="loc_us-gaap_FinanceLeaseLiabilityCurrent_8b31e1f8-5c92-43de-85b3-11bc82b2a01f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_d5c09eaf-13bc-480b-8b40-61815ba71955" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_f4853248-6184-4077-bb60-cc9e9af5197a" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_d5c09eaf-13bc-480b-8b40-61815ba71955" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_cd294093-1f59-4935-a2ca-0b5f6daeadea" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_b2a9372e-33a5-4b30-85ea-b9a06b362a46" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_cd294093-1f59-4935-a2ca-0b5f6daeadea" xlink:to="loc_us-gaap_InventoryNet_b2a9372e-33a5-4b30-85ea-b9a06b362a46" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_c734af16-2474-44df-b574-50e9ba290803" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_cd294093-1f59-4935-a2ca-0b5f6daeadea" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_c734af16-2474-44df-b574-50e9ba290803" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_deac7b7a-4f13-4271-9063-4e1a4a0cfa23" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_cd294093-1f59-4935-a2ca-0b5f6daeadea" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_deac7b7a-4f13-4271-9063-4e1a4a0cfa23" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_c1e405a7-84d9-4a92-b2bc-005c087da7ba" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_cd294093-1f59-4935-a2ca-0b5f6daeadea" xlink:to="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_c1e405a7-84d9-4a92-b2bc-005c087da7ba" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME" xlink:type="simple" xlink:href="ibp-20221231.xsd#CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME"/>
  <link:calculationLink xlink:role="http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax_e9fe003d-06da-480b-aff4-3ead3f37dd64" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_32465114-dd1b-4a44-82f4-d0df79e61e08" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax_e9fe003d-06da-480b-aff4-3ead3f37dd64" xlink:to="loc_us-gaap_NetIncomeLoss_32465114-dd1b-4a44-82f4-d0df79e61e08" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax_ea49c89d-3d2a-48fd-9df5-84281fe5b186" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax_e9fe003d-06da-480b-aff4-3ead3f37dd64" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax_ea49c89d-3d2a-48fd-9df5-84281fe5b186" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_2fef5e4d-c4a9-4573-aab1-105b5224dbf1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_7019c554-ba3b-4996-bd8a-dd12f05cf05e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss_2fef5e4d-c4a9-4573-aab1-105b5224dbf1" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_7019c554-ba3b-4996-bd8a-dd12f05cf05e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_2607aaf8-0656-499c-9ec9-509f09a4be84" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss_2fef5e4d-c4a9-4573-aab1-105b5224dbf1" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_2607aaf8-0656-499c-9ec9-509f09a4be84" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_ef1c8f0c-07f8-42b1-9d54-4ea9edbe77a3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GrossProfit"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_489f5a8c-0e82-4f9c-b4e1-21a782c16e43" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_GrossProfit_ef1c8f0c-07f8-42b1-9d54-4ea9edbe77a3" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_489f5a8c-0e82-4f9c-b4e1-21a782c16e43" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_a2a3981c-94a9-4ec5-825a-55d95a49279b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_GrossProfit_ef1c8f0c-07f8-42b1-9d54-4ea9edbe77a3" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_a2a3981c-94a9-4ec5-825a-55d95a49279b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_ed098baa-7a90-4061-85c0-dd6fae3bde8e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_c386af6c-1b67-467a-aa81-078663fad5c7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GrossProfit"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_ed098baa-7a90-4061-85c0-dd6fae3bde8e" xlink:to="loc_us-gaap_GrossProfit_c386af6c-1b67-467a-aa81-078663fad5c7" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingExpense_994d06c8-8e26-4d90-ba8b-ecaf62dcc870" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingExpense"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_ed098baa-7a90-4061-85c0-dd6fae3bde8e" xlink:to="loc_us-gaap_SellingExpense_994d06c8-8e26-4d90-ba8b-ecaf62dcc870" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpense_497f497f-e25a-4cb6-bb7b-7457dafc38a3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GeneralAndAdministrativeExpense"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_ed098baa-7a90-4061-85c0-dd6fae3bde8e" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpense_497f497f-e25a-4cb6-bb7b-7457dafc38a3" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets_ed2a6c2e-8825-4d30-8874-a8b76b145c3a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfIntangibleAssets"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_ed098baa-7a90-4061-85c0-dd6fae3bde8e" xlink:to="loc_us-gaap_AmortizationOfIntangibleAssets_ed2a6c2e-8825-4d30-8874-a8b76b145c3a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_554aae75-b553-4cd4-b78d-3a4749082fdf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1"/>
    <link:calculationArc order="5" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_ed098baa-7a90-4061-85c0-dd6fae3bde8e" xlink:to="loc_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_554aae75-b553-4cd4-b78d-3a4749082fdf" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_19465ca3-0fe8-46ba-addb-03c78bc1ed69" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_18d8b9ee-c544-45a6-80d0-6d48fb96586c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_19465ca3-0fe8-46ba-addb-03c78bc1ed69" xlink:to="loc_us-gaap_OperatingIncomeLoss_18d8b9ee-c544-45a6-80d0-6d48fb96586c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestExpense_58f2a703-6eab-453b-8d2d-e2b7a8ec4a79" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestExpense"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_19465ca3-0fe8-46ba-addb-03c78bc1ed69" xlink:to="loc_us-gaap_InterestExpense_58f2a703-6eab-453b-8d2d-e2b7a8ec4a79" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_2d0f312b-2fbe-44ec-9f1b-03c8b9cb2455" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNonoperatingIncomeExpense"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_19465ca3-0fe8-46ba-addb-03c78bc1ed69" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpense_2d0f312b-2fbe-44ec-9f1b-03c8b9cb2455" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" xlink:type="simple" xlink:href="ibp-20221231.xsd#CONSOLIDATEDSTATEMENTSOFCASHFLOWS"/>
  <link:calculationLink xlink:role="http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_051a5696-6690-4518-a8e1-8ed8fa86b791" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_eb014edd-de3a-42a1-9ace-d15a63c809b3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_051a5696-6690-4518-a8e1-8ed8fa86b791" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_eb014edd-de3a-42a1-9ace-d15a63c809b3" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireInvestments_3463394b-8782-4120-86fb-d9d03f21216d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireInvestments"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_051a5696-6690-4518-a8e1-8ed8fa86b791" xlink:to="loc_us-gaap_PaymentsToAcquireInvestments_3463394b-8782-4120-86fb-d9d03f21216d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_e0a33973-76e4-425c-959b-35e068a7411f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsForProceedsFromOtherInvestingActivities"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_051a5696-6690-4518-a8e1-8ed8fa86b791" xlink:to="loc_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_e0a33973-76e4-425c-959b-35e068a7411f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_0d1770c0-7116-4021-8561-f1a0e0b606e3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_051a5696-6690-4518-a8e1-8ed8fa86b791" xlink:to="loc_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_0d1770c0-7116-4021-8561-f1a0e0b606e3" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_0ce75c9c-c506-49bc-9a7c-fa570f2aaff2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:calculationArc order="5" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_051a5696-6690-4518-a8e1-8ed8fa86b791" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_0ce75c9c-c506-49bc-9a7c-fa570f2aaff2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromSaleOfShortTermInvestments_2254bfc8-f52a-4937-8233-d5a127914564" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromSaleOfShortTermInvestments"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_051a5696-6690-4518-a8e1-8ed8fa86b791" xlink:to="loc_us-gaap_ProceedsFromSaleOfShortTermInvestments_2254bfc8-f52a-4937-8233-d5a127914564" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_1077c722-a9ae-4022-af8c-359d96a73277" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfMediumTermNotes_c0f92b8f-9e01-422e-918d-be72259a0754" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RepaymentsOfMediumTermNotes"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_1077c722-a9ae-4022-af8c-359d96a73277" xlink:to="loc_us-gaap_RepaymentsOfMediumTermNotes_c0f92b8f-9e01-422e-918d-be72259a0754" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfDebtIssuanceCosts_cad65f8d-8147-4854-b6ad-0c2eb35bed4b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfDebtIssuanceCosts"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_1077c722-a9ae-4022-af8c-359d96a73277" xlink:to="loc_us-gaap_PaymentsOfDebtIssuanceCosts_cad65f8d-8147-4854-b6ad-0c2eb35bed4b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_SurrenderOfCommonStockAwardsByEmployees_007cc0b7-a6c6-4fb5-b130-9be81e5f6ef7" xlink:href="ibp-20221231.xsd#ibp_SurrenderOfCommonStockAwardsByEmployees"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_1077c722-a9ae-4022-af8c-359d96a73277" xlink:to="loc_ibp_SurrenderOfCommonStockAwardsByEmployees_007cc0b7-a6c6-4fb5-b130-9be81e5f6ef7" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeasePrincipalPayments_e9787415-6ec7-4c2e-8058-426e1591794d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeasePrincipalPayments"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_1077c722-a9ae-4022-af8c-359d96a73277" xlink:to="loc_us-gaap_FinanceLeasePrincipalPayments_e9787415-6ec7-4c2e-8058-426e1591794d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromNotesPayable_a2ec59ba-2080-49a7-bced-112b14b22998" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromNotesPayable"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_1077c722-a9ae-4022-af8c-359d96a73277" xlink:to="loc_us-gaap_ProceedsFromNotesPayable_a2ec59ba-2080-49a7-bced-112b14b22998" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfOtherLongTermDebt_3503baaf-978f-4958-a6e5-f8dac52c5acb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RepaymentsOfOtherLongTermDebt"/>
    <link:calculationArc order="6" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_1077c722-a9ae-4022-af8c-359d96a73277" xlink:to="loc_us-gaap_RepaymentsOfOtherLongTermDebt_3503baaf-978f-4958-a6e5-f8dac52c5acb" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfDividends_4bfcaf9f-b68e-489f-833c-ec23b9264c89" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfDividends"/>
    <link:calculationArc order="7" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_1077c722-a9ae-4022-af8c-359d96a73277" xlink:to="loc_us-gaap_PaymentsOfDividends_4bfcaf9f-b68e-489f-833c-ec23b9264c89" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_dc7a740c-0120-4afc-9a72-07c8eca812af" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock"/>
    <link:calculationArc order="8" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_1077c722-a9ae-4022-af8c-359d96a73277" xlink:to="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_dc7a740c-0120-4afc-9a72-07c8eca812af" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfMergerRelatedCostsFinancingActivities_0a105d44-80a6-4c99-a8fe-f8aa51e08adb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfMergerRelatedCostsFinancingActivities"/>
    <link:calculationArc order="9" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_1077c722-a9ae-4022-af8c-359d96a73277" xlink:to="loc_us-gaap_PaymentsOfMergerRelatedCostsFinancingActivities_0a105d44-80a6-4c99-a8fe-f8aa51e08adb" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfMediumTermNotes_855d939f-7a23-4093-bd1d-c0ee562eeff3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfMediumTermNotes"/>
    <link:calculationArc order="10" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_1077c722-a9ae-4022-af8c-359d96a73277" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfMediumTermNotes_855d939f-7a23-4093-bd1d-c0ee562eeff3" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_7638d05e-141b-4cc0-b915-41e914f24a3a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_0996b1a6-426c-469a-a31b-edd5534b625e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_7638d05e-141b-4cc0-b915-41e914f24a3a" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_0996b1a6-426c-469a-a31b-edd5534b625e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_98647505-6a96-4b2f-b86d-3d91f12585d3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_7638d05e-141b-4cc0-b915-41e914f24a3a" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_98647505-6a96-4b2f-b86d-3d91f12585d3" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_2f65ce85-a64a-4172-b07b-5c0eb9ae65a7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_7638d05e-141b-4cc0-b915-41e914f24a3a" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_2f65ce85-a64a-4172-b07b-5c0eb9ae65a7" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_4f3057fa-fcde-47ea-89f7-ccf32eddd02f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfFinancingCostsAndDiscounts_277afb2a-3600-4e68-b5bc-08bebbb80d5f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfFinancingCostsAndDiscounts"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_4f3057fa-fcde-47ea-89f7-ccf32eddd02f" xlink:to="loc_us-gaap_AmortizationOfFinancingCostsAndDiscounts_277afb2a-3600-4e68-b5bc-08bebbb80d5f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnDispositionOfAssets_04087a68-1e98-42f5-ae6e-c499ea6f1239" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnDispositionOfAssets"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_4f3057fa-fcde-47ea-89f7-ccf32eddd02f" xlink:to="loc_us-gaap_GainLossOnDispositionOfAssets_04087a68-1e98-42f5-ae6e-c499ea6f1239" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets_61f9cf1b-756b-47bd-8518-8c851edf0ee2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfIntangibleAssets"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_4f3057fa-fcde-47ea-89f7-ccf32eddd02f" xlink:to="loc_us-gaap_AmortizationOfIntangibleAssets_61f9cf1b-756b-47bd-8518-8c851edf0ee2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensation_b09ce7f2-004a-487f-a3e1-ec245a7a1a52" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensation"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_4f3057fa-fcde-47ea-89f7-ccf32eddd02f" xlink:to="loc_us-gaap_ShareBasedCompensation_b09ce7f2-004a-487f-a3e1-ec245a7a1a52" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxesAndTaxCredits_131a9a1b-9a2a-4bef-a58c-fba734283ffd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxesAndTaxCredits"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_4f3057fa-fcde-47ea-89f7-ccf32eddd02f" xlink:to="loc_us-gaap_DeferredIncomeTaxesAndTaxCredits_131a9a1b-9a2a-4bef-a58c-fba734283ffd" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_f8d94edd-c0bb-41f1-8e55-f85fef3b2688" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:calculationArc order="6" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_4f3057fa-fcde-47ea-89f7-ccf32eddd02f" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_f8d94edd-c0bb-41f1-8e55-f85fef3b2688" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets_d2e7090c-a5d2-4a64-8058-4aeaf496f374" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets"/>
    <link:calculationArc order="7" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_4f3057fa-fcde-47ea-89f7-ccf32eddd02f" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets_d2e7090c-a5d2-4a64-8058-4aeaf496f374" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationAndAmortization_66ba08d3-ff97-44d5-85c0-8a37bf0f40ec" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DepreciationAndAmortization"/>
    <link:calculationArc order="8" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_4f3057fa-fcde-47ea-89f7-ccf32eddd02f" xlink:to="loc_us-gaap_DepreciationAndAmortization_66ba08d3-ff97-44d5-85c0-8a37bf0f40ec" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense_78c02e22-517f-4a6b-8a82-99d0da2090c1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense"/>
    <link:calculationArc order="9" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_4f3057fa-fcde-47ea-89f7-ccf32eddd02f" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense_78c02e22-517f-4a6b-8a82-99d0da2090c1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable_fd49c96f-90e3-4ebc-a69d-1a2eafcc4e1f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsPayable"/>
    <link:calculationArc order="10" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_4f3057fa-fcde-47ea-89f7-ccf32eddd02f" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayable_fd49c96f-90e3-4ebc-a69d-1a2eafcc4e1f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WriteOffOfDeferredDebtIssuanceCost_421f3802-8c4a-40b9-86a1-38d49b905869" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WriteOffOfDeferredDebtIssuanceCost"/>
    <link:calculationArc order="11" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_4f3057fa-fcde-47ea-89f7-ccf32eddd02f" xlink:to="loc_us-gaap_WriteOffOfDeferredDebtIssuanceCost_421f3802-8c4a-40b9-86a1-38d49b905869" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNoncashIncomeExpense_c910dd6a-1013-4361-9009-d79bbe8c6db5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNoncashIncomeExpense"/>
    <link:calculationArc order="12" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_4f3057fa-fcde-47ea-89f7-ccf32eddd02f" xlink:to="loc_us-gaap_OtherNoncashIncomeExpense_c910dd6a-1013-4361-9009-d79bbe8c6db5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories_7a9707e0-df9d-4799-b2e4-040e18a6c51f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInInventories"/>
    <link:calculationArc order="13" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_4f3057fa-fcde-47ea-89f7-ccf32eddd02f" xlink:to="loc_us-gaap_IncreaseDecreaseInInventories_7a9707e0-df9d-4799-b2e4-040e18a6c51f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInIncomeTaxes_96f051ae-255d-4444-8731-683ea8987374" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInIncomeTaxes"/>
    <link:calculationArc order="14" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_4f3057fa-fcde-47ea-89f7-ccf32eddd02f" xlink:to="loc_us-gaap_IncreaseDecreaseInIncomeTaxes_96f051ae-255d-4444-8731-683ea8987374" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProfitLoss_1e5731a7-e973-4a4d-8b92-617d7531e20b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProfitLoss"/>
    <link:calculationArc order="15" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_4f3057fa-fcde-47ea-89f7-ccf32eddd02f" xlink:to="loc_us-gaap_ProfitLoss_1e5731a7-e973-4a4d-8b92-617d7531e20b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingLiabilities_0138bfaa-dafc-40f1-8d2c-4c16aed48095" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOtherOperatingLiabilities"/>
    <link:calculationArc order="16" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_4f3057fa-fcde-47ea-89f7-ccf32eddd02f" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherOperatingLiabilities_0138bfaa-dafc-40f1-8d2c-4c16aed48095" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts_991b2186-6306-4319-a3b0-8177d9901e73" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProvisionForDoubtfulAccounts"/>
    <link:calculationArc order="17" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_4f3057fa-fcde-47ea-89f7-ccf32eddd02f" xlink:to="loc_us-gaap_ProvisionForDoubtfulAccounts_991b2186-6306-4319-a3b0-8177d9901e73" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_fbeb8b8d-2b0e-44cb-b790-45df8dce6417" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1"/>
    <link:calculationArc order="18" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_4f3057fa-fcde-47ea-89f7-ccf32eddd02f" xlink:to="loc_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_fbeb8b8d-2b0e-44cb-b790-45df8dce6417" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_ProceedsFromTerminationOfDerivativeInstruments_179f3f1e-8cb2-4ce0-ba9a-7860c7b02d31" xlink:href="ibp-20221231.xsd#ibp_ProceedsFromTerminationOfDerivativeInstruments"/>
    <link:calculationArc order="19" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_4f3057fa-fcde-47ea-89f7-ccf32eddd02f" xlink:to="loc_ibp_ProceedsFromTerminationOfDerivativeInstruments_179f3f1e-8cb2-4ce0-ba9a-7860c7b02d31" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofCostandEstimatedEarningsonUncompletedContractsDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#RevenueRecognitionScheduleofCostandEstimatedEarningsonUncompletedContractsDetail"/>
  <link:calculationLink xlink:role="http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofCostandEstimatedEarningsonUncompletedContractsDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReceivablesLongTermContractsOrPrograms_b3fd58d1-6edc-4219-990a-4a08177ebceb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReceivablesLongTermContractsOrPrograms"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CostsIncurredOnUncompletedContracts_22c556a3-a1b1-4492-99b5-ae5a16fafec4" xlink:href="ibp-20221231.xsd#ibp_CostsIncurredOnUncompletedContracts"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ReceivablesLongTermContractsOrPrograms_b3fd58d1-6edc-4219-990a-4a08177ebceb" xlink:to="loc_ibp_CostsIncurredOnUncompletedContracts_22c556a3-a1b1-4492-99b5-ae5a16fafec4" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_EstimatedEarningsOnLongTermContracts_aa56cdbe-7cb2-4ef2-aab5-12d38602ab1b" xlink:href="ibp-20221231.xsd#ibp_EstimatedEarningsOnLongTermContracts"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ReceivablesLongTermContractsOrPrograms_b3fd58d1-6edc-4219-990a-4a08177ebceb" xlink:to="loc_ibp_EstimatedEarningsOnLongTermContracts_aa56cdbe-7cb2-4ef2-aab5-12d38602ab1b" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofNetUnderOverBillingsDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#RevenueRecognitionScheduleofNetUnderOverBillingsDetail"/>
  <link:calculationLink xlink:role="http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofNetUnderOverBillingsDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CostAndEstimatedEarningsUnderOverBillingsNet_71b7825a-a80a-4b24-a004-8fff14aa71f8" xlink:href="ibp-20221231.xsd#ibp_CostAndEstimatedEarningsUnderOverBillingsNet"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts_b48f6fbd-bc72-4c6c-835a-c01822088cbc" xlink:href="ibp-20221231.xsd#ibp_CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_ibp_CostAndEstimatedEarningsUnderOverBillingsNet_71b7825a-a80a-4b24-a004-8fff14aa71f8" xlink:to="loc_ibp_CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts_b48f6fbd-bc72-4c6c-835a-c01822088cbc" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_BillingsInExcessOfCostOnUncompletedContracts_80bdf13c-12eb-4adb-9b27-75bb7ebc0ef9" xlink:href="ibp-20221231.xsd#ibp_BillingsInExcessOfCostOnUncompletedContracts"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_ibp_CostAndEstimatedEarningsUnderOverBillingsNet_71b7825a-a80a-4b24-a004-8fff14aa71f8" xlink:to="loc_ibp_BillingsInExcessOfCostOnUncompletedContracts_80bdf13c-12eb-4adb-9b27-75bb7ebc0ef9" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#PropertyandEquipmentScheduleofPropertyandEquipmentDetails"/>
  <link:calculationLink xlink:role="http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_010777b8-3809-4789-a417-35b3c4d630eb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_4efba822-36c0-456d-80e1-edb444c7e11c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_010777b8-3809-4789-a417-35b3c4d630eb" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_4efba822-36c0-456d-80e1-edb444c7e11c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization_489517b3-6ff0-4627-8061-4e4cf8cff009" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_010777b8-3809-4789-a417-35b3c4d630eb" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization_489517b3-6ff0-4627-8061-4e4cf8cff009" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails"/>
  <link:calculationLink xlink:role="http://installedbuildingproducts.com/role/GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_0d2bb06c-556a-45b0-ab35-b081e64d876d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillGross_1cb7098b-56c9-4d58-9b3f-1cb353186cb6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillGross"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Goodwill_0d2bb06c-556a-45b0-ab35-b081e64d876d" xlink:to="loc_us-gaap_GoodwillGross_1cb7098b-56c9-4d58-9b3f-1cb353186cb6" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillImpairedAccumulatedImpairmentLoss_9387593d-3604-49d2-a6ec-1c2bbbecc1ce" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillImpairedAccumulatedImpairmentLoss"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Goodwill_0d2bb06c-556a-45b0-ab35-b081e64d876d" xlink:to="loc_us-gaap_GoodwillImpairedAccumulatedImpairmentLoss_9387593d-3604-49d2-a6ec-1c2bbbecc1ce" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails"/>
  <link:calculationLink xlink:role="http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_50e600ac-ae9a-4a26-95c5-f7aad79fd974" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_4fd94d7e-6d9b-4466-beed-8ccc5b166a6a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsGross"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_50e600ac-ae9a-4a26-95c5-f7aad79fd974" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_4fd94d7e-6d9b-4466-beed-8ccc5b166a6a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_24c47281-f4d3-41b5-a582-300d2ebf073b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_50e600ac-ae9a-4a26-95c5-f7aad79fd974" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_24c47281-f4d3-41b5-a582-300d2ebf073b" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/LongtermDebtScheduleofDebtDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#LongtermDebtScheduleofDebtDetail"/>
  <link:calculationLink xlink:role="http://installedbuildingproducts.com/role/LongtermDebtScheduleofDebtDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebt_38f393b3-6f8a-4ae0-bc77-8f5d7402303b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebt"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtNoncurrent_9ed3f022-775d-4d7f-bc1a-279ae25bcdd4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtNoncurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LongTermDebt_38f393b3-6f8a-4ae0-bc77-8f5d7402303b" xlink:to="loc_us-gaap_LongTermDebtNoncurrent_9ed3f022-775d-4d7f-bc1a-279ae25bcdd4" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtCurrent_f73c12cd-a1ce-4c31-8e72-7a449879c0ad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LongTermDebt_38f393b3-6f8a-4ae0-bc77-8f5d7402303b" xlink:to="loc_us-gaap_LongTermDebtCurrent_f73c12cd-a1ce-4c31-8e72-7a449879c0ad" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails"/>
  <link:calculationLink xlink:role="http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_ibp_LeaseAssets_0cc60a2b-0371-49b4-b90b-913e8bdf14a7" xlink:href="ibp-20221231.xsd#ibp_LeaseAssets"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_f54019aa-518b-40ee-a516-51bca83ee3a6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_ibp_LeaseAssets_0cc60a2b-0371-49b4-b90b-913e8bdf14a7" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_f54019aa-518b-40ee-a516-51bca83ee3a6" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseRightOfUseAsset_7a664916-d67a-46e2-bc19-b95659287b64" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseRightOfUseAsset"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_ibp_LeaseAssets_0cc60a2b-0371-49b4-b90b-913e8bdf14a7" xlink:to="loc_us-gaap_FinanceLeaseRightOfUseAsset_7a664916-d67a-46e2-bc19-b95659287b64" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_LeaseLiabilities_4b951b07-8bc6-4fde-be0e-038e2c28409d" xlink:href="ibp-20221231.xsd#ibp_LeaseLiabilities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_0c2af0fa-5852-45ec-8026-247615f2c5e9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_ibp_LeaseLiabilities_4b951b07-8bc6-4fde-be0e-038e2c28409d" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_0c2af0fa-5852-45ec-8026-247615f2c5e9" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityNoncurrent_8776a2ff-bd86-44a7-9740-1838c41ee6d8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityNoncurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_ibp_LeaseLiabilities_4b951b07-8bc6-4fde-be0e-038e2c28409d" xlink:to="loc_us-gaap_FinanceLeaseLiabilityNoncurrent_8776a2ff-bd86-44a7-9740-1838c41ee6d8" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_044756e2-5bab-47b7-bfa5-ceab27aa3e24" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_ibp_LeaseLiabilities_4b951b07-8bc6-4fde-be0e-038e2c28409d" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_044756e2-5bab-47b7-bfa5-ceab27aa3e24" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityCurrent_11dfe3fe-96f0-480d-a9f4-994e24f95c36" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityCurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_ibp_LeaseLiabilities_4b951b07-8bc6-4fde-be0e-038e2c28409d" xlink:to="loc_us-gaap_FinanceLeaseLiabilityCurrent_11dfe3fe-96f0-480d-a9f4-994e24f95c36" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/LeasesLeaseCostFinanceandOperatingLeasesDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#LeasesLeaseCostFinanceandOperatingLeasesDetails"/>
  <link:calculationLink xlink:role="http://installedbuildingproducts.com/role/LeasesLeaseCostFinanceandOperatingLeasesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCost_dc22fe89-787f-488f-af23-7b8bd9ce081b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseCost"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseCost_c31f7fa0-18bb-4f28-af73-316ec150f309" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseCost"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LeaseCost_dc22fe89-787f-488f-af23-7b8bd9ce081b" xlink:to="loc_us-gaap_OperatingLeaseCost_c31f7fa0-18bb-4f28-af73-316ec150f309" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseRightOfUseAssetAmortization_e24a6f31-2252-400a-8622-138aa9affe0b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseRightOfUseAssetAmortization"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LeaseCost_dc22fe89-787f-488f-af23-7b8bd9ce081b" xlink:to="loc_us-gaap_FinanceLeaseRightOfUseAssetAmortization_e24a6f31-2252-400a-8622-138aa9affe0b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseInterestExpense_57b12ed0-8703-4562-af54-d7be7e3ab94b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseInterestExpense"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LeaseCost_dc22fe89-787f-488f-af23-7b8bd9ce081b" xlink:to="loc_us-gaap_FinanceLeaseInterestExpense_57b12ed0-8703-4562-af54-d7be7e3ab94b" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail"/>
  <link:calculationLink xlink:role="http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDue_b941a74a-5fc1-42f1-a65f-9eee3ae6c33d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDue"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive_b613fa80-a88c-463d-85cc-ee7ecc0acc1b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FinanceLeaseLiabilityPaymentsDue_b941a74a-5fc1-42f1-a65f-9eee3ae6c33d" xlink:to="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive_b613fa80-a88c-463d-85cc-ee7ecc0acc1b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree_9a4cad3f-3e96-4031-8daa-8ddd04a5d8f5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FinanceLeaseLiabilityPaymentsDue_b941a74a-5fc1-42f1-a65f-9eee3ae6c33d" xlink:to="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree_9a4cad3f-3e96-4031-8daa-8ddd04a5d8f5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive_4fdb866f-5a1d-4164-96f1-b3e288462a9f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FinanceLeaseLiabilityPaymentsDue_b941a74a-5fc1-42f1-a65f-9eee3ae6c33d" xlink:to="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive_4fdb866f-5a1d-4164-96f1-b3e288462a9f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths_c6657720-cc50-4eae-a61e-ee73446af31c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FinanceLeaseLiabilityPaymentsDue_b941a74a-5fc1-42f1-a65f-9eee3ae6c33d" xlink:to="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths_c6657720-cc50-4eae-a61e-ee73446af31c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour_539a3d4a-6ba9-4a57-ad56-59f0fb197cd2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FinanceLeaseLiabilityPaymentsDue_b941a74a-5fc1-42f1-a65f-9eee3ae6c33d" xlink:to="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour_539a3d4a-6ba9-4a57-ad56-59f0fb197cd2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo_86d1a16b-5788-46df-8b2a-32cdcab5310c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FinanceLeaseLiabilityPaymentsDue_b941a74a-5fc1-42f1-a65f-9eee3ae6c33d" xlink:to="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo_86d1a16b-5788-46df-8b2a-32cdcab5310c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability_7280c237-0636-4820-a37a-9b662376d07e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_9b122df5-627e-4799-827c-441a40db3f6f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingLeaseLiability_7280c237-0636-4820-a37a-9b662376d07e" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_9b122df5-627e-4799-827c-441a40db3f6f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_6f0eb092-7ac3-435b-a26d-9d807183e396" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingLeaseLiability_7280c237-0636-4820-a37a-9b662376d07e" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_6f0eb092-7ac3-435b-a26d-9d807183e396" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_d4a4d8a9-1d9e-48c8-a4a9-2d21b9f8a31b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_df9dafce-625c-41a6-b0d9-fd213272e673" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_d4a4d8a9-1d9e-48c8-a4a9-2d21b9f8a31b" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_df9dafce-625c-41a6-b0d9-fd213272e673" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_267b0896-1c81-4672-a55a-34b61a7b0a81" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_d4a4d8a9-1d9e-48c8-a4a9-2d21b9f8a31b" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_267b0896-1c81-4672-a55a-34b61a7b0a81" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_893e4f3b-dbd2-47cf-8fb2-2f8a37c8d97d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_d4a4d8a9-1d9e-48c8-a4a9-2d21b9f8a31b" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_893e4f3b-dbd2-47cf-8fb2-2f8a37c8d97d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_09d7f27f-57c9-49b5-84fa-20a81969e329" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_d4a4d8a9-1d9e-48c8-a4a9-2d21b9f8a31b" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_09d7f27f-57c9-49b5-84fa-20a81969e329" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_96242876-25ae-4a4f-b143-02a5d5f33978" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_d4a4d8a9-1d9e-48c8-a4a9-2d21b9f8a31b" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_96242876-25ae-4a4f-b143-02a5d5f33978" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_19fd6853-8dc0-410b-b6de-9b40133c0925" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_d4a4d8a9-1d9e-48c8-a4a9-2d21b9f8a31b" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_19fd6853-8dc0-410b-b6de-9b40133c0925" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiability_774b6e23-5b20-4ad8-b0ab-be279454b2b4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiability"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityCurrent_68361c96-bcd9-4b5c-ae07-4a786e35a474" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FinanceLeaseLiability_774b6e23-5b20-4ad8-b0ab-be279454b2b4" xlink:to="loc_us-gaap_FinanceLeaseLiabilityCurrent_68361c96-bcd9-4b5c-ae07-4a786e35a474" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityNoncurrent_968a2fb0-2938-48eb-89a3-94404c147f0b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityNoncurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FinanceLeaseLiability_774b6e23-5b20-4ad8-b0ab-be279454b2b4" xlink:to="loc_us-gaap_FinanceLeaseLiabilityNoncurrent_968a2fb0-2938-48eb-89a3-94404c147f0b" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail_1" xlink:type="simple" xlink:href="ibp-20221231.xsd#LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail_1"/>
  <link:calculationLink xlink:role="http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail_1" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDue_09e60c37-805d-4013-b739-c851cbba7897" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDue"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiability_42a23a6e-8f11-4735-abb0-99dc5338a60f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiability"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FinanceLeaseLiabilityPaymentsDue_09e60c37-805d-4013-b739-c851cbba7897" xlink:to="loc_us-gaap_FinanceLeaseLiability_42a23a6e-8f11-4735-abb0-99dc5338a60f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FinanceLeaseExecutoryCosts_e826611c-de6a-4377-a087-f160bc2da1ae" xlink:href="ibp-20221231.xsd#ibp_FinanceLeaseExecutoryCosts"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FinanceLeaseLiabilityPaymentsDue_09e60c37-805d-4013-b739-c851cbba7897" xlink:to="loc_ibp_FinanceLeaseExecutoryCosts_e826611c-de6a-4377-a087-f160bc2da1ae" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount_58520f3d-9ac3-49a9-b136-d14d253ce9f2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FinanceLeaseLiabilityPaymentsDue_09e60c37-805d-4013-b739-c851cbba7897" xlink:to="loc_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount_58520f3d-9ac3-49a9-b136-d14d253ce9f2" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail"/>
  <link:calculationLink xlink:role="http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsFairValueDisclosure_3773144b-36d0-420d-b63e-389bca7df8dc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsFairValueDisclosure"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsFairValueDisclosure_0ff7b61c-b511-48b9-88c3-b43bd86cce68" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsFairValueDisclosure"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsFairValueDisclosure_3773144b-36d0-420d-b63e-389bca7df8dc" xlink:to="loc_us-gaap_CashAndCashEquivalentsFairValueDisclosure_0ff7b61c-b511-48b9-88c3-b43bd86cce68" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeAssets_691e36dd-b7bb-4b7b-b77a-f301a33c9ea2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeAssets"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsFairValueDisclosure_3773144b-36d0-420d-b63e-389bca7df8dc" xlink:to="loc_us-gaap_DerivativeAssets_691e36dd-b7bb-4b7b-b77a-f301a33c9ea2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesFairValueDisclosure_89242146-a6b0-4bae-9f5b-34b704fe5282" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesFairValueDisclosure"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeLiabilities_7fd2fa12-1685-4289-a659-4709e6deb7c8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeLiabilities"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesFairValueDisclosure_89242146-a6b0-4bae-9f5b-34b704fe5282" xlink:to="loc_us-gaap_DerivativeLiabilities_7fd2fa12-1685-4289-a659-4709e6deb7c8" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationLiability_ae167601-9e9b-42bd-a9d8-1b28ce8087d8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationContingentConsiderationLiability"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesFairValueDisclosure_89242146-a6b0-4bae-9f5b-34b704fe5282" xlink:to="loc_us-gaap_BusinessCombinationContingentConsiderationLiability_ae167601-9e9b-42bd-a9d8-1b28ce8087d8" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/InformationonSegmentsDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#InformationonSegmentsDetails"/>
  <link:calculationLink xlink:role="http://installedbuildingproducts.com/role/InformationonSegmentsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_49c39c92-5063-4f3f-8e44-aaa8b162f263" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingExpenses_6c3d01b8-8d36-4f9f-bd37-c596868b9d50" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingExpenses"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_49c39c92-5063-4f3f-8e44-aaa8b162f263" xlink:to="loc_us-gaap_OperatingExpenses_6c3d01b8-8d36-4f9f-bd37-c596868b9d50" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_ed661ca9-8019-4328-b239-1cc8fa86f801" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GrossProfit"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_49c39c92-5063-4f3f-8e44-aaa8b162f263" xlink:to="loc_us-gaap_GrossProfit_ed661ca9-8019-4328-b239-1cc8fa86f801" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_ccc58b54-2d2f-470d-900b-f24c9e0e9192" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GrossProfit"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion_65a200c0-5274-4b4c-a75e-5f9516740b9e" xlink:href="ibp-20221231.xsd#ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_GrossProfit_ccc58b54-2d2f-470d-900b-f24c9e0e9192" xlink:to="loc_ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion_65a200c0-5274-4b4c-a75e-5f9516740b9e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization_039e5c77-bf5b-40c7-bb3b-5c96cdd95271" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DepreciationDepletionAndAmortization"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_GrossProfit_ccc58b54-2d2f-470d-900b-f24c9e0e9192" xlink:to="loc_us-gaap_DepreciationDepletionAndAmortization_039e5c77-bf5b-40c7-bb3b-5c96cdd95271" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion_337dfb3b-15d6-411f-85af-f39556d6990a" xlink:href="ibp-20221231.xsd#ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_c419d421-7a5d-45bc-a56b-07624368f6c5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion_337dfb3b-15d6-411f-85af-f39556d6990a" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_c419d421-7a5d-45bc-a56b-07624368f6c5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization_89abf473-07a0-4f35-b464-7c9fb67efd4f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion_337dfb3b-15d6-411f-85af-f39556d6990a" xlink:to="loc_us-gaap_CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization_89abf473-07a0-4f35-b464-7c9fb67efd4f" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofWorkersCompensationKnownClaimsandIBNRReservesDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#EmployeeBenefitsSummaryofWorkersCompensationKnownClaimsandIBNRReservesDetail"/>
  <link:calculationLink xlink:role="http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofWorkersCompensationKnownClaimsandIBNRReservesDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WorkersCompensationLiabilityCurrentAndNoncurrent_775c2416-2576-4769-a645-568fd7284da4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WorkersCompensationLiabilityCurrentAndNoncurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WorkersCompensationLiabilityCurrent_d4a5e72c-7f00-4576-974e-84dda68e17db" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WorkersCompensationLiabilityCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_WorkersCompensationLiabilityCurrentAndNoncurrent_775c2416-2576-4769-a645-568fd7284da4" xlink:to="loc_us-gaap_WorkersCompensationLiabilityCurrent_d4a5e72c-7f00-4576-974e-84dda68e17db" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WorkersCompensationLiabilityNoncurrent_952d01f7-9427-46e0-a118-461d93e5ab00" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WorkersCompensationLiabilityNoncurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_WorkersCompensationLiabilityCurrentAndNoncurrent_775c2416-2576-4769-a645-568fd7284da4" xlink:to="loc_us-gaap_WorkersCompensationLiabilityNoncurrent_952d01f7-9427-46e0-a118-461d93e5ab00" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/IncomeTaxesProvisionforIncomeTaxesDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#IncomeTaxesProvisionforIncomeTaxesDetail"/>
  <link:calculationLink xlink:role="http://installedbuildingproducts.com/role/IncomeTaxesProvisionforIncomeTaxesDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_61537dfe-fda5-4daa-8e9a-cf6cddaaa398" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_30359709-d667-4aef-a94e-506acae449ae" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_61537dfe-fda5-4daa-8e9a-cf6cddaaa398" xlink:to="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_30359709-d667-4aef-a94e-506acae449ae" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_dccac898-76fd-475b-9601-89011b8f535c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_61537dfe-fda5-4daa-8e9a-cf6cddaaa398" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_dccac898-76fd-475b-9601-89011b8f535c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_deaccc4e-dccb-4e05-b46c-2899a7b1d036" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentFederalTaxExpenseBenefit_908bbd46-c596-454e-898e-1e087b31a940" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentFederalTaxExpenseBenefit"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_deaccc4e-dccb-4e05-b46c-2899a7b1d036" xlink:to="loc_us-gaap_CurrentFederalTaxExpenseBenefit_908bbd46-c596-454e-898e-1e087b31a940" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_82700906-f4f8-4266-9878-9660425017c9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_deaccc4e-dccb-4e05-b46c-2899a7b1d036" xlink:to="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_82700906-f4f8-4266-9878-9660425017c9" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_cf5fd9ff-a233-4373-8b7d-5b50b096c6d1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredFederalIncomeTaxExpenseBenefit_c82d1a4d-1087-4bab-9554-a316ec2ae143" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredFederalIncomeTaxExpenseBenefit"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_cf5fd9ff-a233-4373-8b7d-5b50b096c6d1" xlink:to="loc_us-gaap_DeferredFederalIncomeTaxExpenseBenefit_c82d1a4d-1087-4bab-9554-a316ec2ae143" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_462d0f1b-cf12-46d8-8862-e35a2c1c2db6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_cf5fd9ff-a233-4373-8b7d-5b50b096c6d1" xlink:to="loc_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_462d0f1b-cf12-46d8-8862-e35a2c1c2db6" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail"/>
  <link:calculationLink xlink:role="http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_35e595a8-af82-46a5-b5eb-090d22855d41" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_26f46787-656b-4872-aa95-5f1416d678a3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_35e595a8-af82-46a5-b5eb-090d22855d41" xlink:to="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_26f46787-656b-4872-aa95-5f1416d678a3" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost_1246be38-f56c-4b60-9ca1-10eb9dfda6fd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_35e595a8-af82-46a5-b5eb-090d22855d41" xlink:to="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost_1246be38-f56c-4b60-9ca1-10eb9dfda6fd" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_2e301953-339f-4acc-87ab-39691a2caf4f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationOtherAdjustments"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_35e595a8-af82-46a5-b5eb-090d22855d41" xlink:to="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_2e301953-339f-4acc-87ab-39691a2caf4f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_5fd199fc-13a8-4669-b153-026764c87914" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_35e595a8-af82-46a5-b5eb-090d22855d41" xlink:to="loc_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_5fd199fc-13a8-4669-b153-026764c87914" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationTaxContingencies_5206f2da-7089-4121-b6e8-79a268932081" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationTaxContingencies"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_35e595a8-af82-46a5-b5eb-090d22855d41" xlink:to="loc_us-gaap_IncomeTaxReconciliationTaxContingencies_5206f2da-7089-4121-b6e8-79a268932081" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_e7f436cc-c475-4de9-9fa2-a14dfeca032f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_35e595a8-af82-46a5-b5eb-090d22855d41" xlink:to="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_e7f436cc-c475-4de9-9fa2-a14dfeca032f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_a6d27119-325d-4001-bc12-a75b1014c0fa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost_81b5ad83-9652-49aa-8225-cc133cebd925" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_a6d27119-325d-4001-bc12-a75b1014c0fa" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost_81b5ad83-9652-49aa-8225-cc133cebd925" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance_7d8ee316-614b-42c8-a3de-fb1f1b6288fc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_a6d27119-325d-4001-bc12-a75b1014c0fa" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance_7d8ee316-614b-42c8-a3de-fb1f1b6288fc" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationTaxContingencies_d7499fb5-e436-4b46-a3c6-b4a93c6f4d27" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationTaxContingencies"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_a6d27119-325d-4001-bc12-a75b1014c0fa" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationTaxContingencies_d7499fb5-e436-4b46-a3c6-b4a93c6f4d27" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_982b1a72-fda0-49a5-ad94-9396eba00dab" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_a6d27119-325d-4001-bc12-a75b1014c0fa" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_982b1a72-fda0-49a5-ad94-9396eba00dab" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_179a2d7e-a596-447d-903f-8230de89bddd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_a6d27119-325d-4001-bc12-a75b1014c0fa" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_179a2d7e-a596-447d-903f-8230de89bddd" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent_c11312a8-eea6-4233-bebf-7806dc467b3e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_a6d27119-325d-4001-bc12-a75b1014c0fa" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent_c11312a8-eea6-4233-bebf-7806dc467b3e" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail"/>
  <link:calculationLink xlink:role="http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsGross_6b3c0349-c19a-499c-9abf-7d0ebf14af81" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsGross"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsOther_c87aa882-3b17-4a37-ac72-2cd563509efb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOther"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_6b3c0349-c19a-499c-9abf-7d0ebf14af81" xlink:to="loc_us-gaap_DeferredTaxAssetsOther_c87aa882-3b17-4a37-ac72-2cd563509efb" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsInventory_257d9c49-0c75-4966-98fe-515cd3623b0b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsInventory"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_6b3c0349-c19a-499c-9abf-7d0ebf14af81" xlink:to="loc_us-gaap_DeferredTaxAssetsInventory_257d9c49-0c75-4966-98fe-515cd3623b0b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets_ec58bd17-1027-42f5-9ee7-f6ae614b7e1c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_6b3c0349-c19a-499c-9abf-7d0ebf14af81" xlink:to="loc_us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets_ec58bd17-1027-42f5-9ee7-f6ae614b7e1c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts_ab79980f-38b8-4af5-8296-fb4493b4edba" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_6b3c0349-c19a-499c-9abf-7d0ebf14af81" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts_ab79980f-38b8-4af5-8296-fb4493b4edba" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances_39ffc576-e9cd-4ba9-ae13-3d2b56c63644" xlink:href="ibp-20221231.xsd#ibp_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_6b3c0349-c19a-499c-9abf-7d0ebf14af81" xlink:to="loc_ibp_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances_39ffc576-e9cd-4ba9-ae13-3d2b56c63644" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_445289fa-819f-410a-b3fc-8ae23cc5dec8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwards"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_6b3c0349-c19a-499c-9abf-7d0ebf14af81" xlink:to="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_445289fa-819f-410a-b3fc-8ae23cc5dec8" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment_47c0457f-51a7-4518-8a1b-3c6dfdcc9705" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_6b3c0349-c19a-499c-9abf-7d0ebf14af81" xlink:to="loc_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment_47c0457f-51a7-4518-8a1b-3c6dfdcc9705" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsLiabilitiesNet_b16a4d5d-0e4b-48f4-94a0-2926aef4c555" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsLiabilitiesNet"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsNet_c5d339bd-8290-49ed-b1d7-b78e5e8bc678" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsNet"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsLiabilitiesNet_b16a4d5d-0e4b-48f4-94a0-2926aef4c555" xlink:to="loc_us-gaap_DeferredTaxAssetsNet_c5d339bd-8290-49ed-b1d7-b78e5e8bc678" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilities_ff56bd1a-4249-4696-8386-abba7add193a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxLiabilities"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsLiabilitiesNet_b16a4d5d-0e4b-48f4-94a0-2926aef4c555" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilities_ff56bd1a-4249-4696-8386-abba7add193a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilities_a43ee6ae-b957-4503-96b0-1b6b0e98c020" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilities_cede275a-de66-4541-aa11-0ae09641504f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxLiabilities"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxLiabilities_a43ee6ae-b957-4503-96b0-1b6b0e98c020" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilities_cede275a-de66-4541-aa11-0ae09641504f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsNet_9801692d-4720-441c-8ce1-9de937732429" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsNet"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxLiabilities_a43ee6ae-b957-4503-96b0-1b6b0e98c020" xlink:to="loc_us-gaap_DeferredTaxAssetsNet_9801692d-4720-441c-8ce1-9de937732429" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilities_d13af854-80a8-4857-8c29-4dd69cc372f1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxLiabilities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_9831460d-d0ff-42da-a205-c6435bc4f839" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilities_d13af854-80a8-4857-8c29-4dd69cc372f1" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_9831460d-d0ff-42da-a205-c6435bc4f839" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesInvestments_add49c51-0a88-495c-81c4-eda9a1deee91" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesInvestments"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilities_d13af854-80a8-4857-8c29-4dd69cc372f1" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesInvestments_add49c51-0a88-495c-81c4-eda9a1deee91" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesDeferredExpenseReservesAndAccruals_8c491d25-a7da-4e72-b5bd-29086b0133d8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesDeferredExpenseReservesAndAccruals"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilities_d13af854-80a8-4857-8c29-4dd69cc372f1" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesDeferredExpenseReservesAndAccruals_8c491d25-a7da-4e72-b5bd-29086b0133d8" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesOther_33d3bef1-1c56-409a-9093-8e41ab17e664" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesOther"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilities_d13af854-80a8-4857-8c29-4dd69cc372f1" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesOther_33d3bef1-1c56-409a-9093-8e41ab17e664" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets_e39d0c08-44ea-4f47-8125-3143a1a118e2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilities_d13af854-80a8-4857-8c29-4dd69cc372f1" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets_e39d0c08-44ea-4f47-8125-3143a1a118e2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsNet_c1ddc207-27fa-4746-af11-415a1a493302" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsNet"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsValuationAllowance_7cfcc594-b5f4-4c91-bfe2-ab3c274cf576" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsValuationAllowance"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsNet_c1ddc207-27fa-4746-af11-415a1a493302" xlink:to="loc_us-gaap_DeferredTaxAssetsValuationAllowance_7cfcc594-b5f4-4c91-bfe2-ab3c274cf576" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsGross_f67a9623-b180-4c8c-9543-3e042da87c4f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsGross"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsNet_c1ddc207-27fa-4746-af11-415a1a493302" xlink:to="loc_us-gaap_DeferredTaxAssetsGross_f67a9623-b180-4c8c-9543-3e042da87c4f" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofAccruedGeneralInsuranceReservesDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#CommitmentsandContingenciesScheduleofAccruedGeneralInsuranceReservesDetail"/>
  <link:calculationLink xlink:role="http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofAccruedGeneralInsuranceReservesDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedInsuranceCurrentAndNoncurrent_a7817e57-2819-4c4a-8698-f581f9e7779d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedInsuranceCurrentAndNoncurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedInsuranceCurrent_1c768be4-157e-4a79-be21-54e20abc2ddb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedInsuranceCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedInsuranceCurrentAndNoncurrent_a7817e57-2819-4c4a-8698-f581f9e7779d" xlink:to="loc_us-gaap_AccruedInsuranceCurrent_1c768be4-157e-4a79-be21-54e20abc2ddb" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedInsuranceNoncurrent_7eab4e60-fd75-4be9-b13b-7481c002990c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedInsuranceNoncurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedInsuranceCurrentAndNoncurrent_a7817e57-2819-4c4a-8698-f581f9e7779d" xlink:to="loc_us-gaap_AccruedInsuranceNoncurrent_7eab4e60-fd75-4be9-b13b-7481c002990c" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetail"/>
  <link:calculationLink xlink:role="http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InsuranceSettlementsReceivableNoncurrent_cf9ceb3d-6033-4047-9004-3a6363745e81" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InsuranceSettlementsReceivableNoncurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy_0fb5addc-c800-493a-b976-4f3f92ca6e8f" xlink:href="ibp-20221231.xsd#ibp_InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InsuranceSettlementsReceivableNoncurrent_cf9ceb3d-6033-4047-9004-3a6363745e81" xlink:to="loc_ibp_InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy_0fb5addc-c800-493a-b976-4f3f92ca6e8f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_InsuranceReceivableForClaimsExceedingStopLossLimit_12e98c81-d098-469f-bde6-d212007c0a9f" xlink:href="ibp-20221231.xsd#ibp_InsuranceReceivableForClaimsExceedingStopLossLimit"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InsuranceSettlementsReceivableNoncurrent_cf9ceb3d-6033-4047-9004-3a6363745e81" xlink:to="loc_ibp_InsuranceReceivableForClaimsExceedingStopLossLimit_12e98c81-d098-469f-bde6-d212007c0a9f" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#BusinessCombinationsSummaryofBusinessAcquisitionsDetail"/>
  <link:calculationLink xlink:role="http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferred1_052afb63-ba09-40aa-be54-e9401c03ab20" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationConsiderationTransferred1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness_91e59605-9750-4afb-b717-aaf08f900960" xlink:href="ibp-20221231.xsd#ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationConsiderationTransferred1_052afb63-ba09-40aa-be54-e9401c03ab20" xlink:to="loc_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness_91e59605-9750-4afb-b717-aaf08f900960" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesGross_a781fb4a-08a3-4bd9-bfdb-54b60229abaa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireBusinessesGross"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationConsiderationTransferred1_052afb63-ba09-40aa-be54-e9401c03ab20" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesGross_a781fb4a-08a3-4bd9-bfdb-54b60229abaa" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail"/>
  <link:calculationLink xlink:role="http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_9f6d446b-9e6a-4c14-88f9-3518caae6fa4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset_3034073b-3343-41b3-95f1-318330013510" xlink:href="ibp-20221231.xsd#ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_9f6d446b-9e6a-4c14-88f9-3518caae6fa4" xlink:to="loc_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset_3034073b-3343-41b3-95f1-318330013510" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_71f7c632-aa25-4716-9099-7048bbf34ed8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_9f6d446b-9e6a-4c14-88f9-3518caae6fa4" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_71f7c632-aa25-4716-9099-7048bbf34ed8" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_6e50fb5e-f03c-4930-b803-80b0ae26f5d2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_9f6d446b-9e6a-4c14-88f9-3518caae6fa4" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_6e50fb5e-f03c-4930-b803-80b0ae26f5d2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_34277582-28ca-4956-960c-8cba5e015e5b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_9f6d446b-9e6a-4c14-88f9-3518caae6fa4" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_34277582-28ca-4956-960c-8cba5e015e5b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_c85da3d1-8874-4e86-aacc-a78b9d5e9f5c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_9f6d446b-9e6a-4c14-88f9-3518caae6fa4" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_c85da3d1-8874-4e86-aacc-a78b9d5e9f5c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_cbc48370-537d-4242-a55f-fbe502a8aa9c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther"/>
    <link:calculationArc order="6" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_9f6d446b-9e6a-4c14-88f9-3518caae6fa4" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_cbc48370-537d-4242-a55f-fbe502a8aa9c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_90212265-a0aa-4454-a4cd-92a409cbf355" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_9f6d446b-9e6a-4c14-88f9-3518caae6fa4" xlink:to="loc_us-gaap_Goodwill_90212265-a0aa-4454-a4cd-92a409cbf355" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_a1720954-9253-48ac-8ac9-d9fccd4422b2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther"/>
    <link:calculationArc order="8" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_9f6d446b-9e6a-4c14-88f9-3518caae6fa4" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_a1720954-9253-48ac-8ac9-d9fccd4422b2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_61a0e4c5-bced-4105-8d8a-688a598cf6fe" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities"/>
    <link:calculationArc order="9" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_9f6d446b-9e6a-4c14-88f9-3518caae6fa4" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_61a0e4c5-bced-4105-8d8a-688a598cf6fe" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_48fd1e37-1e16-462a-a179-a7af385c3a75" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill"/>
    <link:calculationArc order="10" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_9f6d446b-9e6a-4c14-88f9-3518caae6fa4" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_48fd1e37-1e16-462a-a179-a7af385c3a75" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_49879d79-5acc-4a19-8064-55b43cc7c23f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents"/>
    <link:calculationArc order="11" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_9f6d446b-9e6a-4c14-88f9-3518caae6fa4" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_49879d79-5acc-4a19-8064-55b43cc7c23f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities_1e05ad9f-7532-4f3e-aa41-072d1c161d22" xlink:href="ibp-20221231.xsd#ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities"/>
    <link:calculationArc order="12" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_9f6d446b-9e6a-4c14-88f9-3518caae6fa4" xlink:to="loc_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities_1e05ad9f-7532-4f3e-aa41-072d1c161d22" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable_254d88df-eb5f-40df-80b0-d49c31b78f90" xlink:href="ibp-20221231.xsd#ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable"/>
    <link:calculationArc order="13" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_9f6d446b-9e6a-4c14-88f9-3518caae6fa4" xlink:to="loc_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable_254d88df-eb5f-40df-80b0-d49c31b78f90" xlink:type="arc"/>
  </link:calculationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>10
<FILENAME>ibp-20221231_def.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with Wdesk from Workiva-->
<!--Copyright 2023 Workiva-->
<!--r:a3e4206c-1cfd-4e6c-927f-ccbea40704ec,g:8e7b03d8-eedd-4de2-8abd-33b4866ed975-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/all" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#hypercube-dimension"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-default"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-domain"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/domain-member" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#domain-member"/>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS" xlink:type="simple" xlink:href="ibp-20221231.xsd#CONSOLIDATEDBALANCESHEETS"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS" xlink:type="extended" id="id5af29210c9b417d9fe4a791a9bc6071_CONSOLIDATEDBALANCESHEETS">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_7346cabc-5228-4c80-88e0-c29d704b9513" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsAbstract_86c984e6-d9c6-484d-8f51-c48103e11f6b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_7346cabc-5228-4c80-88e0-c29d704b9513" xlink:to="loc_us-gaap_AssetsAbstract_86c984e6-d9c6-484d-8f51-c48103e11f6b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrentAbstract_a679f063-45a3-4836-a2f4-70cb01bd2cb9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrentAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsAbstract_86c984e6-d9c6-484d-8f51-c48103e11f6b" xlink:to="loc_us-gaap_AssetsCurrentAbstract_a679f063-45a3-4836-a2f4-70cb01bd2cb9" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_abe3478a-4a00-4be8-b17c-7eac24c058bb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsCurrentAbstract_a679f063-45a3-4836-a2f4-70cb01bd2cb9" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_abe3478a-4a00-4be8-b17c-7eac24c058bb" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_bdec1f46-a0df-4712-a506-44da61bb1826" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsCurrentAbstract_a679f063-45a3-4836-a2f4-70cb01bd2cb9" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_bdec1f46-a0df-4712-a506-44da61bb1826" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_d092ad25-bbf2-4117-968d-e48d4991e928" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsCurrentAbstract_a679f063-45a3-4836-a2f4-70cb01bd2cb9" xlink:to="loc_us-gaap_InventoryNet_d092ad25-bbf2-4117-968d-e48d4991e928" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_1b32a7a8-0733-4958-8493-549658e8f028" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsCurrentAbstract_a679f063-45a3-4836-a2f4-70cb01bd2cb9" xlink:to="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_1b32a7a8-0733-4958-8493-549658e8f028" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_3b4cf0e1-a4d7-47e8-b7fd-7d9d2e7f4ac5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsCurrentAbstract_a679f063-45a3-4836-a2f4-70cb01bd2cb9" xlink:to="loc_us-gaap_AssetsCurrent_3b4cf0e1-a4d7-47e8-b7fd-7d9d2e7f4ac5" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_7f7a3896-e704-4f9c-b97f-fe4cf8c9db31" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsAbstract_86c984e6-d9c6-484d-8f51-c48103e11f6b" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_7f7a3896-e704-4f9c-b97f-fe4cf8c9db31" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_86e68e76-460f-424d-8a16-08bacfd19de0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsAbstract_86c984e6-d9c6-484d-8f51-c48103e11f6b" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_86e68e76-460f-424d-8a16-08bacfd19de0" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_5c457951-b047-462b-990b-16dae48c1069" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsAbstract_86c984e6-d9c6-484d-8f51-c48103e11f6b" xlink:to="loc_us-gaap_Goodwill_5c457951-b047-462b-990b-16dae48c1069" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_87a2ba8c-4856-44fa-b174-1fe5b508b9a8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsAbstract_86c984e6-d9c6-484d-8f51-c48103e11f6b" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_87a2ba8c-4856-44fa-b174-1fe5b508b9a8" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsNoncurrent_5a35375f-d150-4bbf-9a7f-b64c7a7c6718" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAssetsNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsAbstract_86c984e6-d9c6-484d-8f51-c48103e11f6b" xlink:to="loc_us-gaap_OtherAssetsNoncurrent_5a35375f-d150-4bbf-9a7f-b64c7a7c6718" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_1b9b3570-0dc3-4744-b68b-7660c180bd24" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Assets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsAbstract_86c984e6-d9c6-484d-8f51-c48103e11f6b" xlink:to="loc_us-gaap_Assets_1b9b3570-0dc3-4744-b68b-7660c180bd24" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_a9c651a0-7a00-41e3-8b71-8e74bc1b8b64" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_7346cabc-5228-4c80-88e0-c29d704b9513" xlink:to="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_a9c651a0-7a00-41e3-8b71-8e74bc1b8b64" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract_0a456593-4fd3-40d0-b21a-53f0a25a8348" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrentAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_a9c651a0-7a00-41e3-8b71-8e74bc1b8b64" xlink:to="loc_us-gaap_LiabilitiesCurrentAbstract_0a456593-4fd3-40d0-b21a-53f0a25a8348" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtCurrent_dcddf9b9-51c5-4916-9525-febe55c9f3c2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_0a456593-4fd3-40d0-b21a-53f0a25a8348" xlink:to="loc_us-gaap_LongTermDebtCurrent_dcddf9b9-51c5-4916-9525-febe55c9f3c2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_43182355-6199-4930-a9b2-910d80a70482" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_0a456593-4fd3-40d0-b21a-53f0a25a8348" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_43182355-6199-4930-a9b2-910d80a70482" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityCurrent_4ac28f72-1ed4-48bc-be3a-9494472fb7ae" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_0a456593-4fd3-40d0-b21a-53f0a25a8348" xlink:to="loc_us-gaap_FinanceLeaseLiabilityCurrent_4ac28f72-1ed4-48bc-be3a-9494472fb7ae" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableCurrent_d2cc44b2-a655-4f7c-b0f8-92b9fb08749a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_0a456593-4fd3-40d0-b21a-53f0a25a8348" xlink:to="loc_us-gaap_AccountsPayableCurrent_d2cc44b2-a655-4f7c-b0f8-92b9fb08749a" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_0398ef74-218a-49f9-862a-3cf9375016d9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_0a456593-4fd3-40d0-b21a-53f0a25a8348" xlink:to="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_0398ef74-218a-49f9-862a-3cf9375016d9" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherLiabilitiesCurrent_b72182f7-a607-4999-9b9d-944963e4f90c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherLiabilitiesCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_0a456593-4fd3-40d0-b21a-53f0a25a8348" xlink:to="loc_us-gaap_OtherLiabilitiesCurrent_b72182f7-a607-4999-9b9d-944963e4f90c" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_5f05fc56-ba45-4cfc-b3a8-f460b77658b0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_0a456593-4fd3-40d0-b21a-53f0a25a8348" xlink:to="loc_us-gaap_LiabilitiesCurrent_5f05fc56-ba45-4cfc-b3a8-f460b77658b0" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtNoncurrent_0bd6488e-4ba7-41f0-83b9-1b3e6146959e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_a9c651a0-7a00-41e3-8b71-8e74bc1b8b64" xlink:to="loc_us-gaap_LongTermDebtNoncurrent_0bd6488e-4ba7-41f0-83b9-1b3e6146959e" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_9b19b6ca-bb5c-447f-8c4e-27e7c44f342e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_a9c651a0-7a00-41e3-8b71-8e74bc1b8b64" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_9b19b6ca-bb5c-447f-8c4e-27e7c44f342e" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityNoncurrent_67d5e627-714c-4cea-91df-9a8d73ecfa8c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_a9c651a0-7a00-41e3-8b71-8e74bc1b8b64" xlink:to="loc_us-gaap_FinanceLeaseLiabilityNoncurrent_67d5e627-714c-4cea-91df-9a8d73ecfa8c" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_f024079a-84dc-4779-ada6-d9b2c143cec3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_a9c651a0-7a00-41e3-8b71-8e74bc1b8b64" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_f024079a-84dc-4779-ada6-d9b2c143cec3" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherLiabilitiesNoncurrent_5380b391-2654-467e-a427-9bca56fa66ef" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherLiabilitiesNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_a9c651a0-7a00-41e3-8b71-8e74bc1b8b64" xlink:to="loc_us-gaap_OtherLiabilitiesNoncurrent_5380b391-2654-467e-a427-9bca56fa66ef" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Liabilities_1d2da09b-61aa-48dc-b879-b2600e702d76" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Liabilities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_a9c651a0-7a00-41e3-8b71-8e74bc1b8b64" xlink:to="loc_us-gaap_Liabilities_1d2da09b-61aa-48dc-b879-b2600e702d76" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingencies_63f4798e-fc87-43de-a439-909ae5b21986" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingencies"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_a9c651a0-7a00-41e3-8b71-8e74bc1b8b64" xlink:to="loc_us-gaap_CommitmentsAndContingencies_63f4798e-fc87-43de-a439-909ae5b21986" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityAbstract_2b7a5bac-5fcd-4472-9cab-8b2130e519a4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquityAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_a9c651a0-7a00-41e3-8b71-8e74bc1b8b64" xlink:to="loc_us-gaap_StockholdersEquityAbstract_2b7a5bac-5fcd-4472-9cab-8b2130e519a4" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockValue_91e7531a-0ac6-4bcf-9981-93cd1940f7dd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StockholdersEquityAbstract_2b7a5bac-5fcd-4472-9cab-8b2130e519a4" xlink:to="loc_us-gaap_PreferredStockValue_91e7531a-0ac6-4bcf-9981-93cd1940f7dd" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockValue_60dc2369-f926-473f-9bea-557ad2d934fa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StockholdersEquityAbstract_2b7a5bac-5fcd-4472-9cab-8b2130e519a4" xlink:to="loc_us-gaap_CommonStockValue_60dc2369-f926-473f-9bea-557ad2d934fa" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock_d2c5c412-b98d-4832-a277-0756e4654211" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapitalCommonStock"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StockholdersEquityAbstract_2b7a5bac-5fcd-4472-9cab-8b2130e519a4" xlink:to="loc_us-gaap_AdditionalPaidInCapitalCommonStock_d2c5c412-b98d-4832-a277-0756e4654211" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_8293f5fc-9a79-4fe2-b8cd-5c8c21f3876f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StockholdersEquityAbstract_2b7a5bac-5fcd-4472-9cab-8b2130e519a4" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_8293f5fc-9a79-4fe2-b8cd-5c8c21f3876f" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockCommonValue_7a53aa78-d90c-4e17-a818-1632ff15b9cd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockCommonValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StockholdersEquityAbstract_2b7a5bac-5fcd-4472-9cab-8b2130e519a4" xlink:to="loc_us-gaap_TreasuryStockCommonValue_7a53aa78-d90c-4e17-a818-1632ff15b9cd" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_cfc9c65a-5a31-4899-8b2e-db69dd3908ca" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StockholdersEquityAbstract_2b7a5bac-5fcd-4472-9cab-8b2130e519a4" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_cfc9c65a-5a31-4899-8b2e-db69dd3908ca" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_77fe4bce-c7ed-4dc5-bf9e-48c142feb81c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StockholdersEquityAbstract_2b7a5bac-5fcd-4472-9cab-8b2130e519a4" xlink:to="loc_us-gaap_StockholdersEquity_77fe4bce-c7ed-4dc5-bf9e-48c142feb81c" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_a33172c1-1a2d-41b7-840b-f05f7ef8be36" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_a9c651a0-7a00-41e3-8b71-8e74bc1b8b64" xlink:to="loc_us-gaap_LiabilitiesAndStockholdersEquity_a33172c1-1a2d-41b7-840b-f05f7ef8be36" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_a0966336-dfa2-464b-b73c-d642a1ced565" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_7346cabc-5228-4c80-88e0-c29d704b9513" xlink:to="loc_us-gaap_StatementTable_a0966336-dfa2-464b-b73c-d642a1ced565" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_c52b79f3-7f31-4cfc-b9a7-e2a769ac531f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_a0966336-dfa2-464b-b73c-d642a1ced565" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_c52b79f3-7f31-4cfc-b9a7-e2a769ac531f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_c52b79f3-7f31-4cfc-b9a7-e2a769ac531f_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_c52b79f3-7f31-4cfc-b9a7-e2a769ac531f" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_c52b79f3-7f31-4cfc-b9a7-e2a769ac531f_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4640b0de-5c22-4ef0-874a-225f9cdc0399" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_c52b79f3-7f31-4cfc-b9a7-e2a769ac531f" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4640b0de-5c22-4ef0-874a-225f9cdc0399" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerRelationshipsMember_a16de1fc-351c-4a36-a411-98395a6b4103" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerRelationshipsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4640b0de-5c22-4ef0-874a-225f9cdc0399" xlink:to="loc_us-gaap_CustomerRelationshipsMember_a16de1fc-351c-4a36-a411-98395a6b4103" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_IntangibleAssetsExcludingCustomerRelationshipsMember_8d031d05-4131-4e4c-8bd0-466cd1a57a34" xlink:href="ibp-20221231.xsd#ibp_IntangibleAssetsExcludingCustomerRelationshipsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4640b0de-5c22-4ef0-874a-225f9cdc0399" xlink:to="loc_ibp_IntangibleAssetsExcludingCustomerRelationshipsMember_8d031d05-4131-4e4c-8bd0-466cd1a57a34" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY" xlink:type="simple" xlink:href="ibp-20221231.xsd#CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY" xlink:type="extended" id="i32f5948623af493ba675b50a5d60eae1_CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesIssued_1ae15edc-2b30-4707-86f3-3329b3d40427" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesIssued"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_CommonStockSharesIssued_1ae15edc-2b30-4707-86f3-3329b3d40427" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_a37914e8-ce15-4760-8d92-ebff0dffc178" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_StockholdersEquity_a37914e8-ce15-4760-8d92-ebff0dffc178" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockCommonShares_50e24fcc-7d16-446c-bc28-f58af74e788a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockCommonShares"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_TreasuryStockCommonShares_50e24fcc-7d16-446c-bc28-f58af74e788a" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockCommonValue_f87d11bb-43a2-4f47-94dc-61b301b3fdcd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockCommonValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_TreasuryStockCommonValue_f87d11bb-43a2-4f47-94dc-61b301b3fdcd" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_06ebb7ef-7b38-4fe1-899f-154f21a7622f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_NetIncomeLoss_06ebb7ef-7b38-4fe1-899f-154f21a7622f" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross_4dac5f18-ecb2-46dd-a871-fbf459a2528b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross_4dac5f18-ecb2-46dd-a871-fbf459a2528b" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross_641671a0-9dc7-4233-a8dd-49d6e095d65e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross_641671a0-9dc7-4233-a8dd-49d6e095d65e" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationForfeited_75421615-a722-4260-b0b1-6ca120d90ce6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationForfeited"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationForfeited_75421615-a722-4260-b0b1-6ca120d90ce6" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationForfeited_29b5fd26-f797-49f7-98d9-0433f62c7853" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationForfeited"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationForfeited_29b5fd26-f797-49f7-98d9-0433f62c7853" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_61afcb94-2338-47be-af19-e4bd228c7790" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_61afcb94-2338-47be-af19-e4bd228c7790" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_59c14253-325e-4d14-ae10-1df76cab7ad7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_59c14253-325e-4d14-ae10-1df76cab7ad7" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_062b023e-7f30-4923-9f37-76668f4751da" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_062b023e-7f30-4923-9f37-76668f4751da" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures_35128703-2f5d-4c58-953a-e9c305320e8d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures_35128703-2f5d-4c58-953a-e9c305320e8d" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures_713c513d-f9b9-4ec1-9e0f-18b2a7bfcfff" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures_713c513d-f9b9-4ec1-9e0f-18b2a7bfcfff" xlink:type="arc" order="13"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsCommonStockCash_57d412f6-8b17-4a80-b002-88a809e9803b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DividendsCommonStockCash"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_DividendsCommonStockCash_57d412f6-8b17-4a80-b002-88a809e9803b" xlink:type="arc" order="14"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockSharesAcquired_d53b632b-4e70-4bc0-839a-f7d17534dd39" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockSharesAcquired"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_TreasuryStockSharesAcquired_d53b632b-4e70-4bc0-839a-f7d17534dd39" xlink:type="arc" order="15"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_b256ee26-7669-48a4-872a-2ef4a2c70cba" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_b256ee26-7669-48a4-872a-2ef4a2c70cba" xlink:type="arc" order="16"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax_ba2d9495-de2b-4373-934d-1acea286e00a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax_ba2d9495-de2b-4373-934d-1acea286e00a" xlink:type="arc" order="17"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_a00bb4d0-a8ce-42f9-af70-ae1914717051" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesIssued_4aca4fc0-b900-4285-877d-0a31d128da22" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesIssued"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockCommonShares_2ac86cce-3396-4e90-bfb0-e73086def6d8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockCommonShares"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockCommonValue_955f3c59-f2f1-4efd-bc76-8853ec90a545" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockCommonValue"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_403d0e58-e03c-4ce1-a877-22121e1ac89c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_StatementTable_403d0e58-e03c-4ce1-a877-22121e1ac89c" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_724d9f1f-1f47-4376-a116-f7569f80d6b4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_403d0e58-e03c-4ce1-a877-22121e1ac89c" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_724d9f1f-1f47-4376-a116-f7569f80d6b4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_724d9f1f-1f47-4376-a116-f7569f80d6b4_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_724d9f1f-1f47-4376-a116-f7569f80d6b4" xlink:to="loc_us-gaap_EquityComponentDomain_724d9f1f-1f47-4376-a116-f7569f80d6b4_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_1a09240e-9ab7-4d4e-b15e-2496b9010c3b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_724d9f1f-1f47-4376-a116-f7569f80d6b4" xlink:to="loc_us-gaap_EquityComponentDomain_1a09240e-9ab7-4d4e-b15e-2496b9010c3b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_b9f4ec3c-18cb-4f77-a6d3-d69ee80694b1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_1a09240e-9ab7-4d4e-b15e-2496b9010c3b" xlink:to="loc_us-gaap_CommonStockMember_b9f4ec3c-18cb-4f77-a6d3-d69ee80694b1" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_1c624755-2e2f-495f-bdf5-a67fd8aed700" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapitalMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_1a09240e-9ab7-4d4e-b15e-2496b9010c3b" xlink:to="loc_us-gaap_AdditionalPaidInCapitalMember_1c624755-2e2f-495f-bdf5-a67fd8aed700" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember_ad23fbac-3022-4048-b0a8-0f8a7c9202b0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_1a09240e-9ab7-4d4e-b15e-2496b9010c3b" xlink:to="loc_us-gaap_RetainedEarningsMember_ad23fbac-3022-4048-b0a8-0f8a7c9202b0" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockMember_491998b4-2e63-422a-a166-4be1291fcb99" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_1a09240e-9ab7-4d4e-b15e-2496b9010c3b" xlink:to="loc_us-gaap_TreasuryStockMember_491998b4-2e63-422a-a166-4be1291fcb99" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_0b6c86e2-a659-4917-97b2-85d9f4922e52" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_1a09240e-9ab7-4d4e-b15e-2496b9010c3b" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_0b6c86e2-a659-4917-97b2-85d9f4922e52" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_dd2f7be8-f013-434b-b12b-88498cecb8fd" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_403d0e58-e03c-4ce1-a877-22121e1ac89c" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_dd2f7be8-f013-434b-b12b-88498cecb8fd" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_dd2f7be8-f013-434b-b12b-88498cecb8fd_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_dd2f7be8-f013-434b-b12b-88498cecb8fd" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_dd2f7be8-f013-434b-b12b-88498cecb8fd_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_93b62727-3346-4241-baea-2e0545256e32" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_dd2f7be8-f013-434b-b12b-88498cecb8fd" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_93b62727-3346-4241-baea-2e0545256e32" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_360800a2-58db-4cd3-a631-2b3d5a21a3f8" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_93b62727-3346-4241-baea-2e0545256e32" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_360800a2-58db-4cd3-a631-2b3d5a21a3f8" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#SignificantAccountingPoliciesDetail"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail" xlink:type="extended" id="i8e23384edc1841ee8ca53be7a3defbf6_SignificantAccountingPoliciesDetail">
    <link:loc xlink:type="locator" xlink:label="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:href="ibp-20221231.xsd#ibp_AccountingPoliciesAndGeneralInformationLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_278b2df8-3962-49fa-8b23-307d5dc2a2fe" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:to="loc_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_278b2df8-3962-49fa-8b23-307d5dc2a2fe" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashFDICInsuredAmount_526e45a2-2a0d-4aef-9e0a-c9a92743a370" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashFDICInsuredAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:to="loc_us-gaap_CashFDICInsuredAmount_526e45a2-2a0d-4aef-9e0a-c9a92743a370" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_RevenueFromContractWithCustomerPaymentTerms_eb6a936a-5b2a-4d1c-b93d-fd1ddd92da19" xlink:href="ibp-20221231.xsd#ibp_RevenueFromContractWithCustomerPaymentTerms"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:to="loc_ibp_RevenueFromContractWithCustomerPaymentTerms_eb6a936a-5b2a-4d1c-b93d-fd1ddd92da19" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNet_b36a2100-4a95-453b-b6f9-8593e2232fd7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:to="loc_us-gaap_AccountsReceivableNet_b36a2100-4a95-453b-b6f9-8593e2232fd7" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConstructionContractorReceivableRetainage_d69cc4b5-e951-427e-850c-f00fc7dbb959" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConstructionContractorReceivableRetainage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:to="loc_us-gaap_ConstructionContractorReceivableRetainage_d69cc4b5-e951-427e-850c-f00fc7dbb959" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1_8492d166-0811-467f-bf82-000efa2c6c3e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskPercentage1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:to="loc_us-gaap_ConcentrationRiskPercentage1_8492d166-0811-467f-bf82-000efa2c6c3e" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_bbc1a084-74ee-4daf-9b16-324e6ca50cd8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_bbc1a084-74ee-4daf-9b16-324e6ca50cd8" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetUsefulLife_5c885f32-5108-4ec1-9f84-dcb72f6ef7f5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetUsefulLife_5c885f32-5108-4ec1-9f84-dcb72f6ef7f5" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_4a26b21d-4518-498d-9aff-0c330e4a410d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOfLongLivedAssetsHeldForUse"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:to="loc_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_4a26b21d-4518-498d-9aff-0c330e4a410d" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WorkersCompensationLiabilityCurrentAndNoncurrent_cd9b1e1c-5be9-4520-8ca0-464641f2bb94" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WorkersCompensationLiabilityCurrentAndNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:to="loc_us-gaap_WorkersCompensationLiabilityCurrentAndNoncurrent_cd9b1e1c-5be9-4520-8ca0-464641f2bb94" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_AggregateCapWorkersCompensationLiability_34c861a5-6fd5-4829-8eb1-73022e7b07a9" xlink:href="ibp-20221231.xsd#ibp_AggregateCapWorkersCompensationLiability"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:to="loc_ibp_AggregateCapWorkersCompensationLiability_34c861a5-6fd5-4829-8eb1-73022e7b07a9" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdvertisingExpense_0c832b38-b369-4417-a8e8-0f2063ebc4ed" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdvertisingExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:to="loc_us-gaap_AdvertisingExpense_0c832b38-b369-4417-a8e8-0f2063ebc4ed" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredFinanceCostsNet_d24e8a43-1020-4d80-88f4-9655a3ec3c97" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredFinanceCostsNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:to="loc_us-gaap_DeferredFinanceCostsNet_d24e8a43-1020-4d80-88f4-9655a3ec3c97" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfFinancingCosts_13cd9306-6c47-43ba-b957-2e6ccb6b5eea" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfFinancingCosts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:to="loc_us-gaap_AmortizationOfFinancingCosts_13cd9306-6c47-43ba-b957-2e6ccb6b5eea" xlink:type="arc" order="13"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WriteOffOfDeferredDebtIssuanceCost_c9391d4e-d0d5-479c-b667-c178ea603548" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WriteOffOfDeferredDebtIssuanceCost"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:to="loc_us-gaap_WriteOffOfDeferredDebtIssuanceCost_c9391d4e-d0d5-479c-b667-c178ea603548" xlink:type="arc" order="14"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DebtRelatedFinancingCost_8eb5d195-d78c-44c5-833a-05dff3b9373d" xlink:href="ibp-20221231.xsd#ibp_DebtRelatedFinancingCost"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:to="loc_ibp_DebtRelatedFinancingCost_8eb5d195-d78c-44c5-833a-05dff3b9373d" xlink:type="arc" order="15"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_AccountingPoliciesAndGeneralInformationTable_abb7b34f-2679-4d3b-820c-1735ef159eff" xlink:href="ibp-20221231.xsd#ibp_AccountingPoliciesAndGeneralInformationTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:to="loc_ibp_AccountingPoliciesAndGeneralInformationTable_abb7b34f-2679-4d3b-820c-1735ef159eff" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_421856fe-e79f-4eb9-96c1-295996edfbd4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationTable_abb7b34f-2679-4d3b-820c-1735ef159eff" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_421856fe-e79f-4eb9-96c1-295996edfbd4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_421856fe-e79f-4eb9-96c1-295996edfbd4_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_421856fe-e79f-4eb9-96c1-295996edfbd4" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_421856fe-e79f-4eb9-96c1-295996edfbd4_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_fa54c8a0-80a1-4263-96a3-d2263e49840a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_421856fe-e79f-4eb9-96c1-295996edfbd4" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_fa54c8a0-80a1-4263-96a3-d2263e49840a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerRelationshipsMember_e285eda8-62eb-433e-8414-8c7a7c99c47d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerRelationshipsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_fa54c8a0-80a1-4263-96a3-d2263e49840a" xlink:to="loc_us-gaap_CustomerRelationshipsMember_e285eda8-62eb-433e-8414-8c7a7c99c47d" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NoncompeteAgreementsMember_87d63107-c3ed-4442-8f4d-83c7899f57d5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncompeteAgreementsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_fa54c8a0-80a1-4263-96a3-d2263e49840a" xlink:to="loc_us-gaap_NoncompeteAgreementsMember_87d63107-c3ed-4442-8f4d-83c7899f57d5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TrademarksAndTradeNamesMember_75305097-ed44-4889-b0d1-39948b06277c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrademarksAndTradeNamesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_fa54c8a0-80a1-4263-96a3-d2263e49840a" xlink:to="loc_us-gaap_TrademarksAndTradeNamesMember_75305097-ed44-4889-b0d1-39948b06277c" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrderOrProductionBacklogMember_56d5d39d-4517-41dd-bd28-d67f6cce218a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OrderOrProductionBacklogMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_fa54c8a0-80a1-4263-96a3-d2263e49840a" xlink:to="loc_us-gaap_OrderOrProductionBacklogMember_56d5d39d-4517-41dd-bd28-d67f6cce218a" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_4ec4920c-2e25-4341-bcaf-8d47c9cff0c6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationTable_abb7b34f-2679-4d3b-820c-1735ef159eff" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_4ec4920c-2e25-4341-bcaf-8d47c9cff0c6" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_4ec4920c-2e25-4341-bcaf-8d47c9cff0c6_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_4ec4920c-2e25-4341-bcaf-8d47c9cff0c6" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_4ec4920c-2e25-4341-bcaf-8d47c9cff0c6_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_564478dc-650a-4a82-9f7d-db56e7c9058a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_4ec4920c-2e25-4341-bcaf-8d47c9cff0c6" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_564478dc-650a-4a82-9f7d-db56e7c9058a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableMember_9f1b17eb-b7fd-440d-a18d-cbb781454497" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_564478dc-650a-4a82-9f7d-db56e7c9058a" xlink:to="loc_us-gaap_AccountsReceivableMember_9f1b17eb-b7fd-440d-a18d-cbb781454497" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerMember_d42318b9-02ed-40e6-90d9-66dee3f0761b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_564478dc-650a-4a82-9f7d-db56e7c9058a" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerMember_d42318b9-02ed-40e6-90d9-66dee3f0761b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_ab73e318-62ab-496f-bcbc-5995c59232a5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationTable_abb7b34f-2679-4d3b-820c-1735ef159eff" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_ab73e318-62ab-496f-bcbc-5995c59232a5" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_ab73e318-62ab-496f-bcbc-5995c59232a5_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_ab73e318-62ab-496f-bcbc-5995c59232a5" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_ab73e318-62ab-496f-bcbc-5995c59232a5_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_73e040cb-db01-42ca-977c-01d28f87feb8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_ab73e318-62ab-496f-bcbc-5995c59232a5" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_73e040cb-db01-42ca-977c-01d28f87feb8" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNoncurrentAssetsMember_d8e68223-eb3c-4765-8427-3473a7fd160a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNoncurrentAssetsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_73e040cb-db01-42ca-977c-01d28f87feb8" xlink:to="loc_us-gaap_OtherNoncurrentAssetsMember_d8e68223-eb3c-4765-8427-3473a7fd160a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis_543c80f6-1528-4cc0-9633-5654828b1b1f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationTable_abb7b34f-2679-4d3b-820c-1735ef159eff" xlink:to="loc_us-gaap_ConcentrationRiskByTypeAxis_543c80f6-1528-4cc0-9633-5654828b1b1f" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_543c80f6-1528-4cc0-9633-5654828b1b1f_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_543c80f6-1528-4cc0-9633-5654828b1b1f" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_543c80f6-1528-4cc0-9633-5654828b1b1f_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_e051f134-e15c-40b0-8057-e8335b384dd7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_543c80f6-1528-4cc0-9633-5654828b1b1f" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_e051f134-e15c-40b0-8057-e8335b384dd7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerConcentrationRiskMember_5de8baf2-5415-4040-b3c1-45509b55922b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerConcentrationRiskMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_e051f134-e15c-40b0-8057-e8335b384dd7" xlink:to="loc_us-gaap_CustomerConcentrationRiskMember_5de8baf2-5415-4040-b3c1-45509b55922b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_b9cb07c8-5076-48f6-87f6-431ab49f0dbe" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationTable_abb7b34f-2679-4d3b-820c-1735ef159eff" xlink:to="loc_srt_RangeAxis_b9cb07c8-5076-48f6-87f6-431ab49f0dbe" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_b9cb07c8-5076-48f6-87f6-431ab49f0dbe_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_b9cb07c8-5076-48f6-87f6-431ab49f0dbe" xlink:to="loc_srt_RangeMember_b9cb07c8-5076-48f6-87f6-431ab49f0dbe_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_66c3522d-503d-457f-8557-142a505c7d11" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_b9cb07c8-5076-48f6-87f6-431ab49f0dbe" xlink:to="loc_srt_RangeMember_66c3522d-503d-457f-8557-142a505c7d11" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_c4afcbdc-a9de-4107-b418-3088a7dfedfb" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_66c3522d-503d-457f-8557-142a505c7d11" xlink:to="loc_srt_MaximumMember_c4afcbdc-a9de-4107-b418-3088a7dfedfb" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_02ad206d-36a8-44cf-9ba3-34915502e6a2" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_66c3522d-503d-457f-8557-142a505c7d11" xlink:to="loc_srt_MinimumMember_02ad206d-36a8-44cf-9ba3-34915502e6a2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_6b55b38b-81e7-4422-b3e9-0139040bf6ba" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationTable_abb7b34f-2679-4d3b-820c-1735ef159eff" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_6b55b38b-81e7-4422-b3e9-0139040bf6ba" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_6b55b38b-81e7-4422-b3e9-0139040bf6ba_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_6b55b38b-81e7-4422-b3e9-0139040bf6ba" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_6b55b38b-81e7-4422-b3e9-0139040bf6ba_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_929d8d93-3ba7-44e5-95c2-7b0eebb8ef0b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_6b55b38b-81e7-4422-b3e9-0139040bf6ba" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_929d8d93-3ba7-44e5-95c2-7b0eebb8ef0b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VehiclesMember_fdb7325b-3d77-4345-b555-fa8e61c9c787" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VehiclesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_929d8d93-3ba7-44e5-95c2-7b0eebb8ef0b" xlink:to="loc_us-gaap_VehiclesMember_fdb7325b-3d77-4345-b555-fa8e61c9c787" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseholdImprovementsMember_666c0978-6154-434f-8018-3efd72d73390" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseholdImprovementsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_929d8d93-3ba7-44e5-95c2-7b0eebb8ef0b" xlink:to="loc_us-gaap_LeaseholdImprovementsMember_666c0978-6154-434f-8018-3efd72d73390" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FurnitureAndFixturesMember_66479a15-1c4a-4d43-b46a-6c2b2570c67f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FurnitureAndFixturesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_929d8d93-3ba7-44e5-95c2-7b0eebb8ef0b" xlink:to="loc_us-gaap_FurnitureAndFixturesMember_66479a15-1c4a-4d43-b46a-6c2b2570c67f" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BuildingMember_10827442-80eb-4930-88fe-95a9479c1dec" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BuildingMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_929d8d93-3ba7-44e5-95c2-7b0eebb8ef0b" xlink:to="loc_us-gaap_BuildingMember_10827442-80eb-4930-88fe-95a9479c1dec" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeAxis_799138f8-d8b0-44f7-98ca-8ed2000dd6a2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationTable_abb7b34f-2679-4d3b-820c-1735ef159eff" xlink:to="loc_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeAxis_799138f8-d8b0-44f7-98ca-8ed2000dd6a2" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeDomain_799138f8-d8b0-44f7-98ca-8ed2000dd6a2_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeAxis_799138f8-d8b0-44f7-98ca-8ed2000dd6a2" xlink:to="loc_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeDomain_799138f8-d8b0-44f7-98ca-8ed2000dd6a2_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeDomain_7775489b-7aae-42a7-bcf5-3d46e7f601b5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeAxis_799138f8-d8b0-44f7-98ca-8ed2000dd6a2" xlink:to="loc_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeDomain_7775489b-7aae-42a7-bcf5-3d46e7f601b5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WorkersCompensationInsuranceMember_cf923ae4-4c4c-4695-8ff0-f864cf473ea5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WorkersCompensationInsuranceMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeDomain_7775489b-7aae-42a7-bcf5-3d46e7f601b5" xlink:to="loc_us-gaap_WorkersCompensationInsuranceMember_cf923ae4-4c4c-4695-8ff0-f864cf473ea5" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_GeneralLiabilityInsuranceProgramMember_0991bc23-2052-4529-ac48-fa8cdcca8ada" xlink:href="ibp-20221231.xsd#ibp_GeneralLiabilityInsuranceProgramMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeDomain_7775489b-7aae-42a7-bcf5-3d46e7f601b5" xlink:to="loc_ibp_GeneralLiabilityInsuranceProgramMember_0991bc23-2052-4529-ac48-fa8cdcca8ada" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_VehiclesInsuranceMember_a2c5fcb6-5b6b-4241-a10d-2f59ef6d5ed1" xlink:href="ibp-20221231.xsd#ibp_VehiclesInsuranceMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeDomain_7775489b-7aae-42a7-bcf5-3d46e7f601b5" xlink:to="loc_ibp_VehiclesInsuranceMember_a2c5fcb6-5b6b-4241-a10d-2f59ef6d5ed1" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_6520d9fe-fa4d-45ec-bf9b-e4b0f663ce5f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationTable_abb7b34f-2679-4d3b-820c-1735ef159eff" xlink:to="loc_us-gaap_DebtInstrumentAxis_6520d9fe-fa4d-45ec-bf9b-e4b0f663ce5f" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_6520d9fe-fa4d-45ec-bf9b-e4b0f663ce5f_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_6520d9fe-fa4d-45ec-bf9b-e4b0f663ce5f" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_6520d9fe-fa4d-45ec-bf9b-e4b0f663ce5f_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_b809ac81-7066-4fc4-ae55-cdb42e5e28c4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_6520d9fe-fa4d-45ec-bf9b-e4b0f663ce5f" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_b809ac81-7066-4fc4-ae55-cdb42e5e28c4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_SeniorSecuredCreditAgreementMember_97bba762-ed93-475b-9567-ea3b38d38221" xlink:href="ibp-20221231.xsd#ibp_SeniorSecuredCreditAgreementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_b809ac81-7066-4fc4-ae55-cdb42e5e28c4" xlink:to="loc_ibp_SeniorSecuredCreditAgreementMember_97bba762-ed93-475b-9567-ea3b38d38221" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementAxis_6494cbfc-3cdc-4cec-b3b7-c87d30684d5f" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationTable_abb7b34f-2679-4d3b-820c-1735ef159eff" xlink:to="loc_srt_RestatementAxis_6494cbfc-3cdc-4cec-b3b7-c87d30684d5f" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementDomain_6494cbfc-3cdc-4cec-b3b7-c87d30684d5f_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RestatementAxis_6494cbfc-3cdc-4cec-b3b7-c87d30684d5f" xlink:to="loc_srt_RestatementDomain_6494cbfc-3cdc-4cec-b3b7-c87d30684d5f_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementDomain_14846f27-df0c-4e1f-a016-4c7b8768b382" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RestatementAxis_6494cbfc-3cdc-4cec-b3b7-c87d30684d5f" xlink:to="loc_srt_RestatementDomain_14846f27-df0c-4e1f-a016-4c7b8768b382" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementAdjustmentMember_08a460d7-f6db-4283-9ab1-0c5d1d641cfb" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementAdjustmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RestatementDomain_14846f27-df0c-4e1f-a016-4c7b8768b382" xlink:to="loc_srt_RestatementAdjustmentMember_08a460d7-f6db-4283-9ab1-0c5d1d641cfb" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember_89b300e1-d978-47e0-b10e-68207ee4afd2" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RevisionOfPriorPeriodReclassificationAdjustmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RestatementDomain_14846f27-df0c-4e1f-a016-4c7b8768b382" xlink:to="loc_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember_89b300e1-d978-47e0-b10e-68207ee4afd2" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail" xlink:type="extended" id="ieb3efbde6f9449dcb6026eaed1c3d617_RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_29196823-7faa-4c8c-9149-9ce872aa0da6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_6018e536-eecf-4751-b5ff-83d12f95aaaf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_29196823-7faa-4c8c-9149-9ce872aa0da6" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_6018e536-eecf-4751-b5ff-83d12f95aaaf" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1_ecb020ee-26d7-424c-944f-b373418cf40e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskPercentage1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_29196823-7faa-4c8c-9149-9ce872aa0da6" xlink:to="loc_us-gaap_ConcentrationRiskPercentage1_ecb020ee-26d7-424c-944f-b373418cf40e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_2addcf16-d8e5-4da5-9e74-37232037937c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_29196823-7faa-4c8c-9149-9ce872aa0da6" xlink:to="loc_us-gaap_DisaggregationOfRevenueTable_2addcf16-d8e5-4da5-9e74-37232037937c" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MajorCustomersAxis_d50b5478-62b1-42ee-9e58-d492c91e0cff" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MajorCustomersAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_2addcf16-d8e5-4da5-9e74-37232037937c" xlink:to="loc_srt_MajorCustomersAxis_d50b5478-62b1-42ee-9e58-d492c91e0cff" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_NameOfMajorCustomerDomain_d50b5478-62b1-42ee-9e58-d492c91e0cff_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_NameOfMajorCustomerDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_MajorCustomersAxis_d50b5478-62b1-42ee-9e58-d492c91e0cff" xlink:to="loc_srt_NameOfMajorCustomerDomain_d50b5478-62b1-42ee-9e58-d492c91e0cff_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_NameOfMajorCustomerDomain_6a2d6702-a5cf-4d3f-9797-2a950c49abae" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_NameOfMajorCustomerDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_MajorCustomersAxis_d50b5478-62b1-42ee-9e58-d492c91e0cff" xlink:to="loc_srt_NameOfMajorCustomerDomain_6a2d6702-a5cf-4d3f-9797-2a950c49abae" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CustomerInstallationMember_76cfa7c5-bb96-4b12-80e5-f13f8bc88577" xlink:href="ibp-20221231.xsd#ibp_CustomerInstallationMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_6a2d6702-a5cf-4d3f-9797-2a950c49abae" xlink:to="loc_ibp_CustomerInstallationMember_76cfa7c5-bb96-4b12-80e5-f13f8bc88577" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_ResidentialNewConstructionMember_443985f6-798e-4ec5-a6b6-10956904c514" xlink:href="ibp-20221231.xsd#ibp_ResidentialNewConstructionMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_CustomerInstallationMember_76cfa7c5-bb96-4b12-80e5-f13f8bc88577" xlink:to="loc_ibp_ResidentialNewConstructionMember_443985f6-798e-4ec5-a6b6-10956904c514" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_RepairAndRemodelMember_91ae8709-e08a-4b8b-8790-865f76d17c2b" xlink:href="ibp-20221231.xsd#ibp_RepairAndRemodelMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_CustomerInstallationMember_76cfa7c5-bb96-4b12-80e5-f13f8bc88577" xlink:to="loc_ibp_RepairAndRemodelMember_91ae8709-e08a-4b8b-8790-865f76d17c2b" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CommercialMember_ff2c25d0-b967-4942-b2e3-4d849f45eb59" xlink:href="ibp-20221231.xsd#ibp_CommercialMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_CustomerInstallationMember_76cfa7c5-bb96-4b12-80e5-f13f8bc88577" xlink:to="loc_ibp_CommercialMember_ff2c25d0-b967-4942-b2e3-4d849f45eb59" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_OtherCustomerInstallationMember_7af88cd9-9385-4642-a587-de7e73726afa" xlink:href="ibp-20221231.xsd#ibp_OtherCustomerInstallationMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_6a2d6702-a5cf-4d3f-9797-2a950c49abae" xlink:to="loc_ibp_OtherCustomerInstallationMember_7af88cd9-9385-4642-a587-de7e73726afa" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis_f28eebc4-48b7-4992-a15b-dfbe5b96186a" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductOrServiceAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_2addcf16-d8e5-4da5-9e74-37232037937c" xlink:to="loc_srt_ProductOrServiceAxis_f28eebc4-48b7-4992-a15b-dfbe5b96186a" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_f28eebc4-48b7-4992-a15b-dfbe5b96186a_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductsAndServicesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ProductOrServiceAxis_f28eebc4-48b7-4992-a15b-dfbe5b96186a" xlink:to="loc_srt_ProductsAndServicesDomain_f28eebc4-48b7-4992-a15b-dfbe5b96186a_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_2e345486-1caa-4bb1-b472-e01e19fd8663" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductsAndServicesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ProductOrServiceAxis_f28eebc4-48b7-4992-a15b-dfbe5b96186a" xlink:to="loc_srt_ProductsAndServicesDomain_2e345486-1caa-4bb1-b472-e01e19fd8663" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_ProductInstallationMember_fdcc8421-cc20-4397-90f5-c4aa6290541b" xlink:href="ibp-20221231.xsd#ibp_ProductInstallationMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_2e345486-1caa-4bb1-b472-e01e19fd8663" xlink:to="loc_ibp_ProductInstallationMember_fdcc8421-cc20-4397-90f5-c4aa6290541b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_InsulationMember_4a2a7270-daf6-42b2-a617-5bab33841bad" xlink:href="ibp-20221231.xsd#ibp_InsulationMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_ProductInstallationMember_fdcc8421-cc20-4397-90f5-c4aa6290541b" xlink:to="loc_ibp_InsulationMember_4a2a7270-daf6-42b2-a617-5bab33841bad" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_ShowerDoorsShelvingAndMirrorsMember_ce2da31e-3824-4b96-bb15-964f6dcc2f0b" xlink:href="ibp-20221231.xsd#ibp_ShowerDoorsShelvingAndMirrorsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_ProductInstallationMember_fdcc8421-cc20-4397-90f5-c4aa6290541b" xlink:to="loc_ibp_ShowerDoorsShelvingAndMirrorsMember_ce2da31e-3824-4b96-bb15-964f6dcc2f0b" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_GarageDoorsMember_3aa605fd-86aa-4d5d-8ac5-9c73274497f8" xlink:href="ibp-20221231.xsd#ibp_GarageDoorsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_ProductInstallationMember_fdcc8421-cc20-4397-90f5-c4aa6290541b" xlink:to="loc_ibp_GarageDoorsMember_3aa605fd-86aa-4d5d-8ac5-9c73274497f8" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_WaterproofingMember_e3dac1c5-0c11-4894-af56-678344bcaded" xlink:href="ibp-20221231.xsd#ibp_WaterproofingMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_ProductInstallationMember_fdcc8421-cc20-4397-90f5-c4aa6290541b" xlink:to="loc_ibp_WaterproofingMember_e3dac1c5-0c11-4894-af56-678344bcaded" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_RainGuttersMember_dab017a8-b75e-4503-b31b-83f1598344b3" xlink:href="ibp-20221231.xsd#ibp_RainGuttersMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_ProductInstallationMember_fdcc8421-cc20-4397-90f5-c4aa6290541b" xlink:to="loc_ibp_RainGuttersMember_dab017a8-b75e-4503-b31b-83f1598344b3" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FireproofingAndFirestoppingMember_88a32959-dbb9-4dbd-980c-9d4d1830e8a2" xlink:href="ibp-20221231.xsd#ibp_FireproofingAndFirestoppingMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_ProductInstallationMember_fdcc8421-cc20-4397-90f5-c4aa6290541b" xlink:to="loc_ibp_FireproofingAndFirestoppingMember_88a32959-dbb9-4dbd-980c-9d4d1830e8a2" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_WindowBlindsMember_75710bbc-89e6-43e1-b97b-18bd1a3fd5d6" xlink:href="ibp-20221231.xsd#ibp_WindowBlindsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_ProductInstallationMember_fdcc8421-cc20-4397-90f5-c4aa6290541b" xlink:to="loc_ibp_WindowBlindsMember_75710bbc-89e6-43e1-b97b-18bd1a3fd5d6" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_OtherBuildingProductsMember_9e59921a-b36a-4d44-b9ea-cc7100613926" xlink:href="ibp-20221231.xsd#ibp_OtherBuildingProductsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_ProductInstallationMember_fdcc8421-cc20-4397-90f5-c4aa6290541b" xlink:to="loc_ibp_OtherBuildingProductsMember_9e59921a-b36a-4d44-b9ea-cc7100613926" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_OtherProductInstallationMember_d9343ed9-b879-4e55-9b6c-eaae27d5a692" xlink:href="ibp-20221231.xsd#ibp_OtherProductInstallationMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_2e345486-1caa-4bb1-b472-e01e19fd8663" xlink:to="loc_ibp_OtherProductInstallationMember_d9343ed9-b879-4e55-9b6c-eaae27d5a692" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_4d1191d0-9c31-4231-9347-882d86004106" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_2addcf16-d8e5-4da5-9e74-37232037937c" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_4d1191d0-9c31-4231-9347-882d86004106" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_4d1191d0-9c31-4231-9347-882d86004106_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_4d1191d0-9c31-4231-9347-882d86004106" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_4d1191d0-9c31-4231-9347-882d86004106_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_46aafc64-ab1f-44d5-a8d9-016082f5c1fb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_4d1191d0-9c31-4231-9347-882d86004106" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_46aafc64-ab1f-44d5-a8d9-016082f5c1fb" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerMember_b16c8ca0-1053-4073-bcf3-1c3572198f39" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_46aafc64-ab1f-44d5-a8d9-016082f5c1fb" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerMember_b16c8ca0-1053-4073-bcf3-1c3572198f39" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerProductAndServiceBenchmarkMember_503645ab-e7a2-4cdb-bef7-9827cc708d93" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerProductAndServiceBenchmarkMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_46aafc64-ab1f-44d5-a8d9-016082f5c1fb" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerProductAndServiceBenchmarkMember_503645ab-e7a2-4cdb-bef7-9827cc708d93" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis_42da1f89-7224-44f3-ad95-429f95b5756f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_2addcf16-d8e5-4da5-9e74-37232037937c" xlink:to="loc_us-gaap_ConcentrationRiskByTypeAxis_42da1f89-7224-44f3-ad95-429f95b5756f" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_42da1f89-7224-44f3-ad95-429f95b5756f_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_42da1f89-7224-44f3-ad95-429f95b5756f" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_42da1f89-7224-44f3-ad95-429f95b5756f_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_6ddd8957-7df9-40ef-884f-051690b556d5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_42da1f89-7224-44f3-ad95-429f95b5756f" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_6ddd8957-7df9-40ef-884f-051690b556d5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerConcentrationRiskMember_d552690c-e399-4553-8351-6ddfef78906f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerConcentrationRiskMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_6ddd8957-7df9-40ef-884f-051690b556d5" xlink:to="loc_us-gaap_CustomerConcentrationRiskMember_d552690c-e399-4553-8351-6ddfef78906f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductConcentrationRiskMember_658d3bbc-47dd-4fb6-9a8d-a52e50cef857" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductConcentrationRiskMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_6ddd8957-7df9-40ef-884f-051690b556d5" xlink:to="loc_us-gaap_ProductConcentrationRiskMember_658d3bbc-47dd-4fb6-9a8d-a52e50cef857" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/RevenueRecognitionAdditionalInformationDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#RevenueRecognitionAdditionalInformationDetail"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/RevenueRecognitionAdditionalInformationDetail" xlink:type="extended" id="ia87f3d1e2b0b416da0c1f23afcde004c_RevenueRecognitionAdditionalInformationDetail">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_3b8f18fa-12ce-4a91-a143-c0b57b2190b2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_5170ffbf-c4a1-4c21-8ce2-f3bc5429f1a9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_3b8f18fa-12ce-4a91-a143-c0b57b2190b2" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_5170ffbf-c4a1-4c21-8ce2-f3bc5429f1a9" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_a7c11409-df23-4e5d-9ced-8b0cdeb512d5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_3b8f18fa-12ce-4a91-a143-c0b57b2190b2" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_a7c11409-df23-4e5d-9ced-8b0cdeb512d5" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_9ec89fbb-6d32-4586-8923-036731acf81a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_a7c11409-df23-4e5d-9ced-8b0cdeb512d5" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_9ec89fbb-6d32-4586-8923-036731acf81a" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/RevenueRecognitionAdditionalInformationDetail_1" xlink:type="simple" xlink:href="ibp-20221231.xsd#RevenueRecognitionAdditionalInformationDetail_1"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/RevenueRecognitionAdditionalInformationDetail_1" xlink:type="extended" id="i9e9dd142bf684353900ba07535d9a761_RevenueRecognitionAdditionalInformationDetail_1">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_3b8f18fa-12ce-4a91-a143-c0b57b2190b2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_5170ffbf-c4a1-4c21-8ce2-f3bc5429f1a9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_3b8f18fa-12ce-4a91-a143-c0b57b2190b2" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_5170ffbf-c4a1-4c21-8ce2-f3bc5429f1a9" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_a7c11409-df23-4e5d-9ced-8b0cdeb512d5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_3b8f18fa-12ce-4a91-a143-c0b57b2190b2" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_a7c11409-df23-4e5d-9ced-8b0cdeb512d5" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/CreditLossesAdditionalInformationDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#CreditLossesAdditionalInformationDetails"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/CreditLossesAdditionalInformationDetails" xlink:type="extended" id="i80678f8125644bdf8d1c0f46c10fe797_CreditLossesAdditionalInformationDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems_604befde-de20-42c3-8952-dce66e5a0eca" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_85eedd36-d215-4234-a6f7-4bb70ca4994b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems_604befde-de20-42c3-8952-dce66e5a0eca" xlink:to="loc_us-gaap_StockholdersEquity_85eedd36-d215-4234-a6f7-4bb70ca4994b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxAssetsNet_af0b29db-7fb9-40a1-8527-eaf777583b10" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxAssetsNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems_604befde-de20-42c3-8952-dce66e5a0eca" xlink:to="loc_us-gaap_DeferredIncomeTaxAssetsNet_af0b29db-7fb9-40a1-8527-eaf777583b10" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable_014eaf9b-4155-4405-9848-8013cf07648c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems_604befde-de20-42c3-8952-dce66e5a0eca" xlink:to="loc_us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable_014eaf9b-4155-4405-9848-8013cf07648c" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_4845ff4d-25e6-43c9-b04e-a8767a5198b4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable_014eaf9b-4155-4405-9848-8013cf07648c" xlink:to="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_4845ff4d-25e6-43c9-b04e-a8767a5198b4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TypeOfAdoptionMember_4845ff4d-25e6-43c9-b04e-a8767a5198b4_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfAdoptionMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_4845ff4d-25e6-43c9-b04e-a8767a5198b4" xlink:to="loc_us-gaap_TypeOfAdoptionMember_4845ff4d-25e6-43c9-b04e-a8767a5198b4_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TypeOfAdoptionMember_553fa0b2-b580-46b6-a51c-5e6ef24569a3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfAdoptionMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_4845ff4d-25e6-43c9-b04e-a8767a5198b4" xlink:to="loc_us-gaap_TypeOfAdoptionMember_553fa0b2-b580-46b6-a51c-5e6ef24569a3" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingStandardsUpdate201613Member_5a391adc-3836-4bbb-b2cb-f3cf854b8c8f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingStandardsUpdate201613Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TypeOfAdoptionMember_553fa0b2-b580-46b6-a51c-5e6ef24569a3" xlink:to="loc_us-gaap_AccountingStandardsUpdate201613Member_5a391adc-3836-4bbb-b2cb-f3cf854b8c8f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_ab4ffb01-aa15-4ada-81d4-ba0bde2f3a47" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable_014eaf9b-4155-4405-9848-8013cf07648c" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_ab4ffb01-aa15-4ada-81d4-ba0bde2f3a47" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_ab4ffb01-aa15-4ada-81d4-ba0bde2f3a47_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_ab4ffb01-aa15-4ada-81d4-ba0bde2f3a47" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_ab4ffb01-aa15-4ada-81d4-ba0bde2f3a47_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_3c47fd73-e89b-4a5d-83fd-5cb9d1a6f1a0" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_ab4ffb01-aa15-4ada-81d4-ba0bde2f3a47" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_3c47fd73-e89b-4a5d-83fd-5cb9d1a6f1a0" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_7a9c6bd2-8f77-41a6-8abd-c728c4c18a9f" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_3c47fd73-e89b-4a5d-83fd-5cb9d1a6f1a0" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_7a9c6bd2-8f77-41a6-8abd-c728c4c18a9f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_161a5504-eaba-4716-8ed9-5ee77cf5cb0e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable_014eaf9b-4155-4405-9848-8013cf07648c" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_161a5504-eaba-4716-8ed9-5ee77cf5cb0e" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_161a5504-eaba-4716-8ed9-5ee77cf5cb0e_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_161a5504-eaba-4716-8ed9-5ee77cf5cb0e" xlink:to="loc_us-gaap_EquityComponentDomain_161a5504-eaba-4716-8ed9-5ee77cf5cb0e_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_eeabe70d-4d53-4963-8c55-feb8489e78c8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_161a5504-eaba-4716-8ed9-5ee77cf5cb0e" xlink:to="loc_us-gaap_EquityComponentDomain_eeabe70d-4d53-4963-8c55-feb8489e78c8" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember_a4182e86-87ca-4259-999f-da579cf774ce" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_eeabe70d-4d53-4963-8c55-feb8489e78c8" xlink:to="loc_us-gaap_RetainedEarningsMember_a4182e86-87ca-4259-999f-da579cf774ce" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/CreditLossesScheduleofChangesinAllowanceforCreditLossesDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#CreditLossesScheduleofChangesinAllowanceforCreditLossesDetails"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/CreditLossesScheduleofChangesinAllowanceforCreditLossesDetails" xlink:type="extended" id="i46a0f68dddb0452d83d82344fd19ecf3_CreditLossesScheduleofChangesinAllowanceforCreditLossesDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems_524d9eba-0920-44e4-97b1-2c6ed5ce76d4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_ccab1016-c7b9-4f20-b827-0ec65b5807ac" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems_524d9eba-0920-44e4-97b1-2c6ed5ce76d4" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_ccab1016-c7b9-4f20-b827-0ec65b5807ac" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable_d5d58306-4c56-4708-a1be-b452e2053201" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_ccab1016-c7b9-4f20-b827-0ec65b5807ac" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable_d5d58306-4c56-4708-a1be-b452e2053201" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts_7236634d-7738-4171-ada9-9a2748c09aac" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProvisionForDoubtfulAccounts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_ccab1016-c7b9-4f20-b827-0ec65b5807ac" xlink:to="loc_us-gaap_ProvisionForDoubtfulAccounts_7236634d-7738-4171-ada9-9a2748c09aac" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries_53b16ed7-c118-4379-a13a-6891c453884e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_ccab1016-c7b9-4f20-b827-0ec65b5807ac" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries_53b16ed7-c118-4379-a13a-6891c453884e" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs_720973e5-1f9e-43d0-bc8e-6db99b0849ad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_ccab1016-c7b9-4f20-b827-0ec65b5807ac" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs_720973e5-1f9e-43d0-bc8e-6db99b0849ad" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable_7cbf4e81-996b-4b85-9eb1-957d528ca0ea" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivable"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable_9553113b-b3d1-4c8d-9e11-c160da64bb7e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems_524d9eba-0920-44e4-97b1-2c6ed5ce76d4" xlink:to="loc_us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable_9553113b-b3d1-4c8d-9e11-c160da64bb7e" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_b375395a-b446-43c3-90f5-73d95939584a" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable_9553113b-b3d1-4c8d-9e11-c160da64bb7e" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_b375395a-b446-43c3-90f5-73d95939584a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_b375395a-b446-43c3-90f5-73d95939584a_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_b375395a-b446-43c3-90f5-73d95939584a" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_b375395a-b446-43c3-90f5-73d95939584a_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_493ceb18-c344-4395-97b7-325cc6667104" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_b375395a-b446-43c3-90f5-73d95939584a" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_493ceb18-c344-4395-97b7-325cc6667104" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_69d88949-b8c2-438e-8535-a6be5c3bfdaa" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_493ceb18-c344-4395-97b7-325cc6667104" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_69d88949-b8c2-438e-8535-a6be5c3bfdaa" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_e356e56a-db4d-4921-9be3-d57a9e77cc8f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable_9553113b-b3d1-4c8d-9e11-c160da64bb7e" xlink:to="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_e356e56a-db4d-4921-9be3-d57a9e77cc8f" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TypeOfAdoptionMember_e356e56a-db4d-4921-9be3-d57a9e77cc8f_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfAdoptionMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_e356e56a-db4d-4921-9be3-d57a9e77cc8f" xlink:to="loc_us-gaap_TypeOfAdoptionMember_e356e56a-db4d-4921-9be3-d57a9e77cc8f_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TypeOfAdoptionMember_9e44c033-270b-4bad-bd86-7b0fa3f19350" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfAdoptionMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_e356e56a-db4d-4921-9be3-d57a9e77cc8f" xlink:to="loc_us-gaap_TypeOfAdoptionMember_9e44c033-270b-4bad-bd86-7b0fa3f19350" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingStandardsUpdate201613Member_dbf07f17-d804-43d9-a2cf-e1e6633aa3bb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingStandardsUpdate201613Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TypeOfAdoptionMember_9e44c033-270b-4bad-bd86-7b0fa3f19350" xlink:to="loc_us-gaap_AccountingStandardsUpdate201613Member_dbf07f17-d804-43d9-a2cf-e1e6633aa3bb" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#PropertyandEquipmentScheduleofPropertyandEquipmentDetails"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails" xlink:type="extended" id="i4e302dfabe59426cac72e34a45c381de_PropertyandEquipmentScheduleofPropertyandEquipmentDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems_52590e24-091c-483d-afcc-ebb840f2a146" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_2d1cfed5-2063-4f37-96d1-e2dbd6234a4d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_52590e24-091c-483d-afcc-ebb840f2a146" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_2d1cfed5-2063-4f37-96d1-e2dbd6234a4d" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization_d2bc3d28-ff08-4ba4-a3de-3247b7320f80" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_52590e24-091c-483d-afcc-ebb840f2a146" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization_d2bc3d28-ff08-4ba4-a3de-3247b7320f80" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_a52078af-2477-44f6-971c-246b47dab602" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_52590e24-091c-483d-afcc-ebb840f2a146" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_a52078af-2477-44f6-971c-246b47dab602" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_d3b00ea3-5c5d-4fbd-a3dc-e731d32606f7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_52590e24-091c-483d-afcc-ebb840f2a146" xlink:to="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_d3b00ea3-5c5d-4fbd-a3dc-e731d32606f7" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_6ec69806-57e4-4d10-9643-fe90adbd4ec3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_d3b00ea3-5c5d-4fbd-a3dc-e731d32606f7" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_6ec69806-57e4-4d10-9643-fe90adbd4ec3" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_6ec69806-57e4-4d10-9643-fe90adbd4ec3_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_6ec69806-57e4-4d10-9643-fe90adbd4ec3" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_6ec69806-57e4-4d10-9643-fe90adbd4ec3_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_4f89e543-7e2b-4695-b892-2fb4826f4afd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_6ec69806-57e4-4d10-9643-fe90adbd4ec3" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_4f89e543-7e2b-4695-b892-2fb4826f4afd" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LandMember_c9256390-16bb-4415-b4b4-5c11a24a22b7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LandMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_4f89e543-7e2b-4695-b892-2fb4826f4afd" xlink:to="loc_us-gaap_LandMember_c9256390-16bb-4415-b4b4-5c11a24a22b7" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BuildingMember_c137df07-a4e3-4e90-bf85-a7ba7739aee7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BuildingMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_4f89e543-7e2b-4695-b892-2fb4826f4afd" xlink:to="loc_us-gaap_BuildingMember_c137df07-a4e3-4e90-bf85-a7ba7739aee7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseholdImprovementsMember_d931b5ab-76e1-402a-aba9-87548b0d93b7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseholdImprovementsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_4f89e543-7e2b-4695-b892-2fb4826f4afd" xlink:to="loc_us-gaap_LeaseholdImprovementsMember_d931b5ab-76e1-402a-aba9-87548b0d93b7" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FurnitureAndFixturesMember_f67dd425-7700-4d4d-b35e-bc27bb442f29" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FurnitureAndFixturesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_4f89e543-7e2b-4695-b892-2fb4826f4afd" xlink:to="loc_us-gaap_FurnitureAndFixturesMember_f67dd425-7700-4d4d-b35e-bc27bb442f29" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_VehiclesAndEquipmentMember_0772c2d7-b770-45f3-beb6-d885f9d834dc" xlink:href="ibp-20221231.xsd#ibp_VehiclesAndEquipmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_4f89e543-7e2b-4695-b892-2fb4826f4afd" xlink:to="loc_ibp_VehiclesAndEquipmentMember_0772c2d7-b770-45f3-beb6-d885f9d834dc" xlink:type="arc" order="4"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofDepreciationandAmortizationExpenseonPropertyandEquipmentbyIncomeStatementCategoryDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#PropertyandEquipmentScheduleofDepreciationandAmortizationExpenseonPropertyandEquipmentbyIncomeStatementCategoryDetails"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofDepreciationandAmortizationExpenseonPropertyandEquipmentbyIncomeStatementCategoryDetails" xlink:type="extended" id="i689b8eb1a3d64b95918fc2d842e34864_PropertyandEquipmentScheduleofDepreciationandAmortizationExpenseonPropertyandEquipmentbyIncomeStatementCategoryDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems_a8c4bdf1-19b0-4857-a423-cf0d85593f3a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationAndAmortization_6be4f83d-8f07-4bc8-970b-969bbefe5e16" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DepreciationAndAmortization"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_a8c4bdf1-19b0-4857-a423-cf0d85593f3a" xlink:to="loc_us-gaap_DepreciationAndAmortization_6be4f83d-8f07-4bc8-970b-969bbefe5e16" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_1dc22b26-6c17-4237-8468-b718dd2a629a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_a8c4bdf1-19b0-4857-a423-cf0d85593f3a" xlink:to="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_1dc22b26-6c17-4237-8468-b718dd2a629a" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_3b1d9442-7e80-4a8a-9936-f1ef6d7565b7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_1dc22b26-6c17-4237-8468-b718dd2a629a" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_3b1d9442-7e80-4a8a-9936-f1ef6d7565b7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_3b1d9442-7e80-4a8a-9936-f1ef6d7565b7_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_3b1d9442-7e80-4a8a-9936-f1ef6d7565b7" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_3b1d9442-7e80-4a8a-9936-f1ef6d7565b7_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_49aad3bc-af43-4bea-bbd0-53e57ef3b9db" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_3b1d9442-7e80-4a8a-9936-f1ef6d7565b7" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_49aad3bc-af43-4bea-bbd0-53e57ef3b9db" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfSalesMember_10a1a89d-12e2-4539-8681-346e1324ef76" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfSalesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_49aad3bc-af43-4bea-bbd0-53e57ef3b9db" xlink:to="loc_us-gaap_CostOfSalesMember_10a1a89d-12e2-4539-8681-346e1324ef76" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpenseMember_8ce95ce7-1209-4c57-8c11-07da924dfd1b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GeneralAndAdministrativeExpenseMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_49aad3bc-af43-4bea-bbd0-53e57ef3b9db" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpenseMember_8ce95ce7-1209-4c57-8c11-07da924dfd1b" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails" xlink:type="extended" id="ib4b0a27c1a9f4b35b8245f4b11134795_GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillLineItems_84fdb7e7-3bb0-4439-9d71-6e39546f1b41" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillRollForward_8daf5964-cf20-4e30-a025-65efd5eb35e5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillLineItems_84fdb7e7-3bb0-4439-9d71-6e39546f1b41" xlink:to="loc_us-gaap_GoodwillRollForward_8daf5964-cf20-4e30-a025-65efd5eb35e5" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillGross_9c2bf2c6-0781-4783-9dbe-0edec8e2fa0d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillGross"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillRollForward_8daf5964-cf20-4e30-a025-65efd5eb35e5" xlink:to="loc_us-gaap_GoodwillGross_9c2bf2c6-0781-4783-9dbe-0edec8e2fa0d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAcquiredDuringPeriod_3ef8df9f-41b2-43c6-81a7-880c6b51ab62" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAcquiredDuringPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillRollForward_8daf5964-cf20-4e30-a025-65efd5eb35e5" xlink:to="loc_us-gaap_GoodwillAcquiredDuringPeriod_3ef8df9f-41b2-43c6-81a7-880c6b51ab62" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillOtherIncreaseDecrease_fd9286ec-4930-4757-8789-acb71be7b3c5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillOtherIncreaseDecrease"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillRollForward_8daf5964-cf20-4e30-a025-65efd5eb35e5" xlink:to="loc_us-gaap_GoodwillOtherIncreaseDecrease_fd9286ec-4930-4757-8789-acb71be7b3c5" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillGross_7d67f399-32d9-4104-bfd8-8683a938eafa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillGross"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillImpairedAccumulatedImpairmentLoss_7d8422c9-3b61-4a87-aa3d-1ba71d54573b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillImpairedAccumulatedImpairmentLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillLineItems_84fdb7e7-3bb0-4439-9d71-6e39546f1b41" xlink:to="loc_us-gaap_GoodwillImpairedAccumulatedImpairmentLoss_7d8422c9-3b61-4a87-aa3d-1ba71d54573b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_c842cb06-41d7-4c9a-a095-6013c7d30b8e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillLineItems_84fdb7e7-3bb0-4439-9d71-6e39546f1b41" xlink:to="loc_us-gaap_Goodwill_c842cb06-41d7-4c9a-a095-6013c7d30b8e" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfGoodwillTable_af2dbb92-a7df-4ee8-b8e6-11a9d1e2906d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfGoodwillTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_GoodwillLineItems_84fdb7e7-3bb0-4439-9d71-6e39546f1b41" xlink:to="loc_us-gaap_ScheduleOfGoodwillTable_af2dbb92-a7df-4ee8-b8e6-11a9d1e2906d" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_c441d416-e579-4fd4-b712-0e8c285c3ed8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_af2dbb92-a7df-4ee8-b8e6-11a9d1e2906d" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_c441d416-e579-4fd4-b712-0e8c285c3ed8" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_c441d416-e579-4fd4-b712-0e8c285c3ed8_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_c441d416-e579-4fd4-b712-0e8c285c3ed8" xlink:to="loc_us-gaap_SegmentDomain_c441d416-e579-4fd4-b712-0e8c285c3ed8_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_0890450b-b51e-4d94-9fff-ba90b7281573" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_c441d416-e579-4fd4-b712-0e8c285c3ed8" xlink:to="loc_us-gaap_SegmentDomain_0890450b-b51e-4d94-9fff-ba90b7281573" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_InstallationSegmentMember_8a5b91c4-e751-4276-a836-06aeea40a26e" xlink:href="ibp-20221231.xsd#ibp_InstallationSegmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_0890450b-b51e-4d94-9fff-ba90b7281573" xlink:to="loc_ibp_InstallationSegmentMember_8a5b91c4-e751-4276-a836-06aeea40a26e" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_OtherSegmentMember_4145dd6f-f68c-4f96-8367-4f1d98b07747" xlink:href="ibp-20221231.xsd#ibp_OtherSegmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_0890450b-b51e-4d94-9fff-ba90b7281573" xlink:to="loc_ibp_OtherSegmentMember_4145dd6f-f68c-4f96-8367-4f1d98b07747" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/GoodwillandIntangiblesAdditionalInformationDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#GoodwillandIntangiblesAdditionalInformationDetail"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/GoodwillandIntangiblesAdditionalInformationDetail" xlink:type="extended" id="i7621708d8c7148158f05c7a6c428a09b_GoodwillandIntangiblesAdditionalInformationDetail">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillLineItems_bbc1274b-86ea-4aae-8d8d-384d87130f4f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_e26a6849-2708-4d47-8347-bc00a09ece4f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillLineItems_bbc1274b-86ea-4aae-8d8d-384d87130f4f" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_e26a6849-2708-4d47-8347-bc00a09ece4f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfOperatingSegments_2e074cb8-fde0-4514-ab9b-3fd42b323733" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NumberOfOperatingSegments"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillLineItems_bbc1274b-86ea-4aae-8d8d-384d87130f4f" xlink:to="loc_us-gaap_NumberOfOperatingSegments_2e074cb8-fde0-4514-ab9b-3fd42b323733" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfReportingUnits_f2c070a5-af71-4afc-b2d4-2390d960ab65" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NumberOfReportingUnits"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillLineItems_bbc1274b-86ea-4aae-8d8d-384d87130f4f" xlink:to="loc_us-gaap_NumberOfReportingUnits_f2c070a5-af71-4afc-b2d4-2390d960ab65" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfGoodwillTable_a2eeec97-47da-4088-be6d-0849ffd272b8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfGoodwillTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_GoodwillLineItems_bbc1274b-86ea-4aae-8d8d-384d87130f4f" xlink:to="loc_us-gaap_ScheduleOfGoodwillTable_a2eeec97-47da-4088-be6d-0849ffd272b8" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementAxis_a7257fae-5a21-400b-9e3a-7e85f6b5fbde" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_a2eeec97-47da-4088-be6d-0849ffd272b8" xlink:to="loc_srt_RestatementAxis_a7257fae-5a21-400b-9e3a-7e85f6b5fbde" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementDomain_a7257fae-5a21-400b-9e3a-7e85f6b5fbde_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RestatementAxis_a7257fae-5a21-400b-9e3a-7e85f6b5fbde" xlink:to="loc_srt_RestatementDomain_a7257fae-5a21-400b-9e3a-7e85f6b5fbde_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementDomain_f5170c2a-da09-492f-ba68-c836d1bebf03" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RestatementAxis_a7257fae-5a21-400b-9e3a-7e85f6b5fbde" xlink:to="loc_srt_RestatementDomain_f5170c2a-da09-492f-ba68-c836d1bebf03" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementAdjustmentMember_ded8a662-0fda-4ddc-8b3f-a4013c01a0d1" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementAdjustmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RestatementDomain_f5170c2a-da09-492f-ba68-c836d1bebf03" xlink:to="loc_srt_RestatementAdjustmentMember_ded8a662-0fda-4ddc-8b3f-a4013c01a0d1" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_ee86daab-8afa-4df0-85b0-dc48f833486e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_a2eeec97-47da-4088-be6d-0849ffd272b8" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_ee86daab-8afa-4df0-85b0-dc48f833486e" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_ee86daab-8afa-4df0-85b0-dc48f833486e_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_ee86daab-8afa-4df0-85b0-dc48f833486e" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_ee86daab-8afa-4df0-85b0-dc48f833486e_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_f6e908ed-8999-4fba-a0da-2028e4ae3cf9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_ee86daab-8afa-4df0-85b0-dc48f833486e" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_f6e908ed-8999-4fba-a0da-2028e4ae3cf9" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DenisonGlassAndMirrorMember_749d69f0-33cf-4a87-9ec8-a3d130847240" xlink:href="ibp-20221231.xsd#ibp_DenisonGlassAndMirrorMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_f6e908ed-8999-4fba-a0da-2028e4ae3cf9" xlink:to="loc_ibp_DenisonGlassAndMirrorMember_749d69f0-33cf-4a87-9ec8-a3d130847240" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails" xlink:type="extended" id="i5bf5dbb1538548afa249d1dcaa3bb2ca_GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_e6eb8fb3-0f7e-496a-a7f2-6e8d3a843b4e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_835d4eac-cd68-4247-8883-0ae60cb47fa3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsGross"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_e6eb8fb3-0f7e-496a-a7f2-6e8d3a843b4e" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_835d4eac-cd68-4247-8883-0ae60cb47fa3" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_059ee1a9-7f73-484f-81de-c41a7f0ceac8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_e6eb8fb3-0f7e-496a-a7f2-6e8d3a843b4e" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_059ee1a9-7f73-484f-81de-c41a7f0ceac8" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_af049177-6165-45c5-920e-1b82ad464109" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_e6eb8fb3-0f7e-496a-a7f2-6e8d3a843b4e" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_af049177-6165-45c5-920e-1b82ad464109" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_d8cc63d3-98eb-41c3-89b4-97718a089d9b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_e6eb8fb3-0f7e-496a-a7f2-6e8d3a843b4e" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_d8cc63d3-98eb-41c3-89b4-97718a089d9b" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_52fe551b-6cc5-4e06-be30-7c2776f01739" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_d8cc63d3-98eb-41c3-89b4-97718a089d9b" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_52fe551b-6cc5-4e06-be30-7c2776f01739" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_52fe551b-6cc5-4e06-be30-7c2776f01739_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_52fe551b-6cc5-4e06-be30-7c2776f01739" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_52fe551b-6cc5-4e06-be30-7c2776f01739_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_ae324988-283f-4f3d-b4a7-ebed0bfce21a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_52fe551b-6cc5-4e06-be30-7c2776f01739" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_ae324988-283f-4f3d-b4a7-ebed0bfce21a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerRelationshipsMember_73120f1c-9548-4b7a-b48f-35fbb27ab9e2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerRelationshipsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_ae324988-283f-4f3d-b4a7-ebed0bfce21a" xlink:to="loc_us-gaap_CustomerRelationshipsMember_73120f1c-9548-4b7a-b48f-35fbb27ab9e2" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NoncompeteAgreementsMember_8b93ff17-b358-4c1e-b085-ac0fdb77552a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncompeteAgreementsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_ae324988-283f-4f3d-b4a7-ebed0bfce21a" xlink:to="loc_us-gaap_NoncompeteAgreementsMember_8b93ff17-b358-4c1e-b085-ac0fdb77552a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TrademarksAndTradeNamesMember_7540529f-c8c5-4322-933c-e295e07f8d1d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrademarksAndTradeNamesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_ae324988-283f-4f3d-b4a7-ebed0bfce21a" xlink:to="loc_us-gaap_TrademarksAndTradeNamesMember_7540529f-c8c5-4322-933c-e295e07f8d1d" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrderOrProductionBacklogMember_eeeae35a-927f-4d09-ac57-88d6709bae6a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OrderOrProductionBacklogMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_ae324988-283f-4f3d-b4a7-ebed0bfce21a" xlink:to="loc_us-gaap_OrderOrProductionBacklogMember_eeeae35a-927f-4d09-ac57-88d6709bae6a" xlink:type="arc" order="3"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/LongtermDebtScheduleofDebtDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#LongtermDebtScheduleofDebtDetail"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/LongtermDebtScheduleofDebtDetail" xlink:type="extended" id="if01a3573548b4d2f89bea28ec3833dd4_LongtermDebtScheduleofDebtDetail">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_6b4bdcf6-bb93-4205-b9b5-d9ee8fbfbc40" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebt_b926d999-90ee-47ea-8b97-9217b85f146b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebt"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6b4bdcf6-bb93-4205-b9b5-d9ee8fbfbc40" xlink:to="loc_us-gaap_LongTermDebt_b926d999-90ee-47ea-8b97-9217b85f146b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtCurrent_fbb36697-78ba-4657-872a-514b2ae3819d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6b4bdcf6-bb93-4205-b9b5-d9ee8fbfbc40" xlink:to="loc_us-gaap_LongTermDebtCurrent_fbb36697-78ba-4657-872a-514b2ae3819d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtNoncurrent_801aa748-6e95-4e27-b1c2-d2280676de64" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6b4bdcf6-bb93-4205-b9b5-d9ee8fbfbc40" xlink:to="loc_us-gaap_LongTermDebtNoncurrent_801aa748-6e95-4e27-b1c2-d2280676de64" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentUnamortizedDiscount_063d7b65-2903-4151-9808-a7f53d7643bb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentUnamortizedDiscount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6b4bdcf6-bb93-4205-b9b5-d9ee8fbfbc40" xlink:to="loc_us-gaap_DebtInstrumentUnamortizedDiscount_063d7b65-2903-4151-9808-a7f53d7643bb" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_9ccd2b96-634f-4512-8942-8e12fc98d7de" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6b4bdcf6-bb93-4205-b9b5-d9ee8fbfbc40" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_9ccd2b96-634f-4512-8942-8e12fc98d7de" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_d5794c2c-1818-414d-a89c-df77cd348f29" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6b4bdcf6-bb93-4205-b9b5-d9ee8fbfbc40" xlink:to="loc_us-gaap_DebtInstrumentTable_d5794c2c-1818-414d-a89c-df77cd348f29" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeAxis_4a3c940c-dc94-4555-a560-3e488f06c027" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_d5794c2c-1818-414d-a89c-df77cd348f29" xlink:to="loc_us-gaap_LongtermDebtTypeAxis_4a3c940c-dc94-4555-a560-3e488f06c027" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_4a3c940c-dc94-4555-a560-3e488f06c027_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_4a3c940c-dc94-4555-a560-3e488f06c027" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_4a3c940c-dc94-4555-a560-3e488f06c027_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_86186ebf-7ce1-4183-b552-b45728c9eed0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_4a3c940c-dc94-4555-a560-3e488f06c027" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_86186ebf-7ce1-4183-b552-b45728c9eed0" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SeniorNotesMember_c3fe47d6-dac0-410a-91d4-49a15e464435" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SeniorNotesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_86186ebf-7ce1-4183-b552-b45728c9eed0" xlink:to="loc_us-gaap_SeniorNotesMember_c3fe47d6-dac0-410a-91d4-49a15e464435" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MediumTermNotesMember_bb574ba3-f2ea-47e4-8786-9b5a6ae3f7ad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MediumTermNotesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_86186ebf-7ce1-4183-b552-b45728c9eed0" xlink:to="loc_us-gaap_MediumTermNotesMember_bb574ba3-f2ea-47e4-8786-9b5a6ae3f7ad" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NotesPayableOtherPayablesMember_79b985ad-3f7e-4a1c-8e71-5566f80e0000" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NotesPayableOtherPayablesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_86186ebf-7ce1-4183-b552-b45728c9eed0" xlink:to="loc_us-gaap_NotesPayableOtherPayablesMember_79b985ad-3f7e-4a1c-8e71-5566f80e0000" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_d699a4bd-02fa-4418-a9fa-3f2e75ed9bce" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_d5794c2c-1818-414d-a89c-df77cd348f29" xlink:to="loc_us-gaap_DebtInstrumentAxis_d699a4bd-02fa-4418-a9fa-3f2e75ed9bce" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_d699a4bd-02fa-4418-a9fa-3f2e75ed9bce_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_d699a4bd-02fa-4418-a9fa-3f2e75ed9bce" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_d699a4bd-02fa-4418-a9fa-3f2e75ed9bce_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_c09fe2e3-6a7a-46df-8f56-dd6e74f48860" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_d699a4bd-02fa-4418-a9fa-3f2e75ed9bce" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_c09fe2e3-6a7a-46df-8f56-dd6e74f48860" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember_67028ee1-1735-4377-93dd-9d7f2d57f6a5" xlink:href="ibp-20221231.xsd#ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_c09fe2e3-6a7a-46df-8f56-dd6e74f48860" xlink:to="loc_ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember_67028ee1-1735-4377-93dd-9d7f2d57f6a5" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_TermLoanAgreementMember_1c87d0b4-bfa2-4032-8d2e-dbf47af01f00" xlink:href="ibp-20221231.xsd#ibp_TermLoanAgreementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_c09fe2e3-6a7a-46df-8f56-dd6e74f48860" xlink:to="loc_ibp_TermLoanAgreementMember_1c87d0b4-bfa2-4032-8d2e-dbf47af01f00" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_VehicleAndEquipmentNotesMember_9a507c76-c682-4852-9eb2-b2b57ed28598" xlink:href="ibp-20221231.xsd#ibp_VehicleAndEquipmentNotesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_c09fe2e3-6a7a-46df-8f56-dd6e74f48860" xlink:to="loc_ibp_VehicleAndEquipmentNotesMember_9a507c76-c682-4852-9eb2-b2b57ed28598" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_30f13c3f-c7b2-4e2d-a687-9f01a8227532" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_d5794c2c-1818-414d-a89c-df77cd348f29" xlink:to="loc_srt_RangeAxis_30f13c3f-c7b2-4e2d-a687-9f01a8227532" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_30f13c3f-c7b2-4e2d-a687-9f01a8227532_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_30f13c3f-c7b2-4e2d-a687-9f01a8227532" xlink:to="loc_srt_RangeMember_30f13c3f-c7b2-4e2d-a687-9f01a8227532_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_12247728-7095-4cd2-a29f-58f336032ecf" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_30f13c3f-c7b2-4e2d-a687-9f01a8227532" xlink:to="loc_srt_RangeMember_12247728-7095-4cd2-a29f-58f336032ecf" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_1214dc0e-4503-4660-9651-3912f8a6003b" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_12247728-7095-4cd2-a29f-58f336032ecf" xlink:to="loc_srt_MinimumMember_1214dc0e-4503-4660-9651-3912f8a6003b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_da9c885f-7068-49b9-bffd-82550d712a79" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_12247728-7095-4cd2-a29f-58f336032ecf" xlink:to="loc_srt_MaximumMember_da9c885f-7068-49b9-bffd-82550d712a79" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#LongtermDebtAdditionalInformationDetail"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail" xlink:type="extended" id="i924e6b1a05004f5b917f9be6b542d24a_LongtermDebtAdditionalInformationDetail">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_48f8351b-7692-4dea-8e55-2c779adec395" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_48f8351b-7692-4dea-8e55-2c779adec395" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount_8dcb4b25-62a5-40c2-a98d-82e5e10d4255" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentFaceAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_us-gaap_DebtInstrumentFaceAmount_8dcb4b25-62a5-40c2-a98d-82e5e10d4255" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromDebtNetOfIssuanceCosts_2a95ebc9-f9fe-438a-93ad-d31cfd17fc47" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromDebtNetOfIssuanceCosts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_us-gaap_ProceedsFromDebtNetOfIssuanceCosts_2a95ebc9-f9fe-438a-93ad-d31cfd17fc47" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DebtInstrumentCovenantMarketCapitalizationThreshold_856e8682-07fb-43d5-85f9-78634614fa76" xlink:href="ibp-20221231.xsd#ibp_DebtInstrumentCovenantMarketCapitalizationThreshold"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_ibp_DebtInstrumentCovenantMarketCapitalizationThreshold_856e8682-07fb-43d5-85f9-78634614fa76" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTerm_c24c2240-dd1c-4580-a4c4-ef7eb4b53dc7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTerm"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_us-gaap_DebtInstrumentTerm_c24c2240-dd1c-4580-a4c4-ef7eb4b53dc7" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentPeriodicPaymentPrincipal_cfd05ab2-a68c-4de3-ad4c-81be3ceddef9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentPeriodicPaymentPrincipal"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_us-gaap_DebtInstrumentPeriodicPaymentPrincipal_cfd05ab2-a68c-4de3-ad4c-81be3ceddef9" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_c0f13a70-6cd0-4df3-b9ea-9866aaea0df2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_c0f13a70-6cd0-4df3-b9ea-9866aaea0df2" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredFinanceCostsNet_f80ca899-329a-4a22-a30f-17f4db5b0c4c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredFinanceCostsNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_us-gaap_DeferredFinanceCostsNet_f80ca899-329a-4a22-a30f-17f4db5b0c4c" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds_e76222e3-32d1-4edd-b350-9d3bc8f08532" xlink:href="ibp-20221231.xsd#ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds_e76222e3-32d1-4edd-b350-9d3bc8f08532" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds_4a63dba0-b6aa-49f8-b832-406817900d1b" xlink:href="ibp-20221231.xsd#ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds_4a63dba0-b6aa-49f8-b832-406817900d1b" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds2_9ebf3ae5-d40b-4e65-a1a2-46a9699bb27c" xlink:href="ibp-20221231.xsd#ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds2"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds2_9ebf3ae5-d40b-4e65-a1a2-46a9699bb27c" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds2_78fd8ff4-147e-4316-88f1-9ca7148680f6" xlink:href="ibp-20221231.xsd#ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds2"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds2_78fd8ff4-147e-4316-88f1-9ca7148680f6" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DebtInstrumentMaximumCashProceeds_052fde21-2a3d-4f9a-9e30-cd34448ca438" xlink:href="ibp-20221231.xsd#ibp_DebtInstrumentMaximumCashProceeds"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_ibp_DebtInstrumentMaximumCashProceeds_052fde21-2a3d-4f9a-9e30-cd34448ca438" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_120fd735-7c32-47ae-8090-f6ed6f4202c1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_120fd735-7c32-47ae-8090-f6ed6f4202c1" xlink:type="arc" order="13"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FixedChargeCoverageRatio_0cd3e978-d0b4-4974-88a7-e184c57049b5" xlink:href="ibp-20221231.xsd#ibp_FixedChargeCoverageRatio"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_ibp_FixedChargeCoverageRatio_0cd3e978-d0b4-4974-88a7-e184c57049b5" xlink:type="arc" order="14"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_e3a4532d-5c87-4284-80a8-292c7c05a8fc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_e3a4532d-5c87-4284-80a8-292c7c05a8fc" xlink:type="arc" order="15"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_b22ea7db-4ea2-4fec-b5d7-0a6635c34c5e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_b22ea7db-4ea2-4fec-b5d7-0a6635c34c5e" xlink:type="arc" order="16"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_0e9a0379-fa55-476e-86d1-02cd89c2187c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_0e9a0379-fa55-476e-86d1-02cd89c2187c" xlink:type="arc" order="17"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_LineOfCreditFacilityAccordionFeatureIncreaseLimit_1f69d3be-9009-43ed-a174-e4bf33cc66df" xlink:href="ibp-20221231.xsd#ibp_LineOfCreditFacilityAccordionFeatureIncreaseLimit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_ibp_LineOfCreditFacilityAccordionFeatureIncreaseLimit_1f69d3be-9009-43ed-a174-e4bf33cc66df" xlink:type="arc" order="18"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_47eb4426-cad7-4d2b-a3d9-9c8b694e2a2e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_us-gaap_DebtInstrumentTable_47eb4426-cad7-4d2b-a3d9-9c8b694e2a2e" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_67cf0d27-4aac-4c4a-a49f-a3f4fcdf8166" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_47eb4426-cad7-4d2b-a3d9-9c8b694e2a2e" xlink:to="loc_us-gaap_DebtInstrumentAxis_67cf0d27-4aac-4c4a-a49f-a3f4fcdf8166" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_67cf0d27-4aac-4c4a-a49f-a3f4fcdf8166_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_67cf0d27-4aac-4c4a-a49f-a3f4fcdf8166" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_67cf0d27-4aac-4c4a-a49f-a3f4fcdf8166_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_02fb0446-ee91-4a32-9d6f-091501674daf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_67cf0d27-4aac-4c4a-a49f-a3f4fcdf8166" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_02fb0446-ee91-4a32-9d6f-091501674daf" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember_26dc0f6a-f428-495f-9589-1180fed53717" xlink:href="ibp-20221231.xsd#ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_02fb0446-ee91-4a32-9d6f-091501674daf" xlink:to="loc_ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember_26dc0f6a-f428-495f-9589-1180fed53717" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_AblCreditAgreementMember_18dc0c53-99dd-4726-8e98-5f9c8bcef92b" xlink:href="ibp-20221231.xsd#ibp_AblCreditAgreementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_02fb0446-ee91-4a32-9d6f-091501674daf" xlink:to="loc_ibp_AblCreditAgreementMember_18dc0c53-99dd-4726-8e98-5f9c8bcef92b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_TermLoanMember_447c6cc0-7f0b-43ac-8b86-8a60f8bb7707" xlink:href="ibp-20221231.xsd#ibp_TermLoanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_02fb0446-ee91-4a32-9d6f-091501674daf" xlink:to="loc_ibp_TermLoanMember_447c6cc0-7f0b-43ac-8b86-8a60f8bb7707" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_b8178595-e728-4364-8b3c-4d9d995c2967" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_47eb4426-cad7-4d2b-a3d9-9c8b694e2a2e" xlink:to="loc_us-gaap_CreditFacilityAxis_b8178595-e728-4364-8b3c-4d9d995c2967" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_b8178595-e728-4364-8b3c-4d9d995c2967_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_CreditFacilityAxis_b8178595-e728-4364-8b3c-4d9d995c2967" xlink:to="loc_us-gaap_CreditFacilityDomain_b8178595-e728-4364-8b3c-4d9d995c2967_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_e6492340-df8d-4219-a1d9-973165f6118e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_CreditFacilityAxis_b8178595-e728-4364-8b3c-4d9d995c2967" xlink:to="loc_us-gaap_CreditFacilityDomain_e6492340-df8d-4219-a1d9-973165f6118e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevolvingCreditFacilityMember_f8c37ac7-e099-4b9a-96a9-dc56faa33a05" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevolvingCreditFacilityMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CreditFacilityDomain_e6492340-df8d-4219-a1d9-973165f6118e" xlink:to="loc_us-gaap_RevolvingCreditFacilityMember_f8c37ac7-e099-4b9a-96a9-dc56faa33a05" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LetterOfCreditMember_ce88670f-96f2-4ac0-8513-d72f44d45e96" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LetterOfCreditMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CreditFacilityDomain_e6492340-df8d-4219-a1d9-973165f6118e" xlink:to="loc_us-gaap_LetterOfCreditMember_ce88670f-96f2-4ac0-8513-d72f44d45e96" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_IncrementalRevolvingCreditFacilityMember_c16e2804-3e00-45e4-ad15-a9475415488e" xlink:href="ibp-20221231.xsd#ibp_IncrementalRevolvingCreditFacilityMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CreditFacilityDomain_e6492340-df8d-4219-a1d9-973165f6118e" xlink:to="loc_ibp_IncrementalRevolvingCreditFacilityMember_c16e2804-3e00-45e4-ad15-a9475415488e" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_SwingLineLoansMember_ba0e1031-caaf-409c-a15f-45bfcaa65253" xlink:href="ibp-20221231.xsd#ibp_SwingLineLoansMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CreditFacilityDomain_e6492340-df8d-4219-a1d9-973165f6118e" xlink:to="loc_ibp_SwingLineLoansMember_ba0e1031-caaf-409c-a15f-45bfcaa65253" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_MasterLoanAgreementMember_fcdaa2b2-fd29-4277-8d1c-1d914101f7ff" xlink:href="ibp-20221231.xsd#ibp_MasterLoanAgreementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CreditFacilityDomain_e6492340-df8d-4219-a1d9-973165f6118e" xlink:to="loc_ibp_MasterLoanAgreementMember_fcdaa2b2-fd29-4277-8d1c-1d914101f7ff" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeAxis_9673c399-3768-4d91-a107-08688cd47cc7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_47eb4426-cad7-4d2b-a3d9-9c8b694e2a2e" xlink:to="loc_us-gaap_LongtermDebtTypeAxis_9673c399-3768-4d91-a107-08688cd47cc7" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_9673c399-3768-4d91-a107-08688cd47cc7_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_9673c399-3768-4d91-a107-08688cd47cc7" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_9673c399-3768-4d91-a107-08688cd47cc7_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_c5487ae5-def4-4add-9edb-21c2927a7212" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_9673c399-3768-4d91-a107-08688cd47cc7" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_c5487ae5-def4-4add-9edb-21c2927a7212" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SeniorNotesMember_e3eb4f60-7947-4fe6-8270-364bfd0bd654" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SeniorNotesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_c5487ae5-def4-4add-9edb-21c2927a7212" xlink:to="loc_us-gaap_SeniorNotesMember_e3eb4f60-7947-4fe6-8270-364bfd0bd654" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_TermLoanMember_3a49f4a6-d3a6-41e7-bff7-af2d55a8b3c0" xlink:href="ibp-20221231.xsd#ibp_TermLoanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_c5487ae5-def4-4add-9edb-21c2927a7212" xlink:to="loc_ibp_TermLoanMember_3a49f4a6-d3a6-41e7-bff7-af2d55a8b3c0" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateAxis_2799b51c-52d2-4aae-b5b1-a5451c5715a0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_47eb4426-cad7-4d2b-a3d9-9c8b694e2a2e" xlink:to="loc_us-gaap_VariableRateAxis_2799b51c-52d2-4aae-b5b1-a5451c5715a0" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateDomain_2799b51c-52d2-4aae-b5b1-a5451c5715a0_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_VariableRateAxis_2799b51c-52d2-4aae-b5b1-a5451c5715a0" xlink:to="loc_us-gaap_VariableRateDomain_2799b51c-52d2-4aae-b5b1-a5451c5715a0_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateDomain_44a6926e-8a9d-4b2a-8a6f-6b19169bca93" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_VariableRateAxis_2799b51c-52d2-4aae-b5b1-a5451c5715a0" xlink:to="loc_us-gaap_VariableRateDomain_44a6926e-8a9d-4b2a-8a6f-6b19169bca93" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LondonInterbankOfferedRateLIBORMember_7d20b6e4-a098-4f5f-9707-da31ab1da008" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LondonInterbankOfferedRateLIBORMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_VariableRateDomain_44a6926e-8a9d-4b2a-8a6f-6b19169bca93" xlink:to="loc_us-gaap_LondonInterbankOfferedRateLIBORMember_7d20b6e4-a098-4f5f-9707-da31ab1da008" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EurodollarMember_26f0e914-1b9f-47a9-afea-62c233c36d36" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EurodollarMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_VariableRateDomain_44a6926e-8a9d-4b2a-8a6f-6b19169bca93" xlink:to="loc_us-gaap_EurodollarMember_26f0e914-1b9f-47a9-afea-62c233c36d36" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BaseRateMember_eda1f5e7-d756-4eb3-bb58-f7f45579fb9b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BaseRateMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_VariableRateDomain_44a6926e-8a9d-4b2a-8a6f-6b19169bca93" xlink:to="loc_us-gaap_BaseRateMember_eda1f5e7-d756-4eb3-bb58-f7f45579fb9b" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_7c7895c0-69ed-4ed9-87a3-08231c7ef6cb" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_47eb4426-cad7-4d2b-a3d9-9c8b694e2a2e" xlink:to="loc_srt_RangeAxis_7c7895c0-69ed-4ed9-87a3-08231c7ef6cb" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_7c7895c0-69ed-4ed9-87a3-08231c7ef6cb_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_7c7895c0-69ed-4ed9-87a3-08231c7ef6cb" xlink:to="loc_srt_RangeMember_7c7895c0-69ed-4ed9-87a3-08231c7ef6cb_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_b9461c69-40a3-42df-ae79-438e57446d45" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_7c7895c0-69ed-4ed9-87a3-08231c7ef6cb" xlink:to="loc_srt_RangeMember_b9461c69-40a3-42df-ae79-438e57446d45" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_22d75e58-76f8-4d6b-8b6c-f03399259fc6" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_b9461c69-40a3-42df-ae79-438e57446d45" xlink:to="loc_srt_MinimumMember_22d75e58-76f8-4d6b-8b6c-f03399259fc6" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_9b5be8e7-d466-42a9-9512-21fef7d2664b" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_b9461c69-40a3-42df-ae79-438e57446d45" xlink:to="loc_srt_MaximumMember_9b5be8e7-d466-42a9-9512-21fef7d2664b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermDebtTypeAxis_05bbc376-bb4c-49e3-84fa-cef5476859ce" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShortTermDebtTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_47eb4426-cad7-4d2b-a3d9-9c8b694e2a2e" xlink:to="loc_us-gaap_ShortTermDebtTypeAxis_05bbc376-bb4c-49e3-84fa-cef5476859ce" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermDebtTypeDomain_05bbc376-bb4c-49e3-84fa-cef5476859ce_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShortTermDebtTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ShortTermDebtTypeAxis_05bbc376-bb4c-49e3-84fa-cef5476859ce" xlink:to="loc_us-gaap_ShortTermDebtTypeDomain_05bbc376-bb4c-49e3-84fa-cef5476859ce_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermDebtTypeDomain_31f086d3-f1b7-40bf-9786-848b97da7bb2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShortTermDebtTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ShortTermDebtTypeAxis_05bbc376-bb4c-49e3-84fa-cef5476859ce" xlink:to="loc_us-gaap_ShortTermDebtTypeDomain_31f086d3-f1b7-40bf-9786-848b97da7bb2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LetterOfCreditMember_d7d6dbb1-3864-4b77-a046-728bfe5d1578" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LetterOfCreditMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShortTermDebtTypeDomain_31f086d3-f1b7-40bf-9786-848b97da7bb2" xlink:to="loc_us-gaap_LetterOfCreditMember_d7d6dbb1-3864-4b77-a046-728bfe5d1578" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseContractualTermAxis_e235607d-27e1-4d5d-89cc-d609973c6de4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseContractualTermAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_47eb4426-cad7-4d2b-a3d9-9c8b694e2a2e" xlink:to="loc_us-gaap_LeaseContractualTermAxis_e235607d-27e1-4d5d-89cc-d609973c6de4" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseContractualTermDomain_e235607d-27e1-4d5d-89cc-d609973c6de4_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseContractualTermDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_LeaseContractualTermAxis_e235607d-27e1-4d5d-89cc-d609973c6de4" xlink:to="loc_us-gaap_LeaseContractualTermDomain_e235607d-27e1-4d5d-89cc-d609973c6de4_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseContractualTermDomain_0704c2c6-b991-44ba-bf8a-08c4187b9879" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseContractualTermDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_LeaseContractualTermAxis_e235607d-27e1-4d5d-89cc-d609973c6de4" xlink:to="loc_us-gaap_LeaseContractualTermDomain_0704c2c6-b991-44ba-bf8a-08c4187b9879" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_VehicleAndEquipmentNotesMember_73c12909-6cc9-4394-88d6-c4837db0474b" xlink:href="ibp-20221231.xsd#ibp_VehicleAndEquipmentNotesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LeaseContractualTermDomain_0704c2c6-b991-44ba-bf8a-08c4187b9879" xlink:to="loc_ibp_VehicleAndEquipmentNotesMember_73c12909-6cc9-4394-88d6-c4837db0474b" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/LeasesLeaseCostFinanceandOperatingLeasesDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#LeasesLeaseCostFinanceandOperatingLeasesDetails"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/LeasesLeaseCostFinanceandOperatingLeasesDetails" xlink:type="extended" id="i091a049c5dc647ffbd8b2741bdd81f01_LeasesLeaseCostFinanceandOperatingLeasesDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeaseDescriptionLineItems_7d8e5566-447d-423d-ab80-75f76e99c846" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeLeaseDescriptionLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseCost_cc2244f7-a33f-450f-b76c-3b9c3e402a8a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseCost"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_7d8e5566-447d-423d-ab80-75f76e99c846" xlink:to="loc_us-gaap_OperatingLeaseCost_cc2244f7-a33f-450f-b76c-3b9c3e402a8a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCostAbstract_fdd76995-ad57-4202-a7a8-2ddd26d8c75f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseCostAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_7d8e5566-447d-423d-ab80-75f76e99c846" xlink:to="loc_us-gaap_LeaseCostAbstract_fdd76995-ad57-4202-a7a8-2ddd26d8c75f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseRightOfUseAssetAmortization_5a134de6-7baf-4eae-a0c3-8cd6d0953972" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseRightOfUseAssetAmortization"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LeaseCostAbstract_fdd76995-ad57-4202-a7a8-2ddd26d8c75f" xlink:to="loc_us-gaap_FinanceLeaseRightOfUseAssetAmortization_5a134de6-7baf-4eae-a0c3-8cd6d0953972" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseInterestExpense_1cc9c933-8f24-4623-ab28-d568340101b5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseInterestExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LeaseCostAbstract_fdd76995-ad57-4202-a7a8-2ddd26d8c75f" xlink:to="loc_us-gaap_FinanceLeaseInterestExpense_1cc9c933-8f24-4623-ab28-d568340101b5" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCost_abd02a0b-54a1-4fb5-a59c-8cd4526a23d2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseCost"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LeaseCostAbstract_fdd76995-ad57-4202-a7a8-2ddd26d8c75f" xlink:to="loc_us-gaap_LeaseCost_abd02a0b-54a1-4fb5-a59c-8cd4526a23d2" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableLeaseCost_5bd2a7d2-fc88-423c-a058-6ff1233e334f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableLeaseCost"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LeaseCostAbstract_fdd76995-ad57-4202-a7a8-2ddd26d8c75f" xlink:to="loc_us-gaap_VariableLeaseCost_5bd2a7d2-fc88-423c-a058-6ff1233e334f" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermLeaseCost_fc67f0c3-e805-48c2-b62a-a1aa30b8492c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShortTermLeaseCost"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LeaseCostAbstract_fdd76995-ad57-4202-a7a8-2ddd26d8c75f" xlink:to="loc_us-gaap_ShortTermLeaseCost_fc67f0c3-e805-48c2-b62a-a1aa30b8492c" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeaseDescriptionTable_0ca3b2e3-d4a7-4971-a65a-f730e4c682b0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeLeaseDescriptionTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_7d8e5566-447d-423d-ab80-75f76e99c846" xlink:to="loc_us-gaap_LesseeLeaseDescriptionTable_0ca3b2e3-d4a7-4971-a65a-f730e4c682b0" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseContractualTermAxis_a0018c90-44d6-4ad5-b222-f727e2cce730" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseContractualTermAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LesseeLeaseDescriptionTable_0ca3b2e3-d4a7-4971-a65a-f730e4c682b0" xlink:to="loc_us-gaap_LeaseContractualTermAxis_a0018c90-44d6-4ad5-b222-f727e2cce730" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseContractualTermDomain_a0018c90-44d6-4ad5-b222-f727e2cce730_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseContractualTermDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_LeaseContractualTermAxis_a0018c90-44d6-4ad5-b222-f727e2cce730" xlink:to="loc_us-gaap_LeaseContractualTermDomain_a0018c90-44d6-4ad5-b222-f727e2cce730_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseContractualTermDomain_60547631-8e44-4010-95c3-589c1c37db02" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseContractualTermDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_LeaseContractualTermAxis_a0018c90-44d6-4ad5-b222-f727e2cce730" xlink:to="loc_us-gaap_LeaseContractualTermDomain_60547631-8e44-4010-95c3-589c1c37db02" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_OperatingLeaseMember_40bdcbd2-bf32-4e6f-a478-e5d9881f2745" xlink:href="ibp-20221231.xsd#ibp_OperatingLeaseMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LeaseContractualTermDomain_60547631-8e44-4010-95c3-589c1c37db02" xlink:to="loc_ibp_OperatingLeaseMember_40bdcbd2-bf32-4e6f-a478-e5d9881f2745" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FinanceLeaseMember_454f0383-f922-42cc-9ae6-20b022fb590e" xlink:href="ibp-20221231.xsd#ibp_FinanceLeaseMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LeaseContractualTermDomain_60547631-8e44-4010-95c3-589c1c37db02" xlink:to="loc_ibp_FinanceLeaseMember_454f0383-f922-42cc-9ae6-20b022fb590e" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail" xlink:type="extended" id="i4b0ce91c89c546928b3a5b950e0d0d91_LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail">
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsLineItems_3b85dc88-7ba1-427f-a74e-df7a14a3030c" xlink:href="ibp-20221231.xsd#ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityAbstract_4bdbfd2b-7820-4af6-86d2-c86303a1e185" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsLineItems_3b85dc88-7ba1-427f-a74e-df7a14a3030c" xlink:to="loc_us-gaap_FinanceLeaseLiabilityAbstract_4bdbfd2b-7820-4af6-86d2-c86303a1e185" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths_62516847-2547-4615-ab45-fdb1ad6f946a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FinanceLeaseLiabilityAbstract_4bdbfd2b-7820-4af6-86d2-c86303a1e185" xlink:to="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths_62516847-2547-4615-ab45-fdb1ad6f946a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo_67fea384-0f41-4fbf-95a7-7fa482a1944c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FinanceLeaseLiabilityAbstract_4bdbfd2b-7820-4af6-86d2-c86303a1e185" xlink:to="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo_67fea384-0f41-4fbf-95a7-7fa482a1944c" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree_f09798c4-e0c0-4e36-8783-58df2451026b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FinanceLeaseLiabilityAbstract_4bdbfd2b-7820-4af6-86d2-c86303a1e185" xlink:to="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree_f09798c4-e0c0-4e36-8783-58df2451026b" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour_003a372b-aea9-4046-8c34-2257833bbf54" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FinanceLeaseLiabilityAbstract_4bdbfd2b-7820-4af6-86d2-c86303a1e185" xlink:to="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour_003a372b-aea9-4046-8c34-2257833bbf54" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive_341460fe-8e1a-423a-9091-2dd51ee5d809" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FinanceLeaseLiabilityAbstract_4bdbfd2b-7820-4af6-86d2-c86303a1e185" xlink:to="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive_341460fe-8e1a-423a-9091-2dd51ee5d809" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive_cd3ef3b6-8c86-4bdb-98cd-cc84e3523a50" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FinanceLeaseLiabilityAbstract_4bdbfd2b-7820-4af6-86d2-c86303a1e185" xlink:to="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive_cd3ef3b6-8c86-4bdb-98cd-cc84e3523a50" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDue_cde35ef8-952f-447b-8876-3611c68ae541" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FinanceLeaseLiabilityAbstract_4bdbfd2b-7820-4af6-86d2-c86303a1e185" xlink:to="loc_us-gaap_FinanceLeaseLiabilityPaymentsDue_cde35ef8-952f-447b-8876-3611c68ae541" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FinanceLeaseExecutoryCosts_055cf3cb-6bcc-461f-94d5-b5937fba7b3b" xlink:href="ibp-20221231.xsd#ibp_FinanceLeaseExecutoryCosts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FinanceLeaseLiabilityAbstract_4bdbfd2b-7820-4af6-86d2-c86303a1e185" xlink:to="loc_ibp_FinanceLeaseExecutoryCosts_055cf3cb-6bcc-461f-94d5-b5937fba7b3b" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount_c292ed18-b207-4177-a568-46a22e3d4bb0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FinanceLeaseLiabilityAbstract_4bdbfd2b-7820-4af6-86d2-c86303a1e185" xlink:to="loc_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount_c292ed18-b207-4177-a568-46a22e3d4bb0" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiability_798d088c-7dcd-4b1c-a6c1-a42c0ebe0311" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiability"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FinanceLeaseLiabilityAbstract_4bdbfd2b-7820-4af6-86d2-c86303a1e185" xlink:to="loc_us-gaap_FinanceLeaseLiability_798d088c-7dcd-4b1c-a6c1-a42c0ebe0311" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityCurrent_b79e894a-a8da-4b8a-9e85-505b7d0ec8ef" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FinanceLeaseLiabilityAbstract_4bdbfd2b-7820-4af6-86d2-c86303a1e185" xlink:to="loc_us-gaap_FinanceLeaseLiabilityCurrent_b79e894a-a8da-4b8a-9e85-505b7d0ec8ef" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityNoncurrent_4ee0fd87-e98e-4328-b5ae-a532fab3c09a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FinanceLeaseLiabilityAbstract_4bdbfd2b-7820-4af6-86d2-c86303a1e185" xlink:to="loc_us-gaap_FinanceLeaseLiabilityNoncurrent_4ee0fd87-e98e-4328-b5ae-a532fab3c09a" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityAbstract_c9b2a660-e039-458c-8d54-93d7dc9a5485" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsLineItems_3b85dc88-7ba1-427f-a74e-df7a14a3030c" xlink:to="loc_us-gaap_OperatingLeaseLiabilityAbstract_c9b2a660-e039-458c-8d54-93d7dc9a5485" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_e8392821-4cfe-4dda-8aa5-0c73ba0b37ed" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLeaseLiabilityAbstract_c9b2a660-e039-458c-8d54-93d7dc9a5485" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_e8392821-4cfe-4dda-8aa5-0c73ba0b37ed" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_6d311639-6ae4-479e-8626-c437c72bc537" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLeaseLiabilityAbstract_c9b2a660-e039-458c-8d54-93d7dc9a5485" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_6d311639-6ae4-479e-8626-c437c72bc537" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_70f92697-cbbc-4d70-95fa-61b0a70eb3d5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLeaseLiabilityAbstract_c9b2a660-e039-458c-8d54-93d7dc9a5485" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_70f92697-cbbc-4d70-95fa-61b0a70eb3d5" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_db5159ce-0c13-4184-b8bf-e27dad8c2faf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLeaseLiabilityAbstract_c9b2a660-e039-458c-8d54-93d7dc9a5485" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_db5159ce-0c13-4184-b8bf-e27dad8c2faf" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_b5f67c2e-0ea6-4d51-a2d5-7a97e7fec106" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLeaseLiabilityAbstract_c9b2a660-e039-458c-8d54-93d7dc9a5485" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_b5f67c2e-0ea6-4d51-a2d5-7a97e7fec106" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_9d4c5370-3028-4725-bf3d-7d58351349c7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLeaseLiabilityAbstract_c9b2a660-e039-458c-8d54-93d7dc9a5485" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_9d4c5370-3028-4725-bf3d-7d58351349c7" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_4076963a-592a-42e0-a04e-5c294b5eba31" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLeaseLiabilityAbstract_c9b2a660-e039-458c-8d54-93d7dc9a5485" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_4076963a-592a-42e0-a04e-5c294b5eba31" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_148733ec-3907-4ba7-8d13-65dd334cf9e8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLeaseLiabilityAbstract_c9b2a660-e039-458c-8d54-93d7dc9a5485" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_148733ec-3907-4ba7-8d13-65dd334cf9e8" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability_7a33db79-71d2-4b83-a04f-89882d4f461f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLeaseLiabilityAbstract_c9b2a660-e039-458c-8d54-93d7dc9a5485" xlink:to="loc_us-gaap_OperatingLeaseLiability_7a33db79-71d2-4b83-a04f-89882d4f461f" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_1d58ce78-1202-4c9b-9f45-a7e9c324b04f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLeaseLiabilityAbstract_c9b2a660-e039-458c-8d54-93d7dc9a5485" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_1d58ce78-1202-4c9b-9f45-a7e9c324b04f" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_3db6b5f6-7a1f-4a9e-9424-4514461d58f8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLeaseLiabilityAbstract_c9b2a660-e039-458c-8d54-93d7dc9a5485" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_3db6b5f6-7a1f-4a9e-9424-4514461d58f8" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsTable_6c850045-55bf-411b-8678-e0bce97dfae3" xlink:href="ibp-20221231.xsd#ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsLineItems_3b85dc88-7ba1-427f-a74e-df7a14a3030c" xlink:to="loc_ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsTable_6c850045-55bf-411b-8678-e0bce97dfae3" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis_50a3cf19-0cd9-4ed4-aab0-b91e6f20bdcb" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsTable_6c850045-55bf-411b-8678-e0bce97dfae3" xlink:to="loc_srt_RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis_50a3cf19-0cd9-4ed4-aab0-b91e6f20bdcb" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RealEstateAndAccumulatedDepreciationNameOfPropertyDomain_50a3cf19-0cd9-4ed4-aab0-b91e6f20bdcb_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RealEstateAndAccumulatedDepreciationNameOfPropertyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis_50a3cf19-0cd9-4ed4-aab0-b91e6f20bdcb" xlink:to="loc_srt_RealEstateAndAccumulatedDepreciationNameOfPropertyDomain_50a3cf19-0cd9-4ed4-aab0-b91e6f20bdcb_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RealEstateAndAccumulatedDepreciationNameOfPropertyDomain_bca1991c-113e-40ff-91b4-874cb28d3fbb" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RealEstateAndAccumulatedDepreciationNameOfPropertyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis_50a3cf19-0cd9-4ed4-aab0-b91e6f20bdcb" xlink:to="loc_srt_RealEstateAndAccumulatedDepreciationNameOfPropertyDomain_bca1991c-113e-40ff-91b4-874cb28d3fbb" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_RelatedPartyOperatingLeasesMember_977a62f4-2a54-4b89-9adb-80b3c65a3fa4" xlink:href="ibp-20221231.xsd#ibp_RelatedPartyOperatingLeasesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RealEstateAndAccumulatedDepreciationNameOfPropertyDomain_bca1991c-113e-40ff-91b4-874cb28d3fbb" xlink:to="loc_ibp_RelatedPartyOperatingLeasesMember_977a62f4-2a54-4b89-9adb-80b3c65a3fa4" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_OtherPartyOperatingLeasesMember_815b8c4e-d4c2-4cc1-9b45-4951f1fe0658" xlink:href="ibp-20221231.xsd#ibp_OtherPartyOperatingLeasesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RealEstateAndAccumulatedDepreciationNameOfPropertyDomain_bca1991c-113e-40ff-91b4-874cb28d3fbb" xlink:to="loc_ibp_OtherPartyOperatingLeasesMember_815b8c4e-d4c2-4cc1-9b45-4951f1fe0658" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail" xlink:type="extended" id="i8bc5d29d67d34dc2b0efd568e430629a_FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_7b135a8a-654a-4276-9f64-14613222b9af" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsFairValueDisclosureAbstract_a0426dc8-cf19-4aed-9bf8-46025b738c87" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsFairValueDisclosureAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_7b135a8a-654a-4276-9f64-14613222b9af" xlink:to="loc_us-gaap_AssetsFairValueDisclosureAbstract_a0426dc8-cf19-4aed-9bf8-46025b738c87" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsFairValueDisclosure_991f37f6-849b-4ac9-9aa9-c3eeb44f6e14" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsFairValueDisclosure"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsFairValueDisclosureAbstract_a0426dc8-cf19-4aed-9bf8-46025b738c87" xlink:to="loc_us-gaap_CashAndCashEquivalentsFairValueDisclosure_991f37f6-849b-4ac9-9aa9-c3eeb44f6e14" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeAssets_1aa06ba1-f294-498b-b334-00aedc5a8788" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeAssets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsFairValueDisclosureAbstract_a0426dc8-cf19-4aed-9bf8-46025b738c87" xlink:to="loc_us-gaap_DerivativeAssets_1aa06ba1-f294-498b-b334-00aedc5a8788" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeAssetStatementOfFinancialPositionExtensibleEnumeration_a6dd6d00-42cf-447d-8bfe-951532b764c3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeAssetStatementOfFinancialPositionExtensibleEnumeration"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsFairValueDisclosureAbstract_a0426dc8-cf19-4aed-9bf8-46025b738c87" xlink:to="loc_us-gaap_DerivativeAssetStatementOfFinancialPositionExtensibleEnumeration_a6dd6d00-42cf-447d-8bfe-951532b764c3" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsFairValueDisclosure_cdb4d9a5-7228-45c6-ad2f-169d194a177f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsFairValueDisclosure"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_7b135a8a-654a-4276-9f64-14613222b9af" xlink:to="loc_us-gaap_AssetsFairValueDisclosure_cdb4d9a5-7228-45c6-ad2f-169d194a177f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_ae3ee1ed-196c-41da-9761-d7ad61af582c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesFairValueDisclosureAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_7b135a8a-654a-4276-9f64-14613222b9af" xlink:to="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_ae3ee1ed-196c-41da-9761-d7ad61af582c" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationLiability_854a9da7-20e3-4d0c-9b4c-90086a658972" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationContingentConsiderationLiability"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_ae3ee1ed-196c-41da-9761-d7ad61af582c" xlink:to="loc_us-gaap_BusinessCombinationContingentConsiderationLiability_854a9da7-20e3-4d0c-9b4c-90086a658972" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeLiabilities_adddc9b4-9857-4b8d-b3d1-8782da259f45" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeLiabilities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_ae3ee1ed-196c-41da-9761-d7ad61af582c" xlink:to="loc_us-gaap_DerivativeLiabilities_adddc9b4-9857-4b8d-b3d1-8782da259f45" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeLiabilityStatementOfFinancialPositionExtensibleEnumeration_fb46253c-fdfb-46ad-8608-adc5412c79ec" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeLiabilityStatementOfFinancialPositionExtensibleEnumeration"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_ae3ee1ed-196c-41da-9761-d7ad61af582c" xlink:to="loc_us-gaap_DerivativeLiabilityStatementOfFinancialPositionExtensibleEnumeration_fb46253c-fdfb-46ad-8608-adc5412c79ec" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesFairValueDisclosure_c9596030-b7f2-49e4-989d-2694fc68eff5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesFairValueDisclosure"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_7b135a8a-654a-4276-9f64-14613222b9af" xlink:to="loc_us-gaap_LiabilitiesFairValueDisclosure_c9596030-b7f2-49e4-989d-2694fc68eff5" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_e6932b8d-3c0a-4d57-90da-ee55f9b419ae" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_7b135a8a-654a-4276-9f64-14613222b9af" xlink:to="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_e6932b8d-3c0a-4d57-90da-ee55f9b419ae" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_e87fc028-5f46-47ce-a57a-5f6f648dd8ff" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_e6932b8d-3c0a-4d57-90da-ee55f9b419ae" xlink:to="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_e87fc028-5f46-47ce-a57a-5f6f648dd8ff" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_e87fc028-5f46-47ce-a57a-5f6f648dd8ff_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_e87fc028-5f46-47ce-a57a-5f6f648dd8ff" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_e87fc028-5f46-47ce-a57a-5f6f648dd8ff_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_e2580403-f0ce-4132-aa96-0acfa6881706" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_e87fc028-5f46-47ce-a57a-5f6f648dd8ff" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_e2580403-f0ce-4132-aa96-0acfa6881706" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel1Member_67fdd764-8d43-4015-a74e-bba2fc15411d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel1Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_e2580403-f0ce-4132-aa96-0acfa6881706" xlink:to="loc_us-gaap_FairValueInputsLevel1Member_67fdd764-8d43-4015-a74e-bba2fc15411d" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel2Member_01d4bd86-f15d-4b0c-9e71-f94a4f45fd25" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel2Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_e2580403-f0ce-4132-aa96-0acfa6881706" xlink:to="loc_us-gaap_FairValueInputsLevel2Member_01d4bd86-f15d-4b0c-9e71-f94a4f45fd25" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel3Member_cf37b113-7a71-4448-b9e9-c8453319367c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel3Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_e2580403-f0ce-4132-aa96-0acfa6881706" xlink:to="loc_us-gaap_FairValueInputsLevel3Member_cf37b113-7a71-4448-b9e9-c8453319367c" xlink:type="arc" order="2"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/FairValuemeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#FairValuemeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetail"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/FairValuemeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetail" xlink:type="extended" id="i169d7b28e8e64bf4b0a4ffb710c50749_FairValuemeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetail">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_83f1e040-c80f-4e16-9d09-c0ec81ac4e3a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtFairValue_7f1887b4-33f8-4ff4-b222-7cd028a929ef" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_83f1e040-c80f-4e16-9d09-c0ec81ac4e3a" xlink:to="loc_us-gaap_LongTermDebtFairValue_7f1887b4-33f8-4ff4-b222-7cd028a929ef" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByBalanceSheetGroupingTable_dc2dcd9a-c2e1-4d5d-ba29-653c7d82fa5b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueByBalanceSheetGroupingTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_83f1e040-c80f-4e16-9d09-c0ec81ac4e3a" xlink:to="loc_us-gaap_FairValueByBalanceSheetGroupingTable_dc2dcd9a-c2e1-4d5d-ba29-653c7d82fa5b" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByMeasurementBasisAxis_389996b4-ac87-4b04-a7e7-17a47ca894a6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueByMeasurementBasisAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_dc2dcd9a-c2e1-4d5d-ba29-653c7d82fa5b" xlink:to="loc_us-gaap_FairValueByMeasurementBasisAxis_389996b4-ac87-4b04-a7e7-17a47ca894a6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PortionAtFairValueFairValueDisclosureMember_389996b4-ac87-4b04-a7e7-17a47ca894a6_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PortionAtFairValueFairValueDisclosureMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FairValueByMeasurementBasisAxis_389996b4-ac87-4b04-a7e7-17a47ca894a6" xlink:to="loc_us-gaap_PortionAtFairValueFairValueDisclosureMember_389996b4-ac87-4b04-a7e7-17a47ca894a6_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosureItemAmountsDomain_a754df53-c446-45bc-ae4a-e22db1eb1a87" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueDisclosureItemAmountsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FairValueByMeasurementBasisAxis_389996b4-ac87-4b04-a7e7-17a47ca894a6" xlink:to="loc_us-gaap_FairValueDisclosureItemAmountsDomain_a754df53-c446-45bc-ae4a-e22db1eb1a87" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PortionAtFairValueFairValueDisclosureMember_b20e7f66-0873-4bba-92ae-b7fa163c77c2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PortionAtFairValueFairValueDisclosureMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueDisclosureItemAmountsDomain_a754df53-c446-45bc-ae4a-e22db1eb1a87" xlink:to="loc_us-gaap_PortionAtFairValueFairValueDisclosureMember_b20e7f66-0873-4bba-92ae-b7fa163c77c2" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CarryingReportedAmountFairValueDisclosureMember_199e7b8e-188c-4a30-a12d-4d5b32282c6d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CarryingReportedAmountFairValueDisclosureMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PortionAtFairValueFairValueDisclosureMember_b20e7f66-0873-4bba-92ae-b7fa163c77c2" xlink:to="loc_us-gaap_CarryingReportedAmountFairValueDisclosureMember_199e7b8e-188c-4a30-a12d-4d5b32282c6d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_cfb9aa65-ba6c-442f-9d29-f105245443cb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_dc2dcd9a-c2e1-4d5d-ba29-653c7d82fa5b" xlink:to="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_cfb9aa65-ba6c-442f-9d29-f105245443cb" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_cfb9aa65-ba6c-442f-9d29-f105245443cb_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_cfb9aa65-ba6c-442f-9d29-f105245443cb" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_cfb9aa65-ba6c-442f-9d29-f105245443cb_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_653d9066-42b5-4cf3-a42d-fe5f8566335b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_cfb9aa65-ba6c-442f-9d29-f105245443cb" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_653d9066-42b5-4cf3-a42d-fe5f8566335b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel2Member_3dd5b47f-b716-40b5-ae06-1262c72edbb5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel2Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_653d9066-42b5-4cf3-a42d-fe5f8566335b" xlink:to="loc_us-gaap_FairValueInputsLevel2Member_3dd5b47f-b716-40b5-ae06-1262c72edbb5" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_f5b321ce-336d-4024-891e-d95cda90dece" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_dc2dcd9a-c2e1-4d5d-ba29-653c7d82fa5b" xlink:to="loc_us-gaap_DebtInstrumentAxis_f5b321ce-336d-4024-891e-d95cda90dece" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_f5b321ce-336d-4024-891e-d95cda90dece_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_f5b321ce-336d-4024-891e-d95cda90dece" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_f5b321ce-336d-4024-891e-d95cda90dece_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_062c6569-4b98-441f-86d6-67040e60eccb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_f5b321ce-336d-4024-891e-d95cda90dece" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_062c6569-4b98-441f-86d6-67040e60eccb" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember_a737e3df-7f46-4fcd-84ef-58d528228164" xlink:href="ibp-20221231.xsd#ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_062c6569-4b98-441f-86d6-67040e60eccb" xlink:to="loc_ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember_a737e3df-7f46-4fcd-84ef-58d528228164" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/InformationonSegmentsDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#InformationonSegmentsDetails"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/InformationonSegmentsDetails" xlink:type="extended" id="i5aab01fdd794454e9ebfc95e99cd343f_InformationonSegmentsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_c77ec9a6-f52c-4f3a-9049-aed93fba7330" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingInformationLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfOperatingSegments_cc852885-1354-4941-9707-1a45283dd9f1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NumberOfOperatingSegments"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_c77ec9a6-f52c-4f3a-9049-aed93fba7330" xlink:to="loc_us-gaap_NumberOfOperatingSegments_cc852885-1354-4941-9707-1a45283dd9f1" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfReportableSegments_482dd843-4b51-4c28-b1da-e2a9f768507d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NumberOfReportableSegments"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_c77ec9a6-f52c-4f3a-9049-aed93fba7330" xlink:to="loc_us-gaap_NumberOfReportableSegments_482dd843-4b51-4c28-b1da-e2a9f768507d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_b723a169-df99-4f2b-9865-b4690db2eb5f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_c77ec9a6-f52c-4f3a-9049-aed93fba7330" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_b723a169-df99-4f2b-9865-b4690db2eb5f" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization_e04fa01c-32d3-4b48-b91e-012062500aad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_c77ec9a6-f52c-4f3a-9049-aed93fba7330" xlink:to="loc_us-gaap_CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization_e04fa01c-32d3-4b48-b91e-012062500aad" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion_5fdc46f3-5320-4ef9-9109-6fd3e959aad3" xlink:href="ibp-20221231.xsd#ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_c77ec9a6-f52c-4f3a-9049-aed93fba7330" xlink:to="loc_ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion_5fdc46f3-5320-4ef9-9109-6fd3e959aad3" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_AdjustedGrossProfitPercentage_bccaeae7-dad0-4925-a631-04edbfe822d2" xlink:href="ibp-20221231.xsd#ibp_AdjustedGrossProfitPercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_c77ec9a6-f52c-4f3a-9049-aed93fba7330" xlink:to="loc_ibp_AdjustedGrossProfitPercentage_bccaeae7-dad0-4925-a631-04edbfe822d2" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization_67453dda-4254-4ee1-8830-35bd416c64fd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DepreciationDepletionAndAmortization"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_c77ec9a6-f52c-4f3a-9049-aed93fba7330" xlink:to="loc_us-gaap_DepreciationDepletionAndAmortization_67453dda-4254-4ee1-8830-35bd416c64fd" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_a84dda58-8e21-4bba-bec5-9fce4c64be60" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GrossProfit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_c77ec9a6-f52c-4f3a-9049-aed93fba7330" xlink:to="loc_us-gaap_GrossProfit_a84dda58-8e21-4bba-bec5-9fce4c64be60" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingExpenses_a7ccbe54-6080-4a59-b414-7ee184ed6c47" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingExpenses"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_c77ec9a6-f52c-4f3a-9049-aed93fba7330" xlink:to="loc_us-gaap_OperatingExpenses_a7ccbe54-6080-4a59-b414-7ee184ed6c47" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingExpense_c15a76dd-1ea1-44fc-b0bb-e6e8fdf081d0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_c77ec9a6-f52c-4f3a-9049-aed93fba7330" xlink:to="loc_us-gaap_SellingExpense_c15a76dd-1ea1-44fc-b0bb-e6e8fdf081d0" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_0c136b5c-f23c-4ab5-9e15-7ae3471d10e1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_c77ec9a6-f52c-4f3a-9049-aed93fba7330" xlink:to="loc_us-gaap_OperatingIncomeLoss_0c136b5c-f23c-4ab5-9e15-7ae3471d10e1" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingExpense_ffa290d2-5521-4d3d-9505-00643bbba183" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNonoperatingExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_c77ec9a6-f52c-4f3a-9049-aed93fba7330" xlink:to="loc_us-gaap_OtherNonoperatingExpense_ffa290d2-5521-4d3d-9505-00643bbba183" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestExpense_cb3c0b76-965d-4bd5-b830-85b570927fd6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_c77ec9a6-f52c-4f3a-9049-aed93fba7330" xlink:to="loc_us-gaap_InterestExpense_cb3c0b76-965d-4bd5-b830-85b570927fd6" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_3d41590e-6d67-472d-96d5-f98abd184df2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_c77ec9a6-f52c-4f3a-9049-aed93fba7330" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_3d41590e-6d67-472d-96d5-f98abd184df2" xlink:type="arc" order="13"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_d6774ef5-f4b3-4c45-a1e7-8c1a3f3e36f4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_c77ec9a6-f52c-4f3a-9049-aed93fba7330" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_d6774ef5-f4b3-4c45-a1e7-8c1a3f3e36f4" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_0cee6c92-cbd9-480e-af9e-fb1a5173d153" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_d6774ef5-f4b3-4c45-a1e7-8c1a3f3e36f4" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_0cee6c92-cbd9-480e-af9e-fb1a5173d153" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_0cee6c92-cbd9-480e-af9e-fb1a5173d153_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_0cee6c92-cbd9-480e-af9e-fb1a5173d153" xlink:to="loc_us-gaap_SegmentDomain_0cee6c92-cbd9-480e-af9e-fb1a5173d153_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_a64369a1-b9a3-49a8-9634-d2a00dd49e86" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_0cee6c92-cbd9-480e-af9e-fb1a5173d153" xlink:to="loc_us-gaap_SegmentDomain_a64369a1-b9a3-49a8-9634-d2a00dd49e86" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_InstallationSegmentMember_3d1db597-3ed6-47ae-a171-19fb7cf44908" xlink:href="ibp-20221231.xsd#ibp_InstallationSegmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_a64369a1-b9a3-49a8-9634-d2a00dd49e86" xlink:to="loc_ibp_InstallationSegmentMember_3d1db597-3ed6-47ae-a171-19fb7cf44908" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllOtherSegmentsMember_c27fa8d5-5c47-46ea-befa-3be6d9344306" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllOtherSegmentsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_a64369a1-b9a3-49a8-9634-d2a00dd49e86" xlink:to="loc_us-gaap_AllOtherSegmentsMember_c27fa8d5-5c47-46ea-befa-3be6d9344306" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis_c737bfe8-cb30-4ec2-9e35-e1d498f7964c" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ConsolidationItemsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_d6774ef5-f4b3-4c45-a1e7-8c1a3f3e36f4" xlink:to="loc_srt_ConsolidationItemsAxis_c737bfe8-cb30-4ec2-9e35-e1d498f7964c" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_c737bfe8-cb30-4ec2-9e35-e1d498f7964c_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ConsolidationItemsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ConsolidationItemsAxis_c737bfe8-cb30-4ec2-9e35-e1d498f7964c" xlink:to="loc_srt_ConsolidationItemsDomain_c737bfe8-cb30-4ec2-9e35-e1d498f7964c_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_29c8148d-aec4-407b-b02d-451985948a81" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ConsolidationItemsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ConsolidationItemsAxis_c737bfe8-cb30-4ec2-9e35-e1d498f7964c" xlink:to="loc_srt_ConsolidationItemsDomain_29c8148d-aec4-407b-b02d-451985948a81" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingSegmentsMember_17466fa7-cd61-4f98-a777-8561496ae412" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingSegmentsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_29c8148d-aec4-407b-b02d-451985948a81" xlink:to="loc_us-gaap_OperatingSegmentsMember_17466fa7-cd61-4f98-a777-8561496ae412" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntersegmentEliminationMember_0a667070-d82f-4d5f-bde8-0a0206154d48" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IntersegmentEliminationMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_29c8148d-aec4-407b-b02d-451985948a81" xlink:to="loc_us-gaap_IntersegmentEliminationMember_0a667070-d82f-4d5f-bde8-0a0206154d48" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementAxis_629c538a-b585-4c97-8607-7322f3c67e94" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_d6774ef5-f4b3-4c45-a1e7-8c1a3f3e36f4" xlink:to="loc_srt_RestatementAxis_629c538a-b585-4c97-8607-7322f3c67e94" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementDomain_629c538a-b585-4c97-8607-7322f3c67e94_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RestatementAxis_629c538a-b585-4c97-8607-7322f3c67e94" xlink:to="loc_srt_RestatementDomain_629c538a-b585-4c97-8607-7322f3c67e94_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementDomain_14723b00-2c12-4265-9017-11a2a6841f1d" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RestatementAxis_629c538a-b585-4c97-8607-7322f3c67e94" xlink:to="loc_srt_RestatementDomain_14723b00-2c12-4265-9017-11a2a6841f1d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementAdjustmentMember_61d3aef8-0350-4b75-9041-67b5a0dca4e2" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementAdjustmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RestatementDomain_14723b00-2c12-4265-9017-11a2a6841f1d" xlink:to="loc_srt_RestatementAdjustmentMember_61d3aef8-0350-4b75-9041-67b5a0dca4e2" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesOpenInterestSwapContractSummaryDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#DerivativeandHedgingActivitiesOpenInterestSwapContractSummaryDetails"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesOpenInterestSwapContractSummaryDetails" xlink:type="extended" id="i73328ec526fa454c9974a68a79cf43a5_DerivativeandHedgingActivitiesOpenInterestSwapContractSummaryDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_3a10a22f-e07c-41da-8871-00e978ac3bc0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeNotionalAmount_10e7ff92-bd80-4ac8-a878-b5ed3f6c3dc6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeNotionalAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_3a10a22f-e07c-41da-8871-00e978ac3bc0" xlink:to="loc_us-gaap_DerivativeNotionalAmount_10e7ff92-bd80-4ac8-a878-b5ed3f6c3dc6" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeFixedInterestRate_d063e3f8-8349-4b74-a52e-78f2915fd5bb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeFixedInterestRate"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_3a10a22f-e07c-41da-8871-00e978ac3bc0" xlink:to="loc_us-gaap_DerivativeFixedInterestRate_d063e3f8-8349-4b74-a52e-78f2915fd5bb" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_cfa4b00e-f14f-4901-8019-3d6c0920c9ae" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_3a10a22f-e07c-41da-8871-00e978ac3bc0" xlink:to="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_cfa4b00e-f14f-4901-8019-3d6c0920c9ae" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentRiskAxis_ce9aa6f7-d35b-4fa8-9647-cd1bf41c51f9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentRiskAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_cfa4b00e-f14f-4901-8019-3d6c0920c9ae" xlink:to="loc_us-gaap_DerivativeInstrumentRiskAxis_ce9aa6f7-d35b-4fa8-9647-cd1bf41c51f9" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_ce9aa6f7-d35b-4fa8-9647-cd1bf41c51f9_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeContractTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_ce9aa6f7-d35b-4fa8-9647-cd1bf41c51f9" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_ce9aa6f7-d35b-4fa8-9647-cd1bf41c51f9_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_32eee44d-6455-4276-aa75-fcbd01ab024d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeContractTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_ce9aa6f7-d35b-4fa8-9647-cd1bf41c51f9" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_32eee44d-6455-4276-aa75-fcbd01ab024d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_InterestRateSwapOneEffectiveJuly202021Member_9050ba22-fa16-4029-abd9-de6c6f009321" xlink:href="ibp-20221231.xsd#ibp_InterestRateSwapOneEffectiveJuly202021Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_32eee44d-6455-4276-aa75-fcbd01ab024d" xlink:to="loc_ibp_InterestRateSwapOneEffectiveJuly202021Member_9050ba22-fa16-4029-abd9-de6c6f009321" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_InterestRateSwapTwoEffectiveDecember312021Member_1237f7da-fff3-471a-97cc-6ffbab83f196" xlink:href="ibp-20221231.xsd#ibp_InterestRateSwapTwoEffectiveDecember312021Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_32eee44d-6455-4276-aa75-fcbd01ab024d" xlink:to="loc_ibp_InterestRateSwapTwoEffectiveDecember312021Member_1237f7da-fff3-471a-97cc-6ffbab83f196" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_InterestRateSwapThreeEffectiveDecember312021Member_7b0d1483-fb09-4aa2-8730-3e8dd0f28fbd" xlink:href="ibp-20221231.xsd#ibp_InterestRateSwapThreeEffectiveDecember312021Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_32eee44d-6455-4276-aa75-fcbd01ab024d" xlink:to="loc_ibp_InterestRateSwapThreeEffectiveDecember312021Member_7b0d1483-fb09-4aa2-8730-3e8dd0f28fbd" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_InterestRateSwapFourEffectiveDecember312025Member_2dda3898-96f4-45d0-9ae6-350f8101905d" xlink:href="ibp-20221231.xsd#ibp_InterestRateSwapFourEffectiveDecember312025Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_32eee44d-6455-4276-aa75-fcbd01ab024d" xlink:to="loc_ibp_InterestRateSwapFourEffectiveDecember312025Member_2dda3898-96f4-45d0-9ae6-350f8101905d" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_InterestRateSwapFiveEffectiveDecember312025Member_1cc0f6bd-41b3-4a3f-bf75-eb642f3391fe" xlink:href="ibp-20221231.xsd#ibp_InterestRateSwapFiveEffectiveDecember312025Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_32eee44d-6455-4276-aa75-fcbd01ab024d" xlink:to="loc_ibp_InterestRateSwapFiveEffectiveDecember312025Member_1cc0f6bd-41b3-4a3f-bf75-eb642f3391fe" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_abdab19f-e1fa-42bf-847f-8225dad7ee1e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_cfa4b00e-f14f-4901-8019-3d6c0920c9ae" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_abdab19f-e1fa-42bf-847f-8225dad7ee1e" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingRelationshipDomain_abdab19f-e1fa-42bf-847f-8225dad7ee1e_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_HedgingRelationshipDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_abdab19f-e1fa-42bf-847f-8225dad7ee1e" xlink:to="loc_us-gaap_HedgingRelationshipDomain_abdab19f-e1fa-42bf-847f-8225dad7ee1e_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingRelationshipDomain_6aebb1c6-2b0c-4cf4-848e-4f81a22fa775" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_HedgingRelationshipDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_abdab19f-e1fa-42bf-847f-8225dad7ee1e" xlink:to="loc_us-gaap_HedgingRelationshipDomain_6aebb1c6-2b0c-4cf4-848e-4f81a22fa775" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashFlowHedgingMember_3cac1a97-2f6c-41a1-a66a-11ce47366559" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashFlowHedgingMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_HedgingRelationshipDomain_6aebb1c6-2b0c-4cf4-848e-4f81a22fa775" xlink:to="loc_us-gaap_CashFlowHedgingMember_3cac1a97-2f6c-41a1-a66a-11ce47366559" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationAxis_6df17287-0185-4949-8f9c-3e47ac22ab09" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_HedgingDesignationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_cfa4b00e-f14f-4901-8019-3d6c0920c9ae" xlink:to="loc_us-gaap_HedgingDesignationAxis_6df17287-0185-4949-8f9c-3e47ac22ab09" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationDomain_6df17287-0185-4949-8f9c-3e47ac22ab09_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_HedgingDesignationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_HedgingDesignationAxis_6df17287-0185-4949-8f9c-3e47ac22ab09" xlink:to="loc_us-gaap_HedgingDesignationDomain_6df17287-0185-4949-8f9c-3e47ac22ab09_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationDomain_639462b3-b2c7-4c76-9132-c6edbbe45393" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_HedgingDesignationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_HedgingDesignationAxis_6df17287-0185-4949-8f9c-3e47ac22ab09" xlink:to="loc_us-gaap_HedgingDesignationDomain_639462b3-b2c7-4c76-9132-c6edbbe45393" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DesignatedAsHedgingInstrumentMember_a5eb23c5-07fb-4d21-9e14-3a9425fd00a9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DesignatedAsHedgingInstrumentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_HedgingDesignationDomain_639462b3-b2c7-4c76-9132-c6edbbe45393" xlink:to="loc_us-gaap_DesignatedAsHedgingInstrumentMember_a5eb23c5-07fb-4d21-9e14-3a9425fd00a9" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesNarrativeDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#DerivativeandHedgingActivitiesNarrativeDetails"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesNarrativeDetails" xlink:type="extended" id="i51b94fe13c0f42329e03272feee4858e_DerivativeandHedgingActivitiesNarrativeDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_29b98b93-0ddf-430a-995b-00c5ad34ee4e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_NumberOfSwaps_ccf5c698-2d20-438b-87e4-def40830d794" xlink:href="ibp-20221231.xsd#ibp_NumberOfSwaps"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_29b98b93-0ddf-430a-995b-00c5ad34ee4e" xlink:to="loc_ibp_NumberOfSwaps_ccf5c698-2d20-438b-87e4-def40830d794" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeNotionalAmount_b21e8e11-285c-4d55-b076-680f3fc5bfd6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeNotionalAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_29b98b93-0ddf-430a-995b-00c5ad34ee4e" xlink:to="loc_us-gaap_DerivativeNotionalAmount_b21e8e11-285c-4d55-b076-680f3fc5bfd6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeFixedInterestRate_defd8f14-2f0c-4c66-9cbe-64d294527e2d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeFixedInterestRate"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_29b98b93-0ddf-430a-995b-00c5ad34ee4e" xlink:to="loc_us-gaap_DerivativeFixedInterestRate_defd8f14-2f0c-4c66-9cbe-64d294527e2d" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrealizedGainLossOnDerivatives_2b2a5c37-9836-4c1e-a898-b8d2f078121f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrealizedGainLossOnDerivatives"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_29b98b93-0ddf-430a-995b-00c5ad34ee4e" xlink:to="loc_us-gaap_UnrealizedGainLossOnDerivatives_2b2a5c37-9836-4c1e-a898-b8d2f078121f" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationTax_3c644031-6a07-4c1c-ba44-6850a4cd7ddf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_29b98b93-0ddf-430a-995b-00c5ad34ee4e" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationTax_3c644031-6a07-4c1c-ba44-6850a4cd7ddf" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_ProceedsFromTerminationOfDerivativeInstruments_7fcb8b19-db97-4caf-a053-952095255424" xlink:href="ibp-20221231.xsd#ibp_ProceedsFromTerminationOfDerivativeInstruments"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_29b98b93-0ddf-430a-995b-00c5ad34ee4e" xlink:to="loc_ibp_ProceedsFromTerminationOfDerivativeInstruments_7fcb8b19-db97-4caf-a053-952095255424" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_SwapOffMarketTermsCapitalized_c0e576dc-8c3d-430c-9015-be61cde55707" xlink:href="ibp-20221231.xsd#ibp_SwapOffMarketTermsCapitalized"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_29b98b93-0ddf-430a-995b-00c5ad34ee4e" xlink:to="loc_ibp_SwapOffMarketTermsCapitalized_c0e576dc-8c3d-430c-9015-be61cde55707" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax_531d4e27-e522-4e61-86eb-b5e9d29e4833" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_29b98b93-0ddf-430a-995b-00c5ad34ee4e" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax_531d4e27-e522-4e61-86eb-b5e9d29e4833" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeNumberOfInstrumentsHeld_6992e840-3f9a-419a-864f-1ca288ddd06f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeNumberOfInstrumentsHeld"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_29b98b93-0ddf-430a-995b-00c5ad34ee4e" xlink:to="loc_us-gaap_DerivativeNumberOfInstrumentsHeld_6992e840-3f9a-419a-864f-1ca288ddd06f" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax_df904eb2-a16e-4348-b3c0-c94eb6a2f03f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_29b98b93-0ddf-430a-995b-00c5ad34ee4e" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax_df904eb2-a16e-4348-b3c0-c94eb6a2f03f" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossReclassificationFromAccumulatedOCIToIncomeEstimatedNetAmountToBeTransferred_f7bd70ec-54af-4d01-83fc-af00de6f496a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsGainLossReclassificationFromAccumulatedOCIToIncomeEstimatedNetAmountToBeTransferred"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_29b98b93-0ddf-430a-995b-00c5ad34ee4e" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossReclassificationFromAccumulatedOCIToIncomeEstimatedNetAmountToBeTransferred_f7bd70ec-54af-4d01-83fc-af00de6f496a" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_b8d9dcd1-7b0b-4651-b170-63e860de0ca0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_29b98b93-0ddf-430a-995b-00c5ad34ee4e" xlink:to="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_b8d9dcd1-7b0b-4651-b170-63e860de0ca0" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentRiskAxis_42d7785e-7910-4b64-ab3a-3b893ffd77db" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentRiskAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_b8d9dcd1-7b0b-4651-b170-63e860de0ca0" xlink:to="loc_us-gaap_DerivativeInstrumentRiskAxis_42d7785e-7910-4b64-ab3a-3b893ffd77db" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_42d7785e-7910-4b64-ab3a-3b893ffd77db_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeContractTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_42d7785e-7910-4b64-ab3a-3b893ffd77db" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_42d7785e-7910-4b64-ab3a-3b893ffd77db_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_559780c3-a0cf-45d6-a752-e4c96b29306b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeContractTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_42d7785e-7910-4b64-ab3a-3b893ffd77db" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_559780c3-a0cf-45d6-a752-e4c96b29306b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestRateSwapMember_8676b1e1-818e-4956-a5ff-06cc4452e3d2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestRateSwapMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_559780c3-a0cf-45d6-a752-e4c96b29306b" xlink:to="loc_us-gaap_InterestRateSwapMember_8676b1e1-818e-4956-a5ff-06cc4452e3d2" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationAxis_98846d1e-ec67-4969-86a7-1204bf0655fb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_HedgingDesignationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_b8d9dcd1-7b0b-4651-b170-63e860de0ca0" xlink:to="loc_us-gaap_HedgingDesignationAxis_98846d1e-ec67-4969-86a7-1204bf0655fb" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationDomain_98846d1e-ec67-4969-86a7-1204bf0655fb_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_HedgingDesignationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_HedgingDesignationAxis_98846d1e-ec67-4969-86a7-1204bf0655fb" xlink:to="loc_us-gaap_HedgingDesignationDomain_98846d1e-ec67-4969-86a7-1204bf0655fb_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationDomain_bdfb47b3-1e01-4342-8d51-4fa062ab7b3e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_HedgingDesignationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_HedgingDesignationAxis_98846d1e-ec67-4969-86a7-1204bf0655fb" xlink:to="loc_us-gaap_HedgingDesignationDomain_bdfb47b3-1e01-4342-8d51-4fa062ab7b3e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DesignatedAsHedgingInstrumentMember_878f930b-7006-4c61-9528-a478179c1f31" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DesignatedAsHedgingInstrumentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_HedgingDesignationDomain_bdfb47b3-1e01-4342-8d51-4fa062ab7b3e" xlink:to="loc_us-gaap_DesignatedAsHedgingInstrumentMember_878f930b-7006-4c61-9528-a478179c1f31" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesInterestRateSwapSummaryDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#DerivativeandHedgingActivitiesInterestRateSwapSummaryDetails"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesInterestRateSwapSummaryDetails" xlink:type="extended" id="ideb28d7ff93c431bbed1a7e896f85d69_DerivativeandHedgingActivitiesInterestRateSwapSummaryDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_b58d0662-e014-469a-bfa7-dbf7f8a1071d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax_87f6e111-dedb-400b-8b2c-b1e43b04b518" xlink:href="ibp-20221231.xsd#ibp_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_b58d0662-e014-469a-bfa7-dbf7f8a1071d" xlink:to="loc_ibp_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax_87f6e111-dedb-400b-8b2c-b1e43b04b518" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax_751e171b-7d8e-47cc-8869-69f3e9eba8ee" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_b58d0662-e014-469a-bfa7-dbf7f8a1071d" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax_751e171b-7d8e-47cc-8869-69f3e9eba8ee" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OciCashFlowHedgeReclassificationForDiscontinuanceStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration_456443b6-8641-46d8-af76-2b43cbd2d615" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OciCashFlowHedgeReclassificationForDiscontinuanceStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_b58d0662-e014-469a-bfa7-dbf7f8a1071d" xlink:to="loc_us-gaap_OciCashFlowHedgeReclassificationForDiscontinuanceStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration_456443b6-8641-46d8-af76-2b43cbd2d615" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_6080e37f-065e-4c84-934e-937f35254274" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_b58d0662-e014-469a-bfa7-dbf7f8a1071d" xlink:to="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_6080e37f-065e-4c84-934e-937f35254274" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentRiskAxis_af8b1896-97fd-4239-a475-8eb15f7ead24" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentRiskAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_6080e37f-065e-4c84-934e-937f35254274" xlink:to="loc_us-gaap_DerivativeInstrumentRiskAxis_af8b1896-97fd-4239-a475-8eb15f7ead24" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_af8b1896-97fd-4239-a475-8eb15f7ead24_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeContractTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_af8b1896-97fd-4239-a475-8eb15f7ead24" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_af8b1896-97fd-4239-a475-8eb15f7ead24_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_99e266d0-2acd-4006-aa50-ef95e3ef9584" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeContractTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_af8b1896-97fd-4239-a475-8eb15f7ead24" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_99e266d0-2acd-4006-aa50-ef95e3ef9584" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestRateSwapMember_c84d7e30-2602-4cc5-a85c-11aa643ab216" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestRateSwapMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_99e266d0-2acd-4006-aa50-ef95e3ef9584" xlink:to="loc_us-gaap_InterestRateSwapMember_c84d7e30-2602-4cc5-a85c-11aa643ab216" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/StockholdersEquityChangeinAOCIDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#StockholdersEquityChangeinAOCIDetails"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/StockholdersEquityChangeinAOCIDetails" xlink:type="extended" id="ib51d163ca6b6433cb33a96fd98c3b1ce_StockholdersEquityChangeinAOCIDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_84cde0eb-f25c-4296-88e8-44f7b7f7ff8c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract_cca769b2-48c7-4ae9-be51-2b3bda57bbad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_84cde0eb-f25c-4296-88e8-44f7b7f7ff8c" xlink:to="loc_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract_cca769b2-48c7-4ae9-be51-2b3bda57bbad" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_f27b5389-141c-4371-943c-964aa08f82fe" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract_cca769b2-48c7-4ae9-be51-2b3bda57bbad" xlink:to="loc_us-gaap_StockholdersEquity_f27b5389-141c-4371-943c-964aa08f82fe" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax_42ff1100-f048-42f6-99fb-393b2bf85315" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract_cca769b2-48c7-4ae9-be51-2b3bda57bbad" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax_42ff1100-f048-42f6-99fb-393b2bf85315" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax_5dde22c4-34c4-4977-8b3f-32953c6a1d30" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract_cca769b2-48c7-4ae9-be51-2b3bda57bbad" xlink:to="loc_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax_5dde22c4-34c4-4977-8b3f-32953c6a1d30" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_0e2e860f-fd76-4c93-8b74-b01464d50bed" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_685064a5-c293-4b92-90b8-f1b67507a775" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_84cde0eb-f25c-4296-88e8-44f7b7f7ff8c" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_685064a5-c293-4b92-90b8-f1b67507a775" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_954c802d-2f2c-4c71-bf14-7790cdaf51cb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_685064a5-c293-4b92-90b8-f1b67507a775" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_954c802d-2f2c-4c71-bf14-7790cdaf51cb" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_954c802d-2f2c-4c71-bf14-7790cdaf51cb_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_954c802d-2f2c-4c71-bf14-7790cdaf51cb" xlink:to="loc_us-gaap_EquityComponentDomain_954c802d-2f2c-4c71-bf14-7790cdaf51cb_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_a5611d0a-8077-43ce-866a-4f46d62f2f9d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_954c802d-2f2c-4c71-bf14-7790cdaf51cb" xlink:to="loc_us-gaap_EquityComponentDomain_a5611d0a-8077-43ce-866a-4f46d62f2f9d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember_216f3ca6-fefd-4222-9458-81eb46bc35af" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_a5611d0a-8077-43ce-866a-4f46d62f2f9d" xlink:to="loc_us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember_216f3ca6-fefd-4222-9458-81eb46bc35af" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/StockholdersEquityAdditionalInformationDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#StockholdersEquityAdditionalInformationDetails"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/StockholdersEquityAdditionalInformationDetails" xlink:type="extended" id="i942ae8e3a663426e8b2ee440dd8f43b4_StockholdersEquityAdditionalInformationDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsPayableLineItems_1793a60f-1fff-40f4-a717-2755c498f9e1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DividendsPayableLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfDividends_8534a31d-a19b-4429-9fb9-afa8efa28a5e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfDividends"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DividendsPayableLineItems_1793a60f-1fff-40f4-a717-2755c498f9e1" xlink:to="loc_us-gaap_PaymentsOfDividends_8534a31d-a19b-4429-9fb9-afa8efa28a5e" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsPayableTable_5ba1290a-aac6-4908-803a-596582de7853" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DividendsPayableTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DividendsPayableLineItems_1793a60f-1fff-40f4-a717-2755c498f9e1" xlink:to="loc_us-gaap_DividendsPayableTable_5ba1290a-aac6-4908-803a-596582de7853" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_e08d43d2-82d4-4c2e-b94a-532bbbd38693" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DividendsPayableTable_5ba1290a-aac6-4908-803a-596582de7853" xlink:to="loc_us-gaap_AwardTypeAxis_e08d43d2-82d4-4c2e-b94a-532bbbd38693" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_e08d43d2-82d4-4c2e-b94a-532bbbd38693_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_e08d43d2-82d4-4c2e-b94a-532bbbd38693" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_e08d43d2-82d4-4c2e-b94a-532bbbd38693_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_e8452870-d5d3-451a-9447-9d413f7a6aaf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_e08d43d2-82d4-4c2e-b94a-532bbbd38693" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_e8452870-d5d3-451a-9447-9d413f7a6aaf" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockMember_2cca378f-5443-41ff-9b31-4d24dd4a3a63" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_e8452870-d5d3-451a-9447-9d413f7a6aaf" xlink:to="loc_us-gaap_RestrictedStockMember_2cca378f-5443-41ff-9b31-4d24dd4a3a63" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/StockholdersEquityScheduleofDividendsDeclaredDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#StockholdersEquityScheduleofDividendsDeclaredDetails"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/StockholdersEquityScheduleofDividendsDeclaredDetails" xlink:type="extended" id="i08b53f0aee174dd48828e74a2f8fdc87_StockholdersEquityScheduleofDividendsDeclaredDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsPayableLineItems_82e5e588-ee7a-49c4-a902-a63cef503b62" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DividendsPayableLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockDividendsPerShareDeclared_aab92f48-a0fa-4dc0-b335-7398393f3388" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockDividendsPerShareDeclared"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DividendsPayableLineItems_82e5e588-ee7a-49c4-a902-a63cef503b62" xlink:to="loc_us-gaap_CommonStockDividendsPerShareDeclared_aab92f48-a0fa-4dc0-b335-7398393f3388" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsCommonStockCash_af96eb22-9f72-42d6-9b1f-c60167265b9f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DividendsCommonStockCash"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DividendsPayableLineItems_82e5e588-ee7a-49c4-a902-a63cef503b62" xlink:to="loc_us-gaap_DividendsCommonStockCash_af96eb22-9f72-42d6-9b1f-c60167265b9f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfDividends_d424d81c-a8e4-422a-b293-e7d7e541eb32" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfDividends"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DividendsPayableLineItems_82e5e588-ee7a-49c4-a902-a63cef503b62" xlink:to="loc_us-gaap_PaymentsOfDividends_d424d81c-a8e4-422a-b293-e7d7e541eb32" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsPayableTable_6dc5b072-446b-4911-b223-c7c2fa8204be" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DividendsPayableTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DividendsPayableLineItems_82e5e588-ee7a-49c4-a902-a63cef503b62" xlink:to="loc_us-gaap_DividendsPayableTable_6dc5b072-446b-4911-b223-c7c2fa8204be" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsAxis_ab8bd700-2c9c-4e29-a425-83d4f54e5a2a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DividendsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DividendsPayableTable_6dc5b072-446b-4911-b223-c7c2fa8204be" xlink:to="loc_us-gaap_DividendsAxis_ab8bd700-2c9c-4e29-a425-83d4f54e5a2a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsDomain_ab8bd700-2c9c-4e29-a425-83d4f54e5a2a_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DividendsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DividendsAxis_ab8bd700-2c9c-4e29-a425-83d4f54e5a2a" xlink:to="loc_us-gaap_DividendsDomain_ab8bd700-2c9c-4e29-a425-83d4f54e5a2a_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsDomain_255c6c69-f0ef-43d1-9bd2-05c5a0feca11" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DividendsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DividendsAxis_ab8bd700-2c9c-4e29-a425-83d4f54e5a2a" xlink:to="loc_us-gaap_DividendsDomain_255c6c69-f0ef-43d1-9bd2-05c5a0feca11" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DividendsDeclaredAndPaid1Member_bc46a4f8-7174-4db4-9237-0e4a3a19e6ad" xlink:href="ibp-20221231.xsd#ibp_DividendsDeclaredAndPaid1Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DividendsDomain_255c6c69-f0ef-43d1-9bd2-05c5a0feca11" xlink:to="loc_ibp_DividendsDeclaredAndPaid1Member_bc46a4f8-7174-4db4-9237-0e4a3a19e6ad" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DividendsDeclaredAndPaid2Member_b176decd-7921-4372-aa03-cc492e8970d1" xlink:href="ibp-20221231.xsd#ibp_DividendsDeclaredAndPaid2Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DividendsDomain_255c6c69-f0ef-43d1-9bd2-05c5a0feca11" xlink:to="loc_ibp_DividendsDeclaredAndPaid2Member_b176decd-7921-4372-aa03-cc492e8970d1" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#EmployeeBenefitsAdditionalInformationDetail"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail" xlink:type="extended" id="id270f31e684b4a26a84341c12a97b3f9_EmployeeBenefitsAdditionalInformationDetail">
    <link:loc xlink:type="locator" xlink:label="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems_b6849d2a-bd96-42d6-94b0-958cb229516a" xlink:href="ibp-20221231.xsd#ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_HealthInsuranceExpense_88d51373-14a2-4b4c-925f-ffe4bd4fa359" xlink:href="ibp-20221231.xsd#ibp_HealthInsuranceExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems_b6849d2a-bd96-42d6-94b0-958cb229516a" xlink:to="loc_ibp_HealthInsuranceExpense_88d51373-14a2-4b4c-925f-ffe4bd4fa359" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_35bccd20-1640-48e1-a1d7-ecd254e9447f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems_b6849d2a-bd96-42d6-94b0-958cb229516a" xlink:to="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_35bccd20-1640-48e1-a1d7-ecd254e9447f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_WorkersCompensationExpense_c289ffca-537e-4076-8100-a0606ebb671d" xlink:href="ibp-20221231.xsd#ibp_WorkersCompensationExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems_b6849d2a-bd96-42d6-94b0-958cb229516a" xlink:to="loc_ibp_WorkersCompensationExpense_c289ffca-537e-4076-8100-a0606ebb671d" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedContributionPlanAdministrativeExpenses_bc26443f-5821-4908-aa2c-c2ee943c9e3d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedContributionPlanAdministrativeExpenses"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems_b6849d2a-bd96-42d6-94b0-958cb229516a" xlink:to="loc_us-gaap_DefinedContributionPlanAdministrativeExpenses_bc26443f-5821-4908-aa2c-c2ee943c9e3d" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_9508ff69-d9e7-4d62-89b7-20aa10cbf052" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems_b6849d2a-bd96-42d6-94b0-958cb229516a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_9508ff69-d9e7-4d62-89b7-20aa10cbf052" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_7efcf632-8b9c-47ff-9180-c1007771211a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems_b6849d2a-bd96-42d6-94b0-958cb229516a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_7efcf632-8b9c-47ff-9180-c1007771211a" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfEqualInstallmentsForVestingOfStockAwards_d6afac4f-a35c-4179-9162-480daab844f3" xlink:href="ibp-20221231.xsd#ibp_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfEqualInstallmentsForVestingOfStockAwards"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems_b6849d2a-bd96-42d6-94b0-958cb229516a" xlink:to="loc_ibp_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfEqualInstallmentsForVestingOfStockAwards_d6afac4f-a35c-4179-9162-480daab844f3" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_515c8809-288e-4ae1-8f1c-750fcff1e118" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems_b6849d2a-bd96-42d6-94b0-958cb229516a" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_515c8809-288e-4ae1-8f1c-750fcff1e118" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_577eac4f-198e-4265-8e6a-f2b3390cb502" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems_b6849d2a-bd96-42d6-94b0-958cb229516a" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_577eac4f-198e-4265-8e6a-f2b3390cb502" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_4ce84d27-918b-4277-ac29-7ecb78b17e44" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems_b6849d2a-bd96-42d6-94b0-958cb229516a" xlink:to="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_4ce84d27-918b-4277-ac29-7ecb78b17e44" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_26235bcd-5615-4178-a77b-06a36b3ba551" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems_b6849d2a-bd96-42d6-94b0-958cb229516a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_26235bcd-5615-4178-a77b-06a36b3ba551" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_a8214fc1-16d9-412a-abef-2d5fc5ad08c5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems_b6849d2a-bd96-42d6-94b0-958cb229516a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_a8214fc1-16d9-412a-abef-2d5fc5ad08c5" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsTable_75775416-2252-4985-9f2b-06063909ab61" xlink:href="ibp-20221231.xsd#ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems_b6849d2a-bd96-42d6-94b0-958cb229516a" xlink:to="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsTable_75775416-2252-4985-9f2b-06063909ab61" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_74221af7-815f-4bec-ae62-4d91cd1ccb38" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsTable_75775416-2252-4985-9f2b-06063909ab61" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_74221af7-815f-4bec-ae62-4d91cd1ccb38" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_74221af7-815f-4bec-ae62-4d91cd1ccb38_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_RetirementPlanTypeAxis_74221af7-815f-4bec-ae62-4d91cd1ccb38" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_74221af7-815f-4bec-ae62-4d91cd1ccb38_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_e507a226-fabf-463c-ab7f-a7e27d26f25a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_RetirementPlanTypeAxis_74221af7-815f-4bec-ae62-4d91cd1ccb38" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_e507a226-fabf-463c-ab7f-a7e27d26f25a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_fded9bc1-9e7b-4d7a-8296-f16840041dd2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPostretirementHealthCoverageMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_e507a226-fabf-463c-ab7f-a7e27d26f25a" xlink:to="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_fded9bc1-9e7b-4d7a-8296-f16840041dd2" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_109aac9a-d6cd-48c9-ae18-6c8b0f8d491f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsTable_75775416-2252-4985-9f2b-06063909ab61" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_109aac9a-d6cd-48c9-ae18-6c8b0f8d491f" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_109aac9a-d6cd-48c9-ae18-6c8b0f8d491f_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_109aac9a-d6cd-48c9-ae18-6c8b0f8d491f" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_109aac9a-d6cd-48c9-ae18-6c8b0f8d491f_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_6cff5c7e-6692-4500-b658-958cdc52e249" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_109aac9a-d6cd-48c9-ae18-6c8b0f8d491f" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_6cff5c7e-6692-4500-b658-958cdc52e249" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfSalesMember_2f673efa-9fda-4e1d-8e66-5d993f8eb481" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfSalesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_6cff5c7e-6692-4500-b658-958cdc52e249" xlink:to="loc_us-gaap_CostOfSalesMember_2f673efa-9fda-4e1d-8e66-5d993f8eb481" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_TitleOfIndividualAxis_bba55a9f-b99e-4d72-92c3-440abb8ad021" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsTable_75775416-2252-4985-9f2b-06063909ab61" xlink:to="loc_srt_TitleOfIndividualAxis_bba55a9f-b99e-4d72-92c3-440abb8ad021" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_bba55a9f-b99e-4d72-92c3-440abb8ad021_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_TitleOfIndividualAxis_bba55a9f-b99e-4d72-92c3-440abb8ad021" xlink:to="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_bba55a9f-b99e-4d72-92c3-440abb8ad021_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_8f66d9b9-e1aa-4f1e-822e-cd4e766636fe" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_TitleOfIndividualAxis_bba55a9f-b99e-4d72-92c3-440abb8ad021" xlink:to="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_8f66d9b9-e1aa-4f1e-822e-cd4e766636fe" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_DirectorMember_3610857b-8fdd-410c-9cf5-e36aae6b707b" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_DirectorMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_8f66d9b9-e1aa-4f1e-822e-cd4e766636fe" xlink:to="loc_srt_DirectorMember_3610857b-8fdd-410c-9cf5-e36aae6b707b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_OfficerMember_b381141c-598e-4cde-b8b2-22973963c0f9" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_OfficerMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_8f66d9b9-e1aa-4f1e-822e-cd4e766636fe" xlink:to="loc_srt_OfficerMember_b381141c-598e-4cde-b8b2-22973963c0f9" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CertainEmployeesMember_99ef7dc0-6131-462f-a13c-4494c2a65cc9" xlink:href="ibp-20221231.xsd#ibp_CertainEmployeesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_8f66d9b9-e1aa-4f1e-822e-cd4e766636fe" xlink:to="loc_ibp_CertainEmployeesMember_99ef7dc0-6131-462f-a13c-4494c2a65cc9" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_9a2e6bbd-3fe5-4292-8d92-469d9eac196c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsTable_75775416-2252-4985-9f2b-06063909ab61" xlink:to="loc_us-gaap_AwardTypeAxis_9a2e6bbd-3fe5-4292-8d92-469d9eac196c" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_9a2e6bbd-3fe5-4292-8d92-469d9eac196c_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_9a2e6bbd-3fe5-4292-8d92-469d9eac196c" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_9a2e6bbd-3fe5-4292-8d92-469d9eac196c_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_ae9f01ff-4f82-4bc1-a42b-f4631aa70a8a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_9a2e6bbd-3fe5-4292-8d92-469d9eac196c" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_ae9f01ff-4f82-4bc1-a42b-f4631aa70a8a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_PerformanceBasedAwardsMember_fd5f4fa0-9b55-49b6-9ba8-52b7e3ce00ff" xlink:href="ibp-20221231.xsd#ibp_PerformanceBasedAwardsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_ae9f01ff-4f82-4bc1-a42b-f4631aa70a8a" xlink:to="loc_ibp_PerformanceBasedAwardsMember_fd5f4fa0-9b55-49b6-9ba8-52b7e3ce00ff" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_LiabilityPerformanceBasedStockAwardsMember_52484766-58f7-45d4-9d37-96e687fd33fe" xlink:href="ibp-20221231.xsd#ibp_LiabilityPerformanceBasedStockAwardsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_ae9f01ff-4f82-4bc1-a42b-f4631aa70a8a" xlink:to="loc_ibp_LiabilityPerformanceBasedStockAwardsMember_52484766-58f7-45d4-9d37-96e687fd33fe" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_PerformanceBasedRestrictedStockUnitsMember_e9c00145-fb3d-48df-bb80-773dd99734f4" xlink:href="ibp-20221231.xsd#ibp_PerformanceBasedRestrictedStockUnitsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_ae9f01ff-4f82-4bc1-a42b-f4631aa70a8a" xlink:to="loc_ibp_PerformanceBasedRestrictedStockUnitsMember_e9c00145-fb3d-48df-bb80-773dd99734f4" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeStockOptionMember_4d54bc39-6496-4d35-8b9e-f605c202564c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeStockOptionMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_ae9f01ff-4f82-4bc1-a42b-f4631aa70a8a" xlink:to="loc_us-gaap_EmployeeStockOptionMember_4d54bc39-6496-4d35-8b9e-f605c202564c" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_570e0286-8b32-43f8-9717-dcae472fe36a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsTable_75775416-2252-4985-9f2b-06063909ab61" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_570e0286-8b32-43f8-9717-dcae472fe36a" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_570e0286-8b32-43f8-9717-dcae472fe36a_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_570e0286-8b32-43f8-9717-dcae472fe36a" xlink:to="loc_us-gaap_EquityComponentDomain_570e0286-8b32-43f8-9717-dcae472fe36a_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_f116aa9a-f08c-49de-8dec-eb6d254efc2c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_570e0286-8b32-43f8-9717-dcae472fe36a" xlink:to="loc_us-gaap_EquityComponentDomain_f116aa9a-f08c-49de-8dec-eb6d254efc2c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_dda731de-6292-443e-bca0-ad5a1a58d603" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_f116aa9a-f08c-49de-8dec-eb6d254efc2c" xlink:to="loc_us-gaap_CommonStockMember_dda731de-6292-443e-bca0-ad5a1a58d603" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameAxis_1e26b11b-6e35-4581-b32f-73554ce30ce0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsTable_75775416-2252-4985-9f2b-06063909ab61" xlink:to="loc_us-gaap_PlanNameAxis_1e26b11b-6e35-4581-b32f-73554ce30ce0" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_1e26b11b-6e35-4581-b32f-73554ce30ce0_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_PlanNameAxis_1e26b11b-6e35-4581-b32f-73554ce30ce0" xlink:to="loc_us-gaap_PlanNameDomain_1e26b11b-6e35-4581-b32f-73554ce30ce0_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_4121df9a-1690-4cd5-8db1-392bc55f5381" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_PlanNameAxis_1e26b11b-6e35-4581-b32f-73554ce30ce0" xlink:to="loc_us-gaap_PlanNameDomain_4121df9a-1690-4cd5-8db1-392bc55f5381" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember_e260afc7-54fb-4002-9997-6525d115c02c" xlink:href="ibp-20221231.xsd#ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanNameDomain_4121df9a-1690-4cd5-8db1-392bc55f5381" xlink:to="loc_ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember_e260afc7-54fb-4002-9997-6525d115c02c" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VestingAxis_8161f61c-8925-4bf6-8d4d-a54cc5099948" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VestingAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsTable_75775416-2252-4985-9f2b-06063909ab61" xlink:to="loc_us-gaap_VestingAxis_8161f61c-8925-4bf6-8d4d-a54cc5099948" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VestingDomain_8161f61c-8925-4bf6-8d4d-a54cc5099948_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VestingDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_VestingAxis_8161f61c-8925-4bf6-8d4d-a54cc5099948" xlink:to="loc_us-gaap_VestingDomain_8161f61c-8925-4bf6-8d4d-a54cc5099948_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VestingDomain_93a2d365-689f-4706-9288-2d692aed3133" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VestingDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_VestingAxis_8161f61c-8925-4bf6-8d4d-a54cc5099948" xlink:to="loc_us-gaap_VestingDomain_93a2d365-689f-4706-9288-2d692aed3133" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationAwardTrancheOneMember_9084e135-e923-4e20-9208-e959f1eba3e6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationAwardTrancheOneMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_VestingDomain_93a2d365-689f-4706-9288-2d692aed3133" xlink:to="loc_us-gaap_ShareBasedCompensationAwardTrancheOneMember_9084e135-e923-4e20-9208-e959f1eba3e6" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationAwardTrancheTwoMember_9a2060bd-3b46-4471-b20d-418cf0438c3e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationAwardTrancheTwoMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_VestingDomain_93a2d365-689f-4706-9288-2d692aed3133" xlink:to="loc_us-gaap_ShareBasedCompensationAwardTrancheTwoMember_9a2060bd-3b46-4471-b20d-418cf0438c3e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationAwardTrancheThreeMember_fe2b8ea0-187a-4026-a5bb-60d0d455a776" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationAwardTrancheThreeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_VestingDomain_93a2d365-689f-4706-9288-2d692aed3133" xlink:to="loc_us-gaap_ShareBasedCompensationAwardTrancheThreeMember_fe2b8ea0-187a-4026-a5bb-60d0d455a776" xlink:type="arc" order="2"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/EmployeeBenefitsContributionstoMultiemployerPensionsandHealthandWelfareBenefitPlansDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#EmployeeBenefitsContributionstoMultiemployerPensionsandHealthandWelfareBenefitPlansDetails"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/EmployeeBenefitsContributionstoMultiemployerPensionsandHealthandWelfareBenefitPlansDetails" xlink:type="extended" id="i7f9f5539fe07436f8b4301f532d36fdb_EmployeeBenefitsContributionstoMultiemployerPensionsandHealthandWelfareBenefitPlansDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MultiemployerPlansLineItems_2aa42e9d-9c8a-452f-bc7a-0319067fa9a1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MultiemployerPlansLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MultiemployerPlanEmployerContributionCost_2785f1bf-b332-4a35-8414-6afb5b959c3c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MultiemployerPlanEmployerContributionCost"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MultiemployerPlansLineItems_2aa42e9d-9c8a-452f-bc7a-0319067fa9a1" xlink:to="loc_us-gaap_MultiemployerPlanEmployerContributionCost_2785f1bf-b332-4a35-8414-6afb5b959c3c" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfMultiemployerPlansTable_26c15bcb-5656-4715-a26a-60f1f5482270" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfMultiemployerPlansTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_MultiemployerPlansLineItems_2aa42e9d-9c8a-452f-bc7a-0319067fa9a1" xlink:to="loc_us-gaap_ScheduleOfMultiemployerPlansTable_26c15bcb-5656-4715-a26a-60f1f5482270" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_db073168-21a5-4904-99bb-a97f48a0b5b5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfMultiemployerPlansTable_26c15bcb-5656-4715-a26a-60f1f5482270" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_db073168-21a5-4904-99bb-a97f48a0b5b5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_db073168-21a5-4904-99bb-a97f48a0b5b5_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_RetirementPlanTypeAxis_db073168-21a5-4904-99bb-a97f48a0b5b5" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_db073168-21a5-4904-99bb-a97f48a0b5b5_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_5bb65361-e766-4521-a0c3-b8b452c6470f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_RetirementPlanTypeAxis_db073168-21a5-4904-99bb-a97f48a0b5b5" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_5bb65361-e766-4521-a0c3-b8b452c6470f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionPlansDefinedBenefitMember_ee87e9d3-3922-4144-b9f6-a0a9abb14737" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PensionPlansDefinedBenefitMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_5bb65361-e766-4521-a0c3-b8b452c6470f" xlink:to="loc_us-gaap_PensionPlansDefinedBenefitMember_ee87e9d3-3922-4144-b9f6-a0a9abb14737" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_b80c1b63-dd57-4b65-8978-0d315549ab6b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPostretirementHealthCoverageMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_5bb65361-e766-4521-a0c3-b8b452c6470f" xlink:to="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_b80c1b63-dd57-4b65-8978-0d315549ab6b" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail" xlink:type="extended" id="i678ea24c9ff748b0a8b91d4b0b9b7369_EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1c182551-0339-4dfe-a5c2-6d7670b2c6f1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_9c253faf-59b0-4b9b-98af-c3edd0e4246d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1c182551-0339-4dfe-a5c2-6d7670b2c6f1" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_9c253faf-59b0-4b9b-98af-c3edd0e4246d" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_09934a7c-ae92-4efb-8321-3c00fa19ff66" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_9c253faf-59b0-4b9b-98af-c3edd0e4246d" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_09934a7c-ae92-4efb-8321-3c00fa19ff66" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_550e0642-b322-41e0-b028-f3b7d1f6787c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_9c253faf-59b0-4b9b-98af-c3edd0e4246d" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_550e0642-b322-41e0-b028-f3b7d1f6787c" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares_9b052314-43d4-4ee5-a97f-0a540fad0fa2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_9c253faf-59b0-4b9b-98af-c3edd0e4246d" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares_9b052314-43d4-4ee5-a97f-0a540fad0fa2" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares_c1e81f30-f2d7-42ff-b0bc-77def7ec1761" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_9c253faf-59b0-4b9b-98af-c3edd0e4246d" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares_c1e81f30-f2d7-42ff-b0bc-77def7ec1761" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_a703b1a0-11e8-4b2a-b6af-b17a274631de" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueAbstract_a18f8cbe-c8e6-4c76-b23f-e4f55b6cb3db" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1c182551-0339-4dfe-a5c2-6d7670b2c6f1" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueAbstract_a18f8cbe-c8e6-4c76-b23f-e4f55b6cb3db" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_451dcefd-f656-467f-8563-76418fd628e5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueAbstract_a18f8cbe-c8e6-4c76-b23f-e4f55b6cb3db" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_451dcefd-f656-467f-8563-76418fd628e5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_ec295337-5b96-44cc-8114-afb7275f39b6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueAbstract_a18f8cbe-c8e6-4c76-b23f-e4f55b6cb3db" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_ec295337-5b96-44cc-8114-afb7275f39b6" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue_4cd0ce91-1f2f-4732-9483-535b3fe7a805" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueAbstract_a18f8cbe-c8e6-4c76-b23f-e4f55b6cb3db" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue_4cd0ce91-1f2f-4732-9483-535b3fe7a805" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue_bacb301f-3bdf-4e6a-afdb-d47eb3be0f67" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueAbstract_a18f8cbe-c8e6-4c76-b23f-e4f55b6cb3db" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue_bacb301f-3bdf-4e6a-afdb-d47eb3be0f67" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_d836370f-ff0a-4884-a13b-42afa8af0b35" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_ac357c90-2f11-440b-b11c-a92471f286a3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1c182551-0339-4dfe-a5c2-6d7670b2c6f1" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_ac357c90-2f11-440b-b11c-a92471f286a3" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_825e289b-dab7-4974-a53d-57e78d65cbad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_ac357c90-2f11-440b-b11c-a92471f286a3" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_825e289b-dab7-4974-a53d-57e78d65cbad" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_36fa7458-db81-49e1-b56b-d0c9d1897904" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_ac357c90-2f11-440b-b11c-a92471f286a3" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_36fa7458-db81-49e1-b56b-d0c9d1897904" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_967126d6-7563-4768-b06f-2f8a40599589" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_ac357c90-2f11-440b-b11c-a92471f286a3" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_967126d6-7563-4768-b06f-2f8a40599589" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_b7d8c9a7-20d3-4b32-82a3-679b17800dbc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_ac357c90-2f11-440b-b11c-a92471f286a3" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_b7d8c9a7-20d3-4b32-82a3-679b17800dbc" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_70a79feb-93f2-4a5f-93c8-e0076211b313" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_0ee49fa4-b260-4d9d-bf7b-90397117ab80" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1c182551-0339-4dfe-a5c2-6d7670b2c6f1" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_0ee49fa4-b260-4d9d-bf7b-90397117ab80" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_2b542389-3fe6-4d30-983b-bec579c9e189" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_0ee49fa4-b260-4d9d-bf7b-90397117ab80" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_2b542389-3fe6-4d30-983b-bec579c9e189" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_b425f343-e340-427c-a20c-9424d67bd2b6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_0ee49fa4-b260-4d9d-bf7b-90397117ab80" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_b425f343-e340-427c-a20c-9424d67bd2b6" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_11a0c228-aa6f-415f-bf53-840434927e8e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_0ee49fa4-b260-4d9d-bf7b-90397117ab80" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_11a0c228-aa6f-415f-bf53-840434927e8e" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_bb8286c0-132b-41be-a714-4ace819dd1a0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_0ee49fa4-b260-4d9d-bf7b-90397117ab80" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_bb8286c0-132b-41be-a714-4ace819dd1a0" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_ca180b9e-d813-400c-b094-78b943407326" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_83e8e987-8549-4b80-befc-a7b30f314227" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1c182551-0339-4dfe-a5c2-6d7670b2c6f1" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_83e8e987-8549-4b80-befc-a7b30f314227" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_b7db6ac9-e7a1-4714-b524-d4f46fcc1eeb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_83e8e987-8549-4b80-befc-a7b30f314227" xlink:to="loc_us-gaap_AwardTypeAxis_b7db6ac9-e7a1-4714-b524-d4f46fcc1eeb" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_b7db6ac9-e7a1-4714-b524-d4f46fcc1eeb_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_b7db6ac9-e7a1-4714-b524-d4f46fcc1eeb" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_b7db6ac9-e7a1-4714-b524-d4f46fcc1eeb_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_83fbef71-0226-41cc-af2a-fa2c56a312a3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_b7db6ac9-e7a1-4714-b524-d4f46fcc1eeb" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_83fbef71-0226-41cc-af2a-fa2c56a312a3" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CommonStockAwardsMember_675ac2e5-bd08-4aca-8cbe-0430f7c28b57" xlink:href="ibp-20221231.xsd#ibp_CommonStockAwardsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_83fbef71-0226-41cc-af2a-fa2c56a312a3" xlink:to="loc_ibp_CommonStockAwardsMember_675ac2e5-bd08-4aca-8cbe-0430f7c28b57" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_PerformanceBasedAwardsMember_1c1be737-12d8-447c-b592-52240d0e56b9" xlink:href="ibp-20221231.xsd#ibp_PerformanceBasedAwardsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_83fbef71-0226-41cc-af2a-fa2c56a312a3" xlink:to="loc_ibp_PerformanceBasedAwardsMember_1c1be737-12d8-447c-b592-52240d0e56b9" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_PerformanceBasedStockUnitsMember_5f9bf8df-a3e5-4665-965c-63229522e767" xlink:href="ibp-20221231.xsd#ibp_PerformanceBasedStockUnitsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_83fbef71-0226-41cc-af2a-fa2c56a312a3" xlink:to="loc_ibp_PerformanceBasedStockUnitsMember_5f9bf8df-a3e5-4665-965c-63229522e767" xlink:type="arc" order="2"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails" xlink:type="extended" id="i8a22b343c01f4fd39dbe05f531dcf6d1_EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_a116d1d9-1705-461d-b896-82464ee16dce" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_40b756d1-2a1d-4d58-972c-8fd769e989db" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_a116d1d9-1705-461d-b896-82464ee16dce" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpense_40b756d1-2a1d-4d58-972c-8fd769e989db" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_f1de1ca4-ea02-4b12-93c4-145c1b389b0e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_a116d1d9-1705-461d-b896-82464ee16dce" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_f1de1ca4-ea02-4b12-93c4-145c1b389b0e" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameAxis_9f12563d-7882-482e-afde-68ef85e1b315" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_f1de1ca4-ea02-4b12-93c4-145c1b389b0e" xlink:to="loc_us-gaap_PlanNameAxis_9f12563d-7882-482e-afde-68ef85e1b315" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_9f12563d-7882-482e-afde-68ef85e1b315_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_PlanNameAxis_9f12563d-7882-482e-afde-68ef85e1b315" xlink:to="loc_us-gaap_PlanNameDomain_9f12563d-7882-482e-afde-68ef85e1b315_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_18d8dde7-c1ee-4bf6-8261-9ae7ba783b91" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_PlanNameAxis_9f12563d-7882-482e-afde-68ef85e1b315" xlink:to="loc_us-gaap_PlanNameDomain_18d8dde7-c1ee-4bf6-8261-9ae7ba783b91" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember_7c64993c-c201-4a49-9662-116be5832995" xlink:href="ibp-20221231.xsd#ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanNameDomain_18d8dde7-c1ee-4bf6-8261-9ae7ba783b91" xlink:to="loc_ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember_7c64993c-c201-4a49-9662-116be5832995" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_2d57c3dc-e197-4d27-838b-d5ec8928a94a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_f1de1ca4-ea02-4b12-93c4-145c1b389b0e" xlink:to="loc_us-gaap_AwardTypeAxis_2d57c3dc-e197-4d27-838b-d5ec8928a94a" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2d57c3dc-e197-4d27-838b-d5ec8928a94a_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_2d57c3dc-e197-4d27-838b-d5ec8928a94a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2d57c3dc-e197-4d27-838b-d5ec8928a94a_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_69dfa4f0-16f9-4e0a-90ea-4098514bff0d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_2d57c3dc-e197-4d27-838b-d5ec8928a94a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_69dfa4f0-16f9-4e0a-90ea-4098514bff0d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CommonStockAwardsMember_f1a4c1c6-2709-42f8-a7f3-6a9c63bdf171" xlink:href="ibp-20221231.xsd#ibp_CommonStockAwardsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_69dfa4f0-16f9-4e0a-90ea-4098514bff0d" xlink:to="loc_ibp_CommonStockAwardsMember_f1a4c1c6-2709-42f8-a7f3-6a9c63bdf171" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_PerformanceBasedAwardsMember_99553d88-dd9b-49a6-87b7-14662d977406" xlink:href="ibp-20221231.xsd#ibp_PerformanceBasedAwardsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_69dfa4f0-16f9-4e0a-90ea-4098514bff0d" xlink:to="loc_ibp_PerformanceBasedAwardsMember_99553d88-dd9b-49a6-87b7-14662d977406" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_LiabilityPerformanceBasedStockAwardsMember_fad37428-c6b1-4fff-9a3f-1d2b877588e3" xlink:href="ibp-20221231.xsd#ibp_LiabilityPerformanceBasedStockAwardsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_69dfa4f0-16f9-4e0a-90ea-4098514bff0d" xlink:to="loc_ibp_LiabilityPerformanceBasedStockAwardsMember_fad37428-c6b1-4fff-9a3f-1d2b877588e3" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_PerformanceBasedRestrictedStockUnitsMember_9339229d-a80b-406e-98be-05c337a329f7" xlink:href="ibp-20221231.xsd#ibp_PerformanceBasedRestrictedStockUnitsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_69dfa4f0-16f9-4e0a-90ea-4098514bff0d" xlink:to="loc_ibp_PerformanceBasedRestrictedStockUnitsMember_9339229d-a80b-406e-98be-05c337a329f7" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GranteeStatusAxis_bb2ccd1d-4af4-4dd5-9f62-f987ea7d29e2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GranteeStatusAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_f1de1ca4-ea02-4b12-93c4-145c1b389b0e" xlink:to="loc_us-gaap_GranteeStatusAxis_bb2ccd1d-4af4-4dd5-9f62-f987ea7d29e2" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GranteeStatusDomain_bb2ccd1d-4af4-4dd5-9f62-f987ea7d29e2_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GranteeStatusDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_GranteeStatusAxis_bb2ccd1d-4af4-4dd5-9f62-f987ea7d29e2" xlink:to="loc_us-gaap_GranteeStatusDomain_bb2ccd1d-4af4-4dd5-9f62-f987ea7d29e2_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GranteeStatusDomain_63c9a0e3-e3af-4f1c-bb06-e0da5a1918e5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GranteeStatusDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_GranteeStatusAxis_bb2ccd1d-4af4-4dd5-9f62-f987ea7d29e2" xlink:to="loc_us-gaap_GranteeStatusDomain_63c9a0e3-e3af-4f1c-bb06-e0da5a1918e5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedPaymentArrangementNonemployeeMember_b9f6b6c4-9541-45a1-a952-59f5879316e1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedPaymentArrangementNonemployeeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GranteeStatusDomain_63c9a0e3-e3af-4f1c-bb06-e0da5a1918e5" xlink:to="loc_us-gaap_ShareBasedPaymentArrangementNonemployeeMember_b9f6b6c4-9541-45a1-a952-59f5879316e1" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofStockCompensationExpenseDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#EmployeeBenefitsSummaryofStockCompensationExpenseDetail"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofStockCompensationExpenseDetail" xlink:type="extended" id="ia892594c3907444d8659525183ec5a30_EmployeeBenefitsSummaryofStockCompensationExpenseDetail">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7d712857-cef0-41dd-bf25-2d68fc11878a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_92c1a78e-e77a-4735-a244-6cbfb260cfbd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7d712857-cef0-41dd-bf25-2d68fc11878a" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpense_92c1a78e-e77a-4735-a244-6cbfb260cfbd" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_e4ff8a89-e7e3-4c89-95d3-170fc92d6333" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7d712857-cef0-41dd-bf25-2d68fc11878a" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_e4ff8a89-e7e3-4c89-95d3-170fc92d6333" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_e6ff668d-383c-403f-8ccc-81e49fbde977" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_e4ff8a89-e7e3-4c89-95d3-170fc92d6333" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_e6ff668d-383c-403f-8ccc-81e49fbde977" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_e6ff668d-383c-403f-8ccc-81e49fbde977_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_e6ff668d-383c-403f-8ccc-81e49fbde977" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_e6ff668d-383c-403f-8ccc-81e49fbde977_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_455b0e20-315c-4e6d-a864-4e20e2b56d22" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_e6ff668d-383c-403f-8ccc-81e49fbde977" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_455b0e20-315c-4e6d-a864-4e20e2b56d22" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfSalesMember_1b21690b-833e-46d5-819c-4b54b7f391bf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfSalesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_455b0e20-315c-4e6d-a864-4e20e2b56d22" xlink:to="loc_us-gaap_CostOfSalesMember_1b21690b-833e-46d5-819c-4b54b7f391bf" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingAndMarketingExpenseMember_1c4972e6-d1d9-4489-911a-fb9e233c961d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingAndMarketingExpenseMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_455b0e20-315c-4e6d-a864-4e20e2b56d22" xlink:to="loc_us-gaap_SellingAndMarketingExpenseMember_1c4972e6-d1d9-4489-911a-fb9e233c961d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpenseMember_4af4123e-8b93-451d-8bdd-b81860aef023" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GeneralAndAdministrativeExpenseMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_455b0e20-315c-4e6d-a864-4e20e2b56d22" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpenseMember_4af4123e-8b93-451d-8bdd-b81860aef023" xlink:type="arc" order="2"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/EmployeeBenefitsUnrecognizedShareBasedCompensationExpenseRelatedtoUnvestedAwardsDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#EmployeeBenefitsUnrecognizedShareBasedCompensationExpenseRelatedtoUnvestedAwardsDetails"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/EmployeeBenefitsUnrecognizedShareBasedCompensationExpenseRelatedtoUnvestedAwardsDetails" xlink:type="extended" id="i2acf0bf082d345b384c48f186b9ec1dd_EmployeeBenefitsUnrecognizedShareBasedCompensationExpenseRelatedtoUnvestedAwardsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_fee185b2-8d76-4426-8960-56ab4e2df239" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_f4ea8f15-528c-4218-8cd8-bfce69e7c9af" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_fee185b2-8d76-4426-8960-56ab4e2df239" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_f4ea8f15-528c-4218-8cd8-bfce69e7c9af" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_d81babc2-bd8b-4392-8933-a17ababda9a4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_fee185b2-8d76-4426-8960-56ab4e2df239" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_d81babc2-bd8b-4392-8933-a17ababda9a4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_efbe5d5c-fb26-4820-9ddb-40349a8e6acd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_fee185b2-8d76-4426-8960-56ab4e2df239" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_efbe5d5c-fb26-4820-9ddb-40349a8e6acd" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_49e4e71d-1315-4d4e-af22-4aece46b2b40" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_efbe5d5c-fb26-4820-9ddb-40349a8e6acd" xlink:to="loc_us-gaap_AwardTypeAxis_49e4e71d-1315-4d4e-af22-4aece46b2b40" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_49e4e71d-1315-4d4e-af22-4aece46b2b40_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_49e4e71d-1315-4d4e-af22-4aece46b2b40" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_49e4e71d-1315-4d4e-af22-4aece46b2b40_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_d2ba0457-cf4c-4b12-95d6-fcd1fcf36308" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_49e4e71d-1315-4d4e-af22-4aece46b2b40" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_d2ba0457-cf4c-4b12-95d6-fcd1fcf36308" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CommonStockAwardsMember_ae34d5a3-117e-4c32-a09c-38e2830f4316" xlink:href="ibp-20221231.xsd#ibp_CommonStockAwardsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_d2ba0457-cf4c-4b12-95d6-fcd1fcf36308" xlink:to="loc_ibp_CommonStockAwardsMember_ae34d5a3-117e-4c32-a09c-38e2830f4316" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_PerformanceBasedAwardsMember_967571a2-67f5-404a-832e-b2dddf05e993" xlink:href="ibp-20221231.xsd#ibp_PerformanceBasedAwardsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_d2ba0457-cf4c-4b12-95d6-fcd1fcf36308" xlink:to="loc_ibp_PerformanceBasedAwardsMember_967571a2-67f5-404a-832e-b2dddf05e993" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_PerformanceBasedRestrictedStockUnitsMember_8f9473de-a228-4c7e-bf59-0cd5e5f9ccdf" xlink:href="ibp-20221231.xsd#ibp_PerformanceBasedRestrictedStockUnitsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_d2ba0457-cf4c-4b12-95d6-fcd1fcf36308" xlink:to="loc_ibp_PerformanceBasedRestrictedStockUnitsMember_8f9473de-a228-4c7e-bf59-0cd5e5f9ccdf" xlink:type="arc" order="2"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail" xlink:type="extended" id="i337681b5c30d4a2099896dd4bc827c06_IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail">
    <link:loc xlink:type="locator" xlink:label="loc_ibp_IncomeTaxLineItems_2df82744-9c1b-4d50-9194-f4756fb7f837" xlink:href="ibp-20221231.xsd#ibp_IncomeTaxLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsNetAbstract_04d86d75-7dba-419b-8209-694818e4abc1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsNetAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_IncomeTaxLineItems_2df82744-9c1b-4d50-9194-f4756fb7f837" xlink:to="loc_us-gaap_DeferredTaxAssetsNetAbstract_04d86d75-7dba-419b-8209-694818e4abc1" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances_00f93a5d-10a3-4a49-b3ed-bf54c51a5c6f" xlink:href="ibp-20221231.xsd#ibp_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DeferredTaxAssetsNetAbstract_04d86d75-7dba-419b-8209-694818e4abc1" xlink:to="loc_ibp_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances_00f93a5d-10a3-4a49-b3ed-bf54c51a5c6f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts_1ce4f1a4-60e3-486f-ada7-31b746d28769" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DeferredTaxAssetsNetAbstract_04d86d75-7dba-419b-8209-694818e4abc1" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts_1ce4f1a4-60e3-486f-ada7-31b746d28769" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsInventory_db38871c-1978-48d6-bebe-3dced04ab88b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsInventory"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DeferredTaxAssetsNetAbstract_04d86d75-7dba-419b-8209-694818e4abc1" xlink:to="loc_us-gaap_DeferredTaxAssetsInventory_db38871c-1978-48d6-bebe-3dced04ab88b" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment_f51f01dc-8561-4514-8656-4bdb9cd36d9a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DeferredTaxAssetsNetAbstract_04d86d75-7dba-419b-8209-694818e4abc1" xlink:to="loc_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment_f51f01dc-8561-4514-8656-4bdb9cd36d9a" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets_2c30b6b1-b515-49d8-b1f5-0c160f599e8f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DeferredTaxAssetsNetAbstract_04d86d75-7dba-419b-8209-694818e4abc1" xlink:to="loc_us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets_2c30b6b1-b515-49d8-b1f5-0c160f599e8f" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_46b578ec-74ac-4dee-b627-6e0914ec69c4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwards"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DeferredTaxAssetsNetAbstract_04d86d75-7dba-419b-8209-694818e4abc1" xlink:to="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_46b578ec-74ac-4dee-b627-6e0914ec69c4" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsOther_4af89f1d-b4de-463e-8af4-075d1eee0647" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOther"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DeferredTaxAssetsNetAbstract_04d86d75-7dba-419b-8209-694818e4abc1" xlink:to="loc_us-gaap_DeferredTaxAssetsOther_4af89f1d-b4de-463e-8af4-075d1eee0647" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsGross_f30f8e17-2a3c-4daf-af5c-dc05bf2074e0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsGross"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DeferredTaxAssetsNetAbstract_04d86d75-7dba-419b-8209-694818e4abc1" xlink:to="loc_us-gaap_DeferredTaxAssetsGross_f30f8e17-2a3c-4daf-af5c-dc05bf2074e0" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsValuationAllowance_e7b39eeb-8b9d-426e-823f-d94800659e84" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsValuationAllowance"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DeferredTaxAssetsNetAbstract_04d86d75-7dba-419b-8209-694818e4abc1" xlink:to="loc_us-gaap_DeferredTaxAssetsValuationAllowance_e7b39eeb-8b9d-426e-823f-d94800659e84" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsNet_6c10d27d-0bf0-48ec-834c-fc2075824247" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DeferredTaxAssetsNetAbstract_04d86d75-7dba-419b-8209-694818e4abc1" xlink:to="loc_us-gaap_DeferredTaxAssetsNet_6c10d27d-0bf0-48ec-834c-fc2075824247" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesAbstract_f8abeb51-46bc-4e15-b83c-098ac4747135" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_IncomeTaxLineItems_2df82744-9c1b-4d50-9194-f4756fb7f837" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesAbstract_f8abeb51-46bc-4e15-b83c-098ac4747135" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesDeferredExpenseReservesAndAccruals_331be781-792c-4e11-9ee2-e785a200cd02" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesDeferredExpenseReservesAndAccruals"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesAbstract_f8abeb51-46bc-4e15-b83c-098ac4747135" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesDeferredExpenseReservesAndAccruals_331be781-792c-4e11-9ee2-e785a200cd02" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_f53e4df5-a58a-40a7-8817-32a5cf916a79" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesAbstract_f8abeb51-46bc-4e15-b83c-098ac4747135" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_f53e4df5-a58a-40a7-8817-32a5cf916a79" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets_a4b7aa51-b39a-4419-b742-2793c1b57c8d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesAbstract_f8abeb51-46bc-4e15-b83c-098ac4747135" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets_a4b7aa51-b39a-4419-b742-2793c1b57c8d" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesInvestments_4a643475-1b2b-4cf7-b284-757294275615" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesInvestments"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesAbstract_f8abeb51-46bc-4e15-b83c-098ac4747135" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesInvestments_4a643475-1b2b-4cf7-b284-757294275615" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesOther_996be4d7-ed45-46c0-a7cb-76f720192655" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesOther"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesAbstract_f8abeb51-46bc-4e15-b83c-098ac4747135" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesOther_996be4d7-ed45-46c0-a7cb-76f720192655" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilities_095e1090-5e28-4a04-b780-2087bc07151f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxLiabilities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesAbstract_f8abeb51-46bc-4e15-b83c-098ac4747135" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilities_095e1090-5e28-4a04-b780-2087bc07151f" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilities_ba63a6ff-4460-4ea9-8397-aa3c2e400269" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesAbstract_f8abeb51-46bc-4e15-b83c-098ac4747135" xlink:to="loc_us-gaap_DeferredTaxLiabilities_ba63a6ff-4460-4ea9-8397-aa3c2e400269" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsLiabilitiesNet_454e1d6b-5a25-428a-8047-d502f9bf0483" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsLiabilitiesNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesAbstract_f8abeb51-46bc-4e15-b83c-098ac4747135" xlink:to="loc_us-gaap_DeferredTaxAssetsLiabilitiesNet_454e1d6b-5a25-428a-8047-d502f9bf0483" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_IncomeTaxTable_451ad819-5e5a-4906-b4a5-25c4ea82fd88" xlink:href="ibp-20221231.xsd#ibp_IncomeTaxTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_ibp_IncomeTaxLineItems_2df82744-9c1b-4d50-9194-f4756fb7f837" xlink:to="loc_ibp_IncomeTaxTable_451ad819-5e5a-4906-b4a5-25c4ea82fd88" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_07476b8a-9591-4eb5-acbc-9a7f0ff26880" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_ibp_IncomeTaxTable_451ad819-5e5a-4906-b4a5-25c4ea82fd88" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_07476b8a-9591-4eb5-acbc-9a7f0ff26880" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_07476b8a-9591-4eb5-acbc-9a7f0ff26880_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_07476b8a-9591-4eb5-acbc-9a7f0ff26880" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_07476b8a-9591-4eb5-acbc-9a7f0ff26880_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_8ac9efc9-97fa-4a3d-b350-c0ee446ab0cc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_07476b8a-9591-4eb5-acbc-9a7f0ff26880" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_8ac9efc9-97fa-4a3d-b350-c0ee446ab0cc" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNoncurrentAssetsMember_93d63338-bb65-4be7-b7ff-dc06d9a935e5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNoncurrentAssetsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_8ac9efc9-97fa-4a3d-b350-c0ee446ab0cc" xlink:to="loc_us-gaap_OtherNoncurrentAssetsMember_93d63338-bb65-4be7-b7ff-dc06d9a935e5" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DeferredIncomeTaxLiabilitiesNetMember_140ada65-e9cd-402b-ac1a-ad6c855708ab" xlink:href="ibp-20221231.xsd#ibp_DeferredIncomeTaxLiabilitiesNetMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_8ac9efc9-97fa-4a3d-b350-c0ee446ab0cc" xlink:to="loc_ibp_DeferredIncomeTaxLiabilitiesNetMember_140ada65-e9cd-402b-ac1a-ad6c855708ab" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/IncomeTaxesAdditionalInformationDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#IncomeTaxesAdditionalInformationDetail"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/IncomeTaxesAdditionalInformationDetail" xlink:type="extended" id="ib600d5ba0e154f45acbccf8c84317ab7_IncomeTaxesAdditionalInformationDetail">
    <link:loc xlink:type="locator" xlink:label="loc_ibp_IncomeTaxesLineItems_5b575f7f-d9f4-422d-a4f5-af6aac53d182" xlink:href="ibp-20221231.xsd#ibp_IncomeTaxesLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_UnrecognizedTaxBenefitsNetOfIncomeTaxPenaltiesAndInterestExpense_eb3b9af4-9af4-421c-ae72-13b57b8bd778" xlink:href="ibp-20221231.xsd#ibp_UnrecognizedTaxBenefitsNetOfIncomeTaxPenaltiesAndInterestExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_IncomeTaxesLineItems_5b575f7f-d9f4-422d-a4f5-af6aac53d182" xlink:to="loc_ibp_UnrecognizedTaxBenefitsNetOfIncomeTaxPenaltiesAndInterestExpense_eb3b9af4-9af4-421c-ae72-13b57b8bd778" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate_85437636-70c3-4fe0-9f0a-712f36929383" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_IncomeTaxesLineItems_5b575f7f-d9f4-422d-a4f5-af6aac53d182" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate_85437636-70c3-4fe0-9f0a-712f36929383" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_IncomeTaxTable_a97979fc-1396-4a2b-a697-e7e27bfb6d86" xlink:href="ibp-20221231.xsd#ibp_IncomeTaxTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_ibp_IncomeTaxesLineItems_5b575f7f-d9f4-422d-a4f5-af6aac53d182" xlink:to="loc_ibp_IncomeTaxTable_a97979fc-1396-4a2b-a697-e7e27bfb6d86" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_e369ace1-e883-4833-ae6d-821b926a50e5" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_ibp_IncomeTaxTable_a97979fc-1396-4a2b-a697-e7e27bfb6d86" xlink:to="loc_srt_RangeAxis_e369ace1-e883-4833-ae6d-821b926a50e5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_e369ace1-e883-4833-ae6d-821b926a50e5_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_e369ace1-e883-4833-ae6d-821b926a50e5" xlink:to="loc_srt_RangeMember_e369ace1-e883-4833-ae6d-821b926a50e5_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_59bfee94-cf1e-47e4-96e2-5c00c1b603d2" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_e369ace1-e883-4833-ae6d-821b926a50e5" xlink:to="loc_srt_RangeMember_59bfee94-cf1e-47e4-96e2-5c00c1b603d2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_185f4184-2779-4a1a-828d-28b78b6dfd94" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_59bfee94-cf1e-47e4-96e2-5c00c1b603d2" xlink:to="loc_srt_MinimumMember_185f4184-2779-4a1a-828d-28b78b6dfd94" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_6341c4e4-d140-40f7-bcd8-fb972788648c" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_59bfee94-cf1e-47e4-96e2-5c00c1b603d2" xlink:to="loc_srt_MaximumMember_6341c4e4-d140-40f7-bcd8-fb972788648c" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/RelatedPartyTransactionsScheduleofRelatedPartyTransactionsDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#RelatedPartyTransactionsScheduleofRelatedPartyTransactionsDetail"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/RelatedPartyTransactionsScheduleofRelatedPartyTransactionsDetail" xlink:type="extended" id="i8b165a49cb8f4d1786b516408b4a0f58_RelatedPartyTransactionsScheduleofRelatedPartyTransactionsDetail">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionLineItems_10b8866b-708f-4f74-8859-29329f536fb5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromRelatedParties_b01a2eec-029e-499e-bb81-6700a72b6bfa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromRelatedParties"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems_10b8866b-708f-4f74-8859-29329f536fb5" xlink:to="loc_us-gaap_RevenueFromRelatedParties_b01a2eec-029e-499e-bb81-6700a72b6bfa" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty_7da7a6b7-8fb0-4665-9a56-0b2c04dd0953" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems_10b8866b-708f-4f74-8859-29329f536fb5" xlink:to="loc_us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty_7da7a6b7-8fb0-4665-9a56-0b2c04dd0953" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty_a64db8ae-2cf7-4762-8ad0-1b396f482dc4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems_10b8866b-708f-4f74-8859-29329f536fb5" xlink:to="loc_us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty_a64db8ae-2cf7-4762-8ad0-1b396f482dc4" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_4779456e-e69b-4a76-849f-f087b48be24d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems_10b8866b-708f-4f74-8859-29329f536fb5" xlink:to="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_4779456e-e69b-4a76-849f-f087b48be24d" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_2afc76cc-6dd8-4301-8f44-74fc8abb711f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_4779456e-e69b-4a76-849f-f087b48be24d" xlink:to="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_2afc76cc-6dd8-4301-8f44-74fc8abb711f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyDomain_2afc76cc-6dd8-4301-8f44-74fc8abb711f_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_2afc76cc-6dd8-4301-8f44-74fc8abb711f" xlink:to="loc_us-gaap_RelatedPartyDomain_2afc76cc-6dd8-4301-8f44-74fc8abb711f_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyDomain_4a22cb4f-c55b-4b34-919d-4d38009bd3a2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_2afc76cc-6dd8-4301-8f44-74fc8abb711f" xlink:to="loc_us-gaap_RelatedPartyDomain_4a22cb4f-c55b-4b34-919d-4d38009bd3a2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_AffiliatedEntityMember_1efc02b7-d9e0-49af-9760-df3b36ecbce9" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_AffiliatedEntityMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RelatedPartyDomain_4a22cb4f-c55b-4b34-919d-4d38009bd3a2" xlink:to="loc_srt_AffiliatedEntityMember_1efc02b7-d9e0-49af-9760-df3b36ecbce9" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/RelatedPartyTransactionsAdditionalInformationDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#RelatedPartyTransactionsAdditionalInformationDetail"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/RelatedPartyTransactionsAdditionalInformationDetail" xlink:type="extended" id="i665fe516108248edbea811085a81156c_RelatedPartyTransactionsAdditionalInformationDetail">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionLineItems_d3a11744-c390-495a-9aa8-1c50ac2b1331" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableRelatedPartiesCurrent_5f51b901-3a67-45f0-9a39-ba3b376797da" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableRelatedPartiesCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems_d3a11744-c390-495a-9aa8-1c50ac2b1331" xlink:to="loc_us-gaap_AccountsReceivableRelatedPartiesCurrent_5f51b901-3a67-45f0-9a39-ba3b376797da" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromRelatedParties_51326d9f-4f15-431d-8c56-5803961a80b9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromRelatedParties"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems_d3a11744-c390-495a-9aa8-1c50ac2b1331" xlink:to="loc_us-gaap_RevenueFromRelatedParties_51326d9f-4f15-431d-8c56-5803961a80b9" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_3de02ff9-ba02-48fa-a676-b161c1d4b055" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems_d3a11744-c390-495a-9aa8-1c50ac2b1331" xlink:to="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_3de02ff9-ba02-48fa-a676-b161c1d4b055" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_db33783e-ff96-4ef5-9ace-6fc9b9ba2d36" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_3de02ff9-ba02-48fa-a676-b161c1d4b055" xlink:to="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_db33783e-ff96-4ef5-9ace-6fc9b9ba2d36" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyDomain_db33783e-ff96-4ef5-9ace-6fc9b9ba2d36_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_db33783e-ff96-4ef5-9ace-6fc9b9ba2d36" xlink:to="loc_us-gaap_RelatedPartyDomain_db33783e-ff96-4ef5-9ace-6fc9b9ba2d36_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyDomain_0390ed35-1eb7-42b6-ac9f-2061efee669a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_db33783e-ff96-4ef5-9ace-6fc9b9ba2d36" xlink:to="loc_us-gaap_RelatedPartyDomain_0390ed35-1eb7-42b6-ac9f-2061efee669a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_AffiliatedEntityMember_8cddf16e-5d8c-4f00-bfb8-2c8aabee9aed" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_AffiliatedEntityMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RelatedPartyDomain_0390ed35-1eb7-42b6-ac9f-2061efee669a" xlink:to="loc_srt_AffiliatedEntityMember_8cddf16e-5d8c-4f00-bfb8-2c8aabee9aed" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TrustForBenefitOfEmployeesMember_9a536b9f-b242-4fe3-925c-f3d1491fa4a3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrustForBenefitOfEmployeesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RelatedPartyDomain_0390ed35-1eb7-42b6-ac9f-2061efee669a" xlink:to="loc_us-gaap_TrustForBenefitOfEmployeesMember_9a536b9f-b242-4fe3-925c-f3d1491fa4a3" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetail"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetail" xlink:type="extended" id="id6fd5903100a461f951409335bdefb79_CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetail">
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CommitmentsAndContingenciesDisclosureLineItems_c6d00eeb-cf0a-4686-b2c1-7b016d039247" xlink:href="ibp-20221231.xsd#ibp_CommitmentsAndContingenciesDisclosureLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy_8c347ec6-7fa9-4fd9-960c-dfaf1941736f" xlink:href="ibp-20221231.xsd#ibp_InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_CommitmentsAndContingenciesDisclosureLineItems_c6d00eeb-cf0a-4686-b2c1-7b016d039247" xlink:to="loc_ibp_InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy_8c347ec6-7fa9-4fd9-960c-dfaf1941736f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_InsuranceReceivableForClaimsExceedingStopLossLimit_2d75029e-0774-4956-abdc-68396d4be62c" xlink:href="ibp-20221231.xsd#ibp_InsuranceReceivableForClaimsExceedingStopLossLimit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_CommitmentsAndContingenciesDisclosureLineItems_c6d00eeb-cf0a-4686-b2c1-7b016d039247" xlink:to="loc_ibp_InsuranceReceivableForClaimsExceedingStopLossLimit_2d75029e-0774-4956-abdc-68396d4be62c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InsuranceSettlementsReceivableNoncurrent_5d2bd8b8-fc40-4bcb-905c-3d10e65fabd0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InsuranceSettlementsReceivableNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_CommitmentsAndContingenciesDisclosureLineItems_c6d00eeb-cf0a-4686-b2c1-7b016d039247" xlink:to="loc_us-gaap_InsuranceSettlementsReceivableNoncurrent_5d2bd8b8-fc40-4bcb-905c-3d10e65fabd0" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CommitmentsAndContingenciesDisclosureTable_f66e9692-df65-4bee-ab3b-6f30f8870d1c" xlink:href="ibp-20221231.xsd#ibp_CommitmentsAndContingenciesDisclosureTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_ibp_CommitmentsAndContingenciesDisclosureLineItems_c6d00eeb-cf0a-4686-b2c1-7b016d039247" xlink:to="loc_ibp_CommitmentsAndContingenciesDisclosureTable_f66e9692-df65-4bee-ab3b-6f30f8870d1c" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfMalpracticeInsuranceTypeAndTierIdentifierAxis_5407857a-e5b7-4c23-acff-356d8d5993a3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfMalpracticeInsuranceTypeAndTierIdentifierAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_ibp_CommitmentsAndContingenciesDisclosureTable_f66e9692-df65-4bee-ab3b-6f30f8870d1c" xlink:to="loc_us-gaap_ScheduleOfMalpracticeInsuranceTypeAndTierIdentifierAxis_5407857a-e5b7-4c23-acff-356d8d5993a3" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TypeAndTierIdentifierDomain_5407857a-e5b7-4c23-acff-356d8d5993a3_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeAndTierIdentifierDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ScheduleOfMalpracticeInsuranceTypeAndTierIdentifierAxis_5407857a-e5b7-4c23-acff-356d8d5993a3" xlink:to="loc_us-gaap_TypeAndTierIdentifierDomain_5407857a-e5b7-4c23-acff-356d8d5993a3_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TypeAndTierIdentifierDomain_a3632241-2f1f-4b61-a5bd-22621aacfc3c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeAndTierIdentifierDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ScheduleOfMalpracticeInsuranceTypeAndTierIdentifierAxis_5407857a-e5b7-4c23-acff-356d8d5993a3" xlink:to="loc_us-gaap_TypeAndTierIdentifierDomain_a3632241-2f1f-4b61-a5bd-22621aacfc3c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeneralLiabilityMember_363a4614-d0b9-4c19-9496-b9fc31ec64a9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GeneralLiabilityMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TypeAndTierIdentifierDomain_a3632241-2f1f-4b61-a5bd-22621aacfc3c" xlink:to="loc_us-gaap_GeneralLiabilityMember_363a4614-d0b9-4c19-9496-b9fc31ec64a9" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/BusinessCombinationsAdditionalInformationDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#BusinessCombinationsAdditionalInformationDetail"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/BusinessCombinationsAdditionalInformationDetail" xlink:type="extended" id="i906ca8a61b294c34abee106267b5bb7e_BusinessCombinationsAdditionalInformationDetail">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_b7c50709-dbc8-4249-be17-75f056773a92" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfBusinessesAcquired_b1e9ca9e-ac4f-4732-8c52-55d758108a3c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NumberOfBusinessesAcquired"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b7c50709-dbc8-4249-be17-75f056773a92" xlink:to="loc_us-gaap_NumberOfBusinessesAcquired_b1e9ca9e-ac4f-4732-8c52-55d758108a3c" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts_6d2ce6d3-d0be-447a-b82d-da9e9eb306a8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationAcquisitionRelatedCosts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b7c50709-dbc8-4249-be17-75f056773a92" xlink:to="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts_6d2ce6d3-d0be-447a-b82d-da9e9eb306a8" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationSeparatelyRecognizedTransactionsRevenuesAndGainsRecognized_6a6ad0b5-8b05-474e-bd42-556f12a96d49" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationSeparatelyRecognizedTransactionsRevenuesAndGainsRecognized"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b7c50709-dbc8-4249-be17-75f056773a92" xlink:to="loc_us-gaap_BusinessCombinationSeparatelyRecognizedTransactionsRevenuesAndGainsRecognized_6a6ad0b5-8b05-474e-bd42-556f12a96d49" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount_5ee9e62e-e6b6-4d15-966d-eda2888cbc27" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b7c50709-dbc8-4249-be17-75f056773a92" xlink:to="loc_us-gaap_BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount_5ee9e62e-e6b6-4d15-966d-eda2888cbc27" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets_8b74d9c1-4185-4d4b-8a3b-37162d62898b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfIntangibleAssets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b7c50709-dbc8-4249-be17-75f056773a92" xlink:to="loc_us-gaap_AmortizationOfIntangibleAssets_8b74d9c1-4185-4d4b-8a3b-37162d62898b" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestExpense_54c4b188-0e6b-4b95-a24b-d3c044a3677b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b7c50709-dbc8-4249-be17-75f056773a92" xlink:to="loc_us-gaap_InterestExpense_54c4b188-0e6b-4b95-a24b-d3c044a3677b" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_9dc71341-0bf9-498e-9255-dd2adbdc0592" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b7c50709-dbc8-4249-be17-75f056773a92" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_9dc71341-0bf9-498e-9255-dd2adbdc0592" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillPurchaseAccountingAdjustments_8184c2d2-121f-492a-837e-59b9c2f762be" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillPurchaseAccountingAdjustments"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b7c50709-dbc8-4249-be17-75f056773a92" xlink:to="loc_us-gaap_GoodwillPurchaseAccountingAdjustments_8184c2d2-121f-492a-837e-59b9c2f762be" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_6814e4a9-992b-4304-acc0-4cebfec54e9e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b7c50709-dbc8-4249-be17-75f056773a92" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_6814e4a9-992b-4304-acc0-4cebfec54e9e" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_5644bc9a-d18c-4972-9b64-7019574aef11" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b7c50709-dbc8-4249-be17-75f056773a92" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_5644bc9a-d18c-4972-9b64-7019574aef11" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_b7c4be67-54b6-452c-9c2e-6e2f017d9f22" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_5644bc9a-d18c-4972-9b64-7019574aef11" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_b7c4be67-54b6-452c-9c2e-6e2f017d9f22" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_b7c4be67-54b6-452c-9c2e-6e2f017d9f22_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_b7c4be67-54b6-452c-9c2e-6e2f017d9f22" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_b7c4be67-54b6-452c-9c2e-6e2f017d9f22_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_8aea5674-7351-4d01-baf5-48e743e286be" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_b7c4be67-54b6-452c-9c2e-6e2f017d9f22" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_8aea5674-7351-4d01-baf5-48e743e286be" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_d90a1861-d593-4c83-89e6-4abcc8a40e1f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_8aea5674-7351-4d01-baf5-48e743e286be" xlink:to="loc_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_d90a1861-d593-4c83-89e6-4abcc8a40e1f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DenisonGlassAndMirrorMember_d5ffca26-2a31-4a7e-ac61-2d2bca480105" xlink:href="ibp-20221231.xsd#ibp_DenisonGlassAndMirrorMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_8aea5674-7351-4d01-baf5-48e743e286be" xlink:to="loc_ibp_DenisonGlassAndMirrorMember_d5ffca26-2a31-4a7e-ac61-2d2bca480105" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementAxis_8972e006-1bbf-494e-ae5a-64771af39c8e" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_5644bc9a-d18c-4972-9b64-7019574aef11" xlink:to="loc_srt_RestatementAxis_8972e006-1bbf-494e-ae5a-64771af39c8e" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementDomain_8972e006-1bbf-494e-ae5a-64771af39c8e_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RestatementAxis_8972e006-1bbf-494e-ae5a-64771af39c8e" xlink:to="loc_srt_RestatementDomain_8972e006-1bbf-494e-ae5a-64771af39c8e_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementDomain_79d71472-4ae4-4d1b-a524-98099e7b1936" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RestatementAxis_8972e006-1bbf-494e-ae5a-64771af39c8e" xlink:to="loc_srt_RestatementDomain_79d71472-4ae4-4d1b-a524-98099e7b1936" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementAdjustmentMember_51d01491-e2be-4d0b-bcb4-c92b2b757550" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementAdjustmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RestatementDomain_79d71472-4ae4-4d1b-a524-98099e7b1936" xlink:to="loc_srt_RestatementAdjustmentMember_51d01491-e2be-4d0b-bcb4-c92b2b757550" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#BusinessCombinationsSummaryofBusinessAcquisitionsDetail"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetail" xlink:type="extended" id="i56d93005165649edb86cec6d2d806dc9_BusinessCombinationsSummaryofBusinessAcquisitionsDetail">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_390267e7-d437-4dda-b0e6-26db62074e14" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesGross_31a91274-6efb-45dd-8422-2ac3fca98238" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireBusinessesGross"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_390267e7-d437-4dda-b0e6-26db62074e14" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesGross_31a91274-6efb-45dd-8422-2ac3fca98238" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness_2947dc0f-b99e-4cfd-a0f7-d562ceb6a0a8" xlink:href="ibp-20221231.xsd#ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_390267e7-d437-4dda-b0e6-26db62074e14" xlink:to="loc_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness_2947dc0f-b99e-4cfd-a0f7-d562ceb6a0a8" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferred1_65ae54fe-41ce-4adb-8022-dd0573df44f7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationConsiderationTransferred1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_390267e7-d437-4dda-b0e6-26db62074e14" xlink:to="loc_us-gaap_BusinessCombinationConsiderationTransferred1_65ae54fe-41ce-4adb-8022-dd0573df44f7" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual_0615a702-9f2e-434d-a624-d3d16190f7e0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_390267e7-d437-4dda-b0e6-26db62074e14" xlink:to="loc_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual_0615a702-9f2e-434d-a624-d3d16190f7e0" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual_fe494d77-056c-4b6d-bc8e-f265b552e624" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_390267e7-d437-4dda-b0e6-26db62074e14" xlink:to="loc_us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual_fe494d77-056c-4b6d-bc8e-f265b552e624" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_abc94529-ed33-41d9-afb9-305c7fb9c991" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_390267e7-d437-4dda-b0e6-26db62074e14" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_abc94529-ed33-41d9-afb9-305c7fb9c991" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_9cf02c62-bf4d-40bf-9d78-1dcb2d75dadf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_abc94529-ed33-41d9-afb9-305c7fb9c991" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_9cf02c62-bf4d-40bf-9d78-1dcb2d75dadf" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_9cf02c62-bf4d-40bf-9d78-1dcb2d75dadf_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_9cf02c62-bf4d-40bf-9d78-1dcb2d75dadf" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_9cf02c62-bf4d-40bf-9d78-1dcb2d75dadf_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_78e7ff8b-cbeb-432e-a426-ff69fcdff7af" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_9cf02c62-bf4d-40bf-9d78-1dcb2d75dadf" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_78e7ff8b-cbeb-432e-a426-ff69fcdff7af" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CentralAluminumMember_8ddf16bc-87b2-47a2-8c9f-2e0c5323f611" xlink:href="ibp-20221231.xsd#ibp_CentralAluminumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_78e7ff8b-cbeb-432e-a426-ff69fcdff7af" xlink:to="loc_ibp_CentralAluminumMember_8ddf16bc-87b2-47a2-8c9f-2e0c5323f611" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_ABSMember_15aca2f2-383d-40e6-83e4-6b0b4352ac06" xlink:href="ibp-20221231.xsd#ibp_ABSMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_78e7ff8b-cbeb-432e-a426-ff69fcdff7af" xlink:to="loc_ibp_ABSMember_15aca2f2-383d-40e6-83e4-6b0b4352ac06" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_IWMember_540a05c0-455c-4115-b6eb-e10fa1e83b59" xlink:href="ibp-20221231.xsd#ibp_IWMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_78e7ff8b-cbeb-432e-a426-ff69fcdff7af" xlink:to="loc_ibp_IWMember_540a05c0-455c-4115-b6eb-e10fa1e83b59" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FiveStarMember_03a10bee-0608-4b1f-9944-91b3991d1b98" xlink:href="ibp-20221231.xsd#ibp_FiveStarMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_78e7ff8b-cbeb-432e-a426-ff69fcdff7af" xlink:to="loc_ibp_FiveStarMember_03a10bee-0608-4b1f-9944-91b3991d1b98" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_AMDMember_44f3c232-3425-485c-9163-f92c059c117b" xlink:href="ibp-20221231.xsd#ibp_AMDMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_78e7ff8b-cbeb-432e-a426-ff69fcdff7af" xlink:to="loc_ibp_AMDMember_44f3c232-3425-485c-9163-f92c059c117b" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_NorkoteMember_b81129d8-18c1-43eb-9924-93b462b045f3" xlink:href="ibp-20221231.xsd#ibp_NorkoteMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_78e7ff8b-cbeb-432e-a426-ff69fcdff7af" xlink:to="loc_ibp_NorkoteMember_b81129d8-18c1-43eb-9924-93b462b045f3" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_OtherAcquisitionMember_ecc0cf06-c527-432e-82b7-11807df1667f" xlink:href="ibp-20221231.xsd#ibp_OtherAcquisitionMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_78e7ff8b-cbeb-432e-a426-ff69fcdff7af" xlink:to="loc_ibp_OtherAcquisitionMember_ecc0cf06-c527-432e-82b7-11807df1667f" xlink:type="arc" order="6"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail" xlink:type="extended" id="i642c333ecdb547b290bf30eca8e301f8_BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_9397a4ff-9fb1-4191-b8f1-6205d15d3c9f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_9397a4ff-9fb1-4191-b8f1-6205d15d3c9f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_66fbb841-9d4b-4a91-939c-5e5bbe9d7cef" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_66fbb841-9d4b-4a91-939c-5e5bbe9d7cef" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_f0d1c841-3b46-4761-bf45-691facb0ddc4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_f0d1c841-3b46-4761-bf45-691facb0ddc4" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_23372f5a-d0b1-4de0-bcd3-f44381f7d76f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_23372f5a-d0b1-4de0-bcd3-f44381f7d76f" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_03ec4999-0f75-4eab-8647-0a984cc49bc9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_03ec4999-0f75-4eab-8647-0a984cc49bc9" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset_4af14c29-d9e8-40b7-809d-3de22f99c528" xlink:href="ibp-20221231.xsd#ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:to="loc_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset_4af14c29-d9e8-40b7-809d-3de22f99c528" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_aa35cbbf-8902-48de-b643-bf402049721e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_aa35cbbf-8902-48de-b643-bf402049721e" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_30d3946f-01d0-48f5-a26a-22c0db178c19" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:to="loc_us-gaap_Goodwill_30d3946f-01d0-48f5-a26a-22c0db178c19" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_a2911b9f-521d-4b77-a23e-87a3c9d131e4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_a2911b9f-521d-4b77-a23e-87a3c9d131e4" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities_f6eb44a8-5d48-4856-8393-0d26972500cf" xlink:href="ibp-20221231.xsd#ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:to="loc_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities_f6eb44a8-5d48-4856-8393-0d26972500cf" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_a80e7e25-3db4-430d-8d75-74332bfa9520" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_a80e7e25-3db4-430d-8d75-74332bfa9520" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable_09e906b1-8f8a-414f-8837-d7ac33be8f18" xlink:href="ibp-20221231.xsd#ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:to="loc_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable_09e906b1-8f8a-414f-8837-d7ac33be8f18" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_f6363baf-c351-4842-8cd1-9969a4d42dab" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_f6363baf-c351-4842-8cd1-9969a4d42dab" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_ec083476-6526-4ec5-859b-26f62397cbb3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_ec083476-6526-4ec5-859b-26f62397cbb3" xlink:type="arc" order="13"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness_221a2f77-f927-463d-b99c-2b20c30223d6" xlink:href="ibp-20221231.xsd#ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:to="loc_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness_221a2f77-f927-463d-b99c-2b20c30223d6" xlink:type="arc" order="14"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesGross_85f8be5c-1d6d-447e-8fa7-1514e454a197" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireBusinessesGross"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesGross_85f8be5c-1d6d-447e-8fa7-1514e454a197" xlink:type="arc" order="15"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_45dd932e-9ed9-4c46-ae93-ba27a930bf99" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_45dd932e-9ed9-4c46-ae93-ba27a930bf99" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_32ed6e1d-6b9e-4f83-a9c5-f80aeabb45b5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_45dd932e-9ed9-4c46-ae93-ba27a930bf99" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_32ed6e1d-6b9e-4f83-a9c5-f80aeabb45b5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_32ed6e1d-6b9e-4f83-a9c5-f80aeabb45b5_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_32ed6e1d-6b9e-4f83-a9c5-f80aeabb45b5" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_32ed6e1d-6b9e-4f83-a9c5-f80aeabb45b5_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_02e77a54-f372-47fb-bb53-58016bcbd1f9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_32ed6e1d-6b9e-4f83-a9c5-f80aeabb45b5" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_02e77a54-f372-47fb-bb53-58016bcbd1f9" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_TwoThousandTwentyTwoAcquisitionsMember_19179756-1ca0-48a2-abb5-f261dedfd4b4" xlink:href="ibp-20221231.xsd#ibp_TwoThousandTwentyTwoAcquisitionsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_02e77a54-f372-47fb-bb53-58016bcbd1f9" xlink:to="loc_ibp_TwoThousandTwentyTwoAcquisitionsMember_19179756-1ca0-48a2-abb5-f261dedfd4b4" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CentralAluminumMember_3dd79a57-d18a-4d55-890f-92e1d6b595b8" xlink:href="ibp-20221231.xsd#ibp_CentralAluminumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_TwoThousandTwentyTwoAcquisitionsMember_19179756-1ca0-48a2-abb5-f261dedfd4b4" xlink:to="loc_ibp_CentralAluminumMember_3dd79a57-d18a-4d55-890f-92e1d6b595b8" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_ABSMember_ff6f3aa1-440f-4f95-a520-ec8ba4c7091e" xlink:href="ibp-20221231.xsd#ibp_ABSMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_TwoThousandTwentyTwoAcquisitionsMember_19179756-1ca0-48a2-abb5-f261dedfd4b4" xlink:to="loc_ibp_ABSMember_ff6f3aa1-440f-4f95-a520-ec8ba4c7091e" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_OtherAcquisitionMember_f26d1475-e0b4-4de4-8d9f-5deeec2c17d4" xlink:href="ibp-20221231.xsd#ibp_OtherAcquisitionMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_TwoThousandTwentyTwoAcquisitionsMember_19179756-1ca0-48a2-abb5-f261dedfd4b4" xlink:to="loc_ibp_OtherAcquisitionMember_f26d1475-e0b4-4de4-8d9f-5deeec2c17d4" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_TwoThousandTwentyOneAcquisitionsMember_b6e6edd1-0dbf-4409-b125-0f59ce0e6ec5" xlink:href="ibp-20221231.xsd#ibp_TwoThousandTwentyOneAcquisitionsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_02e77a54-f372-47fb-bb53-58016bcbd1f9" xlink:to="loc_ibp_TwoThousandTwentyOneAcquisitionsMember_b6e6edd1-0dbf-4409-b125-0f59ce0e6ec5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_IWMember_3dc1df95-515f-4f43-ba21-735d2980fdc1" xlink:href="ibp-20221231.xsd#ibp_IWMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_TwoThousandTwentyOneAcquisitionsMember_b6e6edd1-0dbf-4409-b125-0f59ce0e6ec5" xlink:to="loc_ibp_IWMember_3dc1df95-515f-4f43-ba21-735d2980fdc1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FiveStarMember_51377326-d58e-4184-b83e-1357f4ca76c0" xlink:href="ibp-20221231.xsd#ibp_FiveStarMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_TwoThousandTwentyOneAcquisitionsMember_b6e6edd1-0dbf-4409-b125-0f59ce0e6ec5" xlink:to="loc_ibp_FiveStarMember_51377326-d58e-4184-b83e-1357f4ca76c0" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_AMDMember_0be5a6be-c42e-4f95-b9d3-f263e0efaafd" xlink:href="ibp-20221231.xsd#ibp_AMDMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_TwoThousandTwentyOneAcquisitionsMember_b6e6edd1-0dbf-4409-b125-0f59ce0e6ec5" xlink:to="loc_ibp_AMDMember_0be5a6be-c42e-4f95-b9d3-f263e0efaafd" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_OtherAcquisitionMember_2f53d079-50b1-4c26-a862-8c118c770053" xlink:href="ibp-20221231.xsd#ibp_OtherAcquisitionMember"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_TwoThousandTwentyAcquisitionsMember_fa492dec-32ef-42bf-b36e-ae7e841cb74f" xlink:href="ibp-20221231.xsd#ibp_TwoThousandTwentyAcquisitionsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_02e77a54-f372-47fb-bb53-58016bcbd1f9" xlink:to="loc_ibp_TwoThousandTwentyAcquisitionsMember_fa492dec-32ef-42bf-b36e-ae7e841cb74f" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_NorkoteMember_8ebec36f-2c0e-4090-a5e7-28f498281e68" xlink:href="ibp-20221231.xsd#ibp_NorkoteMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_ibp_TwoThousandTwentyAcquisitionsMember_fa492dec-32ef-42bf-b36e-ae7e841cb74f" xlink:to="loc_ibp_NorkoteMember_8ebec36f-2c0e-4090-a5e7-28f498281e68" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_OtherAcquisitionMember_0b41113f-8874-44dc-bdd1-b97a77880a55" xlink:href="ibp-20221231.xsd#ibp_OtherAcquisitionMember"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementAxis_ff62b9b2-0908-4d7c-99e3-2053f3d1e64d" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_45dd932e-9ed9-4c46-ae93-ba27a930bf99" xlink:to="loc_srt_RestatementAxis_ff62b9b2-0908-4d7c-99e3-2053f3d1e64d" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementDomain_ff62b9b2-0908-4d7c-99e3-2053f3d1e64d_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RestatementAxis_ff62b9b2-0908-4d7c-99e3-2053f3d1e64d" xlink:to="loc_srt_RestatementDomain_ff62b9b2-0908-4d7c-99e3-2053f3d1e64d_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementDomain_c83b385b-dd0c-4bd2-80be-c3fc76bbd95c" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RestatementAxis_ff62b9b2-0908-4d7c-99e3-2053f3d1e64d" xlink:to="loc_srt_RestatementDomain_c83b385b-dd0c-4bd2-80be-c3fc76bbd95c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementAdjustmentMember_123bd6ea-2a83-4d37-ae0c-f2bbfc2a72a1" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementAdjustmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RestatementDomain_c83b385b-dd0c-4bd2-80be-c3fc76bbd95c" xlink:to="loc_srt_RestatementAdjustmentMember_123bd6ea-2a83-4d37-ae0c-f2bbfc2a72a1" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/BusinessCombinationsEstimatesofAcquiredIntangibleAssetsDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#BusinessCombinationsEstimatesofAcquiredIntangibleAssetsDetail"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/BusinessCombinationsEstimatesofAcquiredIntangibleAssetsDetail" xlink:type="extended" id="ie45b056a867345a7832437097f931d6d_BusinessCombinationsEstimatesofAcquiredIntangibleAssetsDetail">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_f83936be-791a-4e17-92ec-5680b1078405" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinitelivedIntangibleAssetsAcquired1_d70acf1c-2f4a-45d1-af1f-82120821f59b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinitelivedIntangibleAssetsAcquired1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_f83936be-791a-4e17-92ec-5680b1078405" xlink:to="loc_us-gaap_FinitelivedIntangibleAssetsAcquired1_d70acf1c-2f4a-45d1-af1f-82120821f59b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_703e03f4-c9ca-4644-867d-617075b84d3e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_f83936be-791a-4e17-92ec-5680b1078405" xlink:to="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_703e03f4-c9ca-4644-867d-617075b84d3e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable_24e6cad5-2374-42e7-9fa4-2ea9bb0bef9c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_f83936be-791a-4e17-92ec-5680b1078405" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable_24e6cad5-2374-42e7-9fa4-2ea9bb0bef9c" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_57db7ab2-43da-4deb-a8b4-4d41e08b9139" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable_24e6cad5-2374-42e7-9fa4-2ea9bb0bef9c" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_57db7ab2-43da-4deb-a8b4-4d41e08b9139" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_57db7ab2-43da-4deb-a8b4-4d41e08b9139_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_57db7ab2-43da-4deb-a8b4-4d41e08b9139" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_57db7ab2-43da-4deb-a8b4-4d41e08b9139_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4824461c-e88e-4537-874c-e8907a870143" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_57db7ab2-43da-4deb-a8b4-4d41e08b9139" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4824461c-e88e-4537-874c-e8907a870143" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerRelationshipsMember_5fb867ab-a690-4d63-8def-83851cbd862a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerRelationshipsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4824461c-e88e-4537-874c-e8907a870143" xlink:to="loc_us-gaap_CustomerRelationshipsMember_5fb867ab-a690-4d63-8def-83851cbd862a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TrademarksAndTradeNamesMember_54d8eed3-aae6-4a56-ab5e-28aaf17fa126" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrademarksAndTradeNamesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4824461c-e88e-4537-874c-e8907a870143" xlink:to="loc_us-gaap_TrademarksAndTradeNamesMember_54d8eed3-aae6-4a56-ab5e-28aaf17fa126" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NoncompeteAgreementsMember_92900c62-4d90-44cd-82f6-83eea9ff5b68" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncompeteAgreementsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4824461c-e88e-4537-874c-e8907a870143" xlink:to="loc_us-gaap_NoncompeteAgreementsMember_92900c62-4d90-44cd-82f6-83eea9ff5b68" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrderOrProductionBacklogMember_e5fc1291-ff9e-4120-839b-93e2dbc5c690" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OrderOrProductionBacklogMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4824461c-e88e-4537-874c-e8907a870143" xlink:to="loc_us-gaap_OrderOrProductionBacklogMember_e5fc1291-ff9e-4120-839b-93e2dbc5c690" xlink:type="arc" order="3"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/SubsequentEventsDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#SubsequentEventsDetails"/>
  <link:definitionLink xlink:role="http://installedbuildingproducts.com/role/SubsequentEventsDetails" xlink:type="extended" id="i641e9401094f4b9f9f01229bfe176c24_SubsequentEventsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventLineItems_80b99e99-39b6-4a60-ad5d-cd686b611fb3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsPayableAmountPerShare_c7d90a3c-174a-4875-81d0-46185efe9d8e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DividendsPayableAmountPerShare"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_80b99e99-39b6-4a60-ad5d-cd686b611fb3" xlink:to="loc_us-gaap_DividendsPayableAmountPerShare_c7d90a3c-174a-4875-81d0-46185efe9d8e" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1_e3281df7-c085-4a6e-8fbd-dea83a16c6dc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockRepurchaseProgramAuthorizedAmount1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_80b99e99-39b6-4a60-ad5d-cd686b611fb3" xlink:to="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1_e3281df7-c085-4a6e-8fbd-dea83a16c6dc" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTable_e0c6bda6-6b4a-4135-a89e-2c64abf2d1fd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_SubsequentEventLineItems_80b99e99-39b6-4a60-ad5d-cd686b611fb3" xlink:to="loc_us-gaap_SubsequentEventTable_e0c6bda6-6b4a-4135-a89e-2c64abf2d1fd" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementScenarioAxis_2a804679-6be2-49ee-b816-af4ca465d583" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementScenarioAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_SubsequentEventTable_e0c6bda6-6b4a-4135-a89e-2c64abf2d1fd" xlink:to="loc_srt_StatementScenarioAxis_2a804679-6be2-49ee-b816-af4ca465d583" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioUnspecifiedDomain_2a804679-6be2-49ee-b816-af4ca465d583_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioUnspecifiedDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_StatementScenarioAxis_2a804679-6be2-49ee-b816-af4ca465d583" xlink:to="loc_srt_ScenarioUnspecifiedDomain_2a804679-6be2-49ee-b816-af4ca465d583_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioUnspecifiedDomain_6bbeffa0-ae3f-4bc2-8d4f-cf0c33f9d225" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioUnspecifiedDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_StatementScenarioAxis_2a804679-6be2-49ee-b816-af4ca465d583" xlink:to="loc_srt_ScenarioUnspecifiedDomain_6bbeffa0-ae3f-4bc2-8d4f-cf0c33f9d225" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioForecastMember_42d9c403-26a2-4a8b-8683-e7750bc8b4ca" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioForecastMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ScenarioUnspecifiedDomain_6bbeffa0-ae3f-4bc2-8d4f-cf0c33f9d225" xlink:to="loc_srt_ScenarioForecastMember_42d9c403-26a2-4a8b-8683-e7750bc8b4ca" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_a4ccd766-7dbd-4bde-8664-c218b7ed9c97" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_SubsequentEventTable_e0c6bda6-6b4a-4135-a89e-2c64abf2d1fd" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_a4ccd766-7dbd-4bde-8664-c218b7ed9c97" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_a4ccd766-7dbd-4bde-8664-c218b7ed9c97_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_a4ccd766-7dbd-4bde-8664-c218b7ed9c97" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_a4ccd766-7dbd-4bde-8664-c218b7ed9c97_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_62a39728-aece-4eac-8105-cb855f502f96" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_a4ccd766-7dbd-4bde-8664-c218b7ed9c97" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_62a39728-aece-4eac-8105-cb855f502f96" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember_a143de7e-8e37-417b-97ba-857894b7fdb2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_62a39728-aece-4eac-8105-cb855f502f96" xlink:to="loc_us-gaap_SubsequentEventMember_a143de7e-8e37-417b-97ba-857894b7fdb2" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists" xlink:type="simple" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-roles-2022.xsd#eedm"/>
  <link:definitionLink xlink:role="http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsAbstract" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAssetsNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsAbstract" xlink:to="loc_us-gaap_OtherAssetsNoncurrent" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherLiabilitiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherLiabilitiesCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesAbstract" xlink:to="loc_us-gaap_OtherLiabilitiesCurrent" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementAbstract" xlink:to="loc_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" xlink:type="arc" order="1"/>
  </link:definitionLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>11
<FILENAME>ibp-20221231_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with Wdesk from Workiva-->
<!--Copyright 2023 Workiva-->
<!--r:a3e4206c-1cfd-4e6c-927f-ccbea40704ec,g:8e7b03d8-eedd-4de2-8abd-33b4866ed975-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/netLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel"/>
  <link:labelLink xlink:role="http://www.xbrl.org/2003/role/link" xlink:type="extended">
    <link:label id="lab_us-gaap_BusinessAcquisitionAxis_348f99d7-31f1-488e-b281-ebd8f36bba13_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Acquisition [Axis]</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionAxis_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Acquisition [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionAxis" xlink:to="lab_us-gaap_BusinessAcquisitionAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_RestatementAxis_27896a6d-76d2-43e5-93ae-54fb429d29b4_terseLabel_en-US" xlink:label="lab_srt_RestatementAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revision of Prior Period [Axis]</link:label>
    <link:label id="lab_srt_RestatementAxis_label_en-US" xlink:label="lab_srt_RestatementAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revision of Prior Period [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementAxis" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RestatementAxis" xlink:to="lab_srt_RestatementAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RelatedPartyTransactionsAbstract_dcd498f0-dac9-4cf2-8361-0517cf5f38fc_terseLabel_en-US" xlink:label="lab_us-gaap_RelatedPartyTransactionsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Related Party Transactions [Abstract]</link:label>
    <link:label id="lab_us-gaap_RelatedPartyTransactionsAbstract_label_en-US" xlink:label="lab_us-gaap_RelatedPartyTransactionsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Related Party Transactions [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RelatedPartyTransactionsAbstract" xlink:to="lab_us-gaap_RelatedPartyTransactionsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProvisionForDoubtfulAccounts_451712ea-5206-4c2e-a5ea-842ae5958604_verboseLabel_en-US" xlink:label="lab_us-gaap_ProvisionForDoubtfulAccounts" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Provision for credit losses</link:label>
    <link:label id="lab_us-gaap_ProvisionForDoubtfulAccounts_a72380ac-51a9-47dd-a13c-5512aa0649b6_terseLabel_en-US" xlink:label="lab_us-gaap_ProvisionForDoubtfulAccounts" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current period provision</link:label>
    <link:label id="lab_us-gaap_ProvisionForDoubtfulAccounts_label_en-US" xlink:label="lab_us-gaap_ProvisionForDoubtfulAccounts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable, Credit Loss Expense (Reversal)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProvisionForDoubtfulAccounts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProvisionForDoubtfulAccounts" xlink:to="lab_us-gaap_ProvisionForDoubtfulAccounts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredIncomeTaxAssetsNet_9087b0c9-e572-4a44-a4d6-4ba897db77b3_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxAssetsNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cumulative effect on retained earnings, tax</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxAssetsNet_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxAssetsNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Income Tax Assets, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxAssetsNet" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxAssetsNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxAssetsNet" xlink:to="lab_us-gaap_DeferredIncomeTaxAssetsNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseRightOfUseAsset_d506e583-6692-44de-9701-0a33d06f4b44_verboseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseRightOfUseAsset_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Right-of-Use Asset, after Accumulated Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseRightOfUseAsset" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseRightOfUseAsset"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseRightOfUseAsset" xlink:to="lab_us-gaap_FinanceLeaseRightOfUseAsset" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentAbstract_e755111f-053e-46d2-8391-93966d16fa9e_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment [Abstract]</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentAbstract_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_c40d699d-ca8b-49a8-95b2-65c681c8e444_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred:</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Income Tax Expense (Benefit), Continuing Operations [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="lab_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PreferredStockSharesOutstanding_449992fc-91d9-426d-9a93-e0b0008fb8b4_terseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred stock, shares outstanding (in shares)</link:label>
    <link:label id="lab_us-gaap_PreferredStockSharesOutstanding_label_en-US" xlink:label="lab_us-gaap_PreferredStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred Stock, Shares Outstanding</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesOutstanding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockSharesOutstanding" xlink:to="lab_us-gaap_PreferredStockSharesOutstanding" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentAxis_3aa4df6c-57c7-4fcb-ab94-e94e900400a2_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument [Axis]</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentAxis_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentAxis" xlink:to="lab_us-gaap_DebtInstrumentAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract_1f13ec6b-b53d-441c-bf54-60814bb6110a_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite Lived Intangible Assets Net Amortization Expense Rolling Maturity [Abstract]</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets, Net, Amortization Expense, Rolling Maturity [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseLiability_f80c2b35-bc64-4b98-99d3-d23693506b5f_totalLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Present value of future minimum lease payments</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseLiability_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiability" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiability"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseLiability" xlink:to="lab_us-gaap_FinanceLeaseLiability" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_IncomeTaxExpenseBenefitOperatingLossCarryforwards_f4baa1cf-d33c-4b3e-9e6d-70a0e77dd0fc_terseLabel_en-US" xlink:label="lab_ibp_IncomeTaxExpenseBenefitOperatingLossCarryforwards" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Benefit of net operating loss carryforwards</link:label>
    <link:label id="lab_ibp_IncomeTaxExpenseBenefitOperatingLossCarryforwards_label_en-US" xlink:label="lab_ibp_IncomeTaxExpenseBenefitOperatingLossCarryforwards" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Expense Benefit Operating Loss Carryforwards</link:label>
    <link:label id="lab_ibp_IncomeTaxExpenseBenefitOperatingLossCarryforwards_documentation_en-US" xlink:label="lab_ibp_IncomeTaxExpenseBenefitOperatingLossCarryforwards" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income tax expense benefit operating loss carryforwards.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_IncomeTaxExpenseBenefitOperatingLossCarryforwards" xlink:href="ibp-20221231.xsd#ibp_IncomeTaxExpenseBenefitOperatingLossCarryforwards"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_IncomeTaxExpenseBenefitOperatingLossCarryforwards" xlink:to="lab_ibp_IncomeTaxExpenseBenefitOperatingLossCarryforwards" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_CommitmentsAndContingenciesDisclosureLineItems_629d7c0f-8dee-4ae4-8d0c-7b582e21aa5a_terseLabel_en-US" xlink:label="lab_ibp_CommitmentsAndContingenciesDisclosureLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commitments And Contingencies Disclosure [Line Items]</link:label>
    <link:label id="lab_ibp_CommitmentsAndContingenciesDisclosureLineItems_label_en-US" xlink:label="lab_ibp_CommitmentsAndContingenciesDisclosureLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commitments And Contingencies Disclosure [Line Items]</link:label>
    <link:label id="lab_ibp_CommitmentsAndContingenciesDisclosureLineItems_documentation_en-US" xlink:label="lab_ibp_CommitmentsAndContingenciesDisclosureLineItems" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commitments and contingencies disclosure.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CommitmentsAndContingenciesDisclosureLineItems" xlink:href="ibp-20221231.xsd#ibp_CommitmentsAndContingenciesDisclosureLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_CommitmentsAndContingenciesDisclosureLineItems" xlink:to="lab_ibp_CommitmentsAndContingenciesDisclosureLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy_f0e05f59-f6cc-47be-a26a-3fe4ecdffc25_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Values</link:label>
    <link:label id="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy_label_en-US" xlink:label="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value of Financial Instruments, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueOfFinancialInstrumentsPolicy"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:to="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueDisclosureItemAmountsDomain_8dbece20-d818-4718-b037-d5f11938fecb_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueDisclosureItemAmountsDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value Measurement [Domain]</link:label>
    <link:label id="lab_us-gaap_FairValueDisclosureItemAmountsDomain_label_en-US" xlink:label="lab_us-gaap_FairValueDisclosureItemAmountsDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value Measurement [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosureItemAmountsDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueDisclosureItemAmountsDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueDisclosureItemAmountsDomain" xlink:to="lab_us-gaap_FairValueDisclosureItemAmountsDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_23c4bc45-8d2c-4808-971a-3a73304b395d_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Margin interest rate percentage</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Basis Spread on Variable Rate</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:to="lab_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour_82b7d67d-a02c-4495-b92c-664cae6db32e_terseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2026</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Liability, to be Paid, Year Four</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:to="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsLiabilitiesNet_3d49ce18-66a4-4bcd-9f7a-4bdb9540db7b_totalLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net deferred tax assets</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsLiabilitiesNet_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsLiabilitiesNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:to="lab_us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures_13da6105-fbbb-4b35-97bd-0d6ebe59a261_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Issuance of awards previously classified as liability awards (in shares)</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Issued During Period, Shares, Restricted Stock Award, Net of Forfeitures</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_394a57d4-e1b8-44b6-ac80-3c8d3d21ba26_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating leases (as percent)</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Weighted Average Discount Rate, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:to="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage_a2486002-a838-4ff1-9dae-2e9178692a5d_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Notes payable Interest rate</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Interest Rate, Stated Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:to="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_d2a95bac-f805-4cd6-9b5d-366ea01a6e7c_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative Instruments, Gain (Loss)</link:label>
    <link:label id="lab_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative Instruments, Gain (Loss) [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock" xlink:to="lab_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalCommonStock_2f033184-aa7f-49d0-8d6d-bd1a005c1463_terseLabel_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalCommonStock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Additional paid in capital</link:label>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalCommonStock_label_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalCommonStock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Additional Paid in Capital, Common Stock</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapitalCommonStock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdditionalPaidInCapitalCommonStock" xlink:to="lab_us-gaap_AdditionalPaidInCapitalCommonStock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativesMethodsOfAccountingHedgingDerivatives_ae52a23a-633c-4368-8065-b6326024d5b2_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativesMethodsOfAccountingHedgingDerivatives" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative Instruments and Hedging Activities</link:label>
    <link:label id="lab_us-gaap_DerivativesMethodsOfAccountingHedgingDerivatives_label_en-US" xlink:label="lab_us-gaap_DerivativesMethodsOfAccountingHedgingDerivatives" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivatives, Methods of Accounting, Hedging Derivatives [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativesMethodsOfAccountingHedgingDerivatives" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativesMethodsOfAccountingHedgingDerivatives"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativesMethodsOfAccountingHedgingDerivatives" xlink:to="lab_us-gaap_DerivativesMethodsOfAccountingHedgingDerivatives" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_CashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesAbstract_3a0bd8f5-4ba6-4aeb-8a55-664a06769319_verboseLabel_en-US" xlink:label="lab_ibp_CashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash paid for amounts included in the measurement of lease liabilities:</link:label>
    <link:label id="lab_ibp_CashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesAbstract_label_en-US" xlink:label="lab_ibp_CashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash Paid For Amounts Included In Measurement Of Lease Liabilities [Abstract]</link:label>
    <link:label id="lab_ibp_CashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesAbstract_documentation_en-US" xlink:label="lab_ibp_CashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash paid for amounts included in measurement of lease liabilities.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesAbstract" xlink:href="ibp-20221231.xsd#ibp_CashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_CashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesAbstract" xlink:to="lab_ibp_CashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherNoncashIncomeExpense_a29816f5-9478-4547-95fd-98f6bd779fb6_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_OtherNoncashIncomeExpense" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other, net</link:label>
    <link:label id="lab_us-gaap_OtherNoncashIncomeExpense_label_en-US" xlink:label="lab_us-gaap_OtherNoncashIncomeExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Noncash Income (Expense)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNoncashIncomeExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNoncashIncomeExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherNoncashIncomeExpense" xlink:to="lab_us-gaap_OtherNoncashIncomeExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeLiabilityStatementOfFinancialPositionExtensibleEnumeration_f935fe46-a4c2-4210-89f8-e5eb8e21a0fe_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeLiabilityStatementOfFinancialPositionExtensibleEnumeration" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative Liability, Statement of Financial Position [Extensible Enumeration]</link:label>
    <link:label id="lab_us-gaap_DerivativeLiabilityStatementOfFinancialPositionExtensibleEnumeration_label_en-US" xlink:label="lab_us-gaap_DerivativeLiabilityStatementOfFinancialPositionExtensibleEnumeration" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative Liability, Statement of Financial Position [Extensible Enumeration]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeLiabilityStatementOfFinancialPositionExtensibleEnumeration" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeLiabilityStatementOfFinancialPositionExtensibleEnumeration"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeLiabilityStatementOfFinancialPositionExtensibleEnumeration" xlink:to="lab_us-gaap_DerivativeLiabilityStatementOfFinancialPositionExtensibleEnumeration" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_00bcc93d-6ef6-4101-b8aa-1abb7bfd73e4_terseLabel_en-US" xlink:label="lab_us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">State</link:label>
    <link:label id="lab_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_label_en-US" xlink:label="lab_us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current State and Local Tax Expense (Benefit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:to="lab_us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree_316b5cda-f039-4c3c-a2ca-64fbf3bd45f1_terseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2025</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Liability, to be Paid, Year Three</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:to="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable_6d4a51d4-bd4d-4d30-950e-53549aeeb9ee_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets Acquired as Part of Business Combination [Table]</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets Acquired as Part of Business Combination [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeLeaseDescriptionTable_18608507-d7a8-47f6-945a-0da548589834_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeLeaseDescriptionTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Lease, Description [Table]</link:label>
    <link:label id="lab_us-gaap_LesseeLeaseDescriptionTable_label_en-US" xlink:label="lab_us-gaap_LesseeLeaseDescriptionTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Lease, Description [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeaseDescriptionTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeLeaseDescriptionTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeLeaseDescriptionTable" xlink:to="lab_us-gaap_LesseeLeaseDescriptionTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_e9376ba2-6a6d-48a5-bffc-60864dfdbdb6_terseLabel_en-US" xlink:label="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock shares excluded from calculation of diluted net income per common share</link:label>
    <link:label id="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_label_en-US" xlink:label="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:to="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_WaterproofingMember_eacac327-f9e5-4415-864b-eb7a81840c86_terseLabel_en-US" xlink:label="lab_ibp_WaterproofingMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Waterproofing</link:label>
    <link:label id="lab_ibp_WaterproofingMember_label_en-US" xlink:label="lab_ibp_WaterproofingMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Waterproofing [Member]</link:label>
    <link:label id="lab_ibp_WaterproofingMember_documentation_en-US" xlink:label="lab_ibp_WaterproofingMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Waterproofing.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_WaterproofingMember" xlink:href="ibp-20221231.xsd#ibp_WaterproofingMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_WaterproofingMember" xlink:to="lab_ibp_WaterproofingMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic_a1377837-90b8-4a67-955b-599d08840872_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Basic net income per share</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Acquisition, Pro Forma Earnings Per Share, Basic</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic" xlink:to="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_04c2cbeb-c10f-430d-b0b3-1c7a2b39189f_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Thereafter</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, after Year Five</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerProductAndServiceBenchmarkMember_9536ae2a-57b8-40a4-a5cb-ce2482180aaa_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerProductAndServiceBenchmarkMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue from Contract with Customer, Product and Service Benchmark</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerProductAndServiceBenchmarkMember_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerProductAndServiceBenchmarkMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue from Contract with Customer, Product and Service Benchmark [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerProductAndServiceBenchmarkMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerProductAndServiceBenchmarkMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerProductAndServiceBenchmarkMember" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerProductAndServiceBenchmarkMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EquityComponentDomain_5ddedfd7-eeab-4bb1-8fb4-7c9be4eb46da_terseLabel_en-US" xlink:label="lab_us-gaap_EquityComponentDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity Component [Domain]</link:label>
    <link:label id="lab_us-gaap_EquityComponentDomain_label_en-US" xlink:label="lab_us-gaap_EquityComponentDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity Component [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquityComponentDomain" xlink:to="lab_us-gaap_EquityComponentDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventTypeDomain_3596dd72-f179-44da-9059-2c60f044f19a_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event Type [Domain]</link:label>
    <link:label id="lab_us-gaap_SubsequentEventTypeDomain_label_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventTypeDomain" xlink:to="lab_us-gaap_SubsequentEventTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_0a7a31e4-4b5b-4614-a4f2-0e31a302cd01_terseLabel_en-US" xlink:label="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Acquired Finite-Lived Intangible Assets [Line Items]</link:label>
    <link:label id="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_label_en-US" xlink:label="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Acquired Finite-Lived Intangible Assets [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems" xlink:to="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions_34693c64-75d8-42af-8de2-3dbd4599c150_terseLabel_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase as a result of tax positions taken during the period</link:label>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions_label_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unrecognized Tax Benefits, Increase Resulting from Current Period Tax Positions</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:to="lab_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseRightOfUseAssetAmortization_02ed5c0b-db6c-4125-bdc9-58e4c69774d8_terseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization of leased assets</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseRightOfUseAssetAmortization_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Right-of-Use Asset, Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseRightOfUseAssetAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:to="lab_us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract_29df6db4-a0a1-4d79-946f-9ef560e39f0b_terseLabel_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Percent</link:label>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract_label_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Percent [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RelatedPartyDomain_bd89e402-5080-4abc-93f7-7939360fc833_terseLabel_en-US" xlink:label="lab_us-gaap_RelatedPartyDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Related Party [Domain]</link:label>
    <link:label id="lab_us-gaap_RelatedPartyDomain_label_en-US" xlink:label="lab_us-gaap_RelatedPartyDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Related Party [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RelatedPartyDomain" xlink:to="lab_us-gaap_RelatedPartyDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeLeaseDescriptionLineItems_2bf88c3a-4f0b-4558-9939-3ba738105f82_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeLeaseDescriptionLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Lease, Description [Line Items]</link:label>
    <link:label id="lab_us-gaap_LesseeLeaseDescriptionLineItems_label_en-US" xlink:label="lab_us-gaap_LesseeLeaseDescriptionLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Lease, Description [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeaseDescriptionLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeLeaseDescriptionLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="lab_us-gaap_LesseeLeaseDescriptionLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CostsInExcessOfBillingsAndBillingsInExcessOfCostsTableTextBlock_bf40f890-d728-4da2-b2a4-434420e3610e_terseLabel_en-US" xlink:label="lab_us-gaap_CostsInExcessOfBillingsAndBillingsInExcessOfCostsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Net Under Billings</link:label>
    <link:label id="lab_us-gaap_CostsInExcessOfBillingsAndBillingsInExcessOfCostsTableTextBlock_label_en-US" xlink:label="lab_us-gaap_CostsInExcessOfBillingsAndBillingsInExcessOfCostsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Term Contract or Program Disclosure [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostsInExcessOfBillingsAndBillingsInExcessOfCostsTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostsInExcessOfBillingsAndBillingsInExcessOfCostsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostsInExcessOfBillingsAndBillingsInExcessOfCostsTableTextBlock" xlink:to="lab_us-gaap_CostsInExcessOfBillingsAndBillingsInExcessOfCostsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_HedgingDesignationDomain_fd8932a9-d28b-44a9-b44c-fb143f8a535a_terseLabel_en-US" xlink:label="lab_us-gaap_HedgingDesignationDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Hedging Designation [Domain]</link:label>
    <link:label id="lab_us-gaap_HedgingDesignationDomain_label_en-US" xlink:label="lab_us-gaap_HedgingDesignationDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Hedging Designation [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_HedgingDesignationDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_HedgingDesignationDomain" xlink:to="lab_us-gaap_HedgingDesignationDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_OtherCustomerInstallationMember_04f48b55-0445-4112-890d-5c61ca3de0e1_terseLabel_en-US" xlink:label="lab_ibp_OtherCustomerInstallationMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other</link:label>
    <link:label id="lab_ibp_OtherCustomerInstallationMember_label_en-US" xlink:label="lab_ibp_OtherCustomerInstallationMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Customer Installation [Member]</link:label>
    <link:label id="lab_ibp_OtherCustomerInstallationMember_documentation_en-US" xlink:label="lab_ibp_OtherCustomerInstallationMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Customer Installation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_OtherCustomerInstallationMember" xlink:href="ibp-20221231.xsd#ibp_OtherCustomerInstallationMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_OtherCustomerInstallationMember" xlink:to="lab_ibp_OtherCustomerInstallationMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SupplementalCashFlowInformationAbstract_66f1ec16-bc45-47ec-8d2d-94daa621ec04_terseLabel_en-US" xlink:label="lab_us-gaap_SupplementalCashFlowInformationAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Supplemental disclosures of cash flow information</link:label>
    <link:label id="lab_us-gaap_SupplementalCashFlowInformationAbstract_label_en-US" xlink:label="lab_us-gaap_SupplementalCashFlowInformationAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Supplemental Cash Flow Information [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SupplementalCashFlowInformationAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SupplementalCashFlowInformationAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="lab_us-gaap_SupplementalCashFlowInformationAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeaseContractualTermDomain_b24feeaf-7087-4cc3-a844-01202ad8a69c_terseLabel_en-US" xlink:label="lab_us-gaap_LeaseContractualTermDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lease Contractual Term [Domain]</link:label>
    <link:label id="lab_us-gaap_LeaseContractualTermDomain_label_en-US" xlink:label="lab_us-gaap_LeaseContractualTermDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lease Contractual Term [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseContractualTermDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseContractualTermDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeaseContractualTermDomain" xlink:to="lab_us-gaap_LeaseContractualTermDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PlanNameDomain_e39de860-be14-4245-a767-4120afe7cd71_terseLabel_en-US" xlink:label="lab_us-gaap_PlanNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Plan Name [Domain]</link:label>
    <link:label id="lab_us-gaap_PlanNameDomain_label_en-US" xlink:label="lab_us-gaap_PlanNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Plan Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PlanNameDomain" xlink:to="lab_us-gaap_PlanNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember_b720cd72-7a94-4b65-8fae-f4b07fa24bbc_terseLabel_en-US" xlink:label="lab_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revision of Prior Period, Reclassification, Adjustment</link:label>
    <link:label id="lab_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember_label_en-US" xlink:label="lab_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revision of Prior Period, Reclassification, Adjustment [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RevisionOfPriorPeriodReclassificationAdjustmentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember" xlink:to="lab_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressStateOrProvince_0c1aac2b-cfec-452c-b4ba-d143eeac05b5_terseLabel_en-US" xlink:label="lab_dei_EntityAddressStateOrProvince" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, State or Province</link:label>
    <link:label id="lab_dei_EntityAddressStateOrProvince_label_en-US" xlink:label="lab_dei_EntityAddressStateOrProvince" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, State or Province</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressStateOrProvince" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressStateOrProvince"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressStateOrProvince" xlink:to="lab_dei_EntityAddressStateOrProvince" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AwardTypeAxis_ce16ce5d-5209-42a7-9337-26c2f1cf732f_terseLabel_en-US" xlink:label="lab_us-gaap_AwardTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Award Type [Axis]</link:label>
    <link:label id="lab_us-gaap_AwardTypeAxis_label_en-US" xlink:label="lab_us-gaap_AwardTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Award Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AwardTypeAxis" xlink:to="lab_us-gaap_AwardTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityCurrent_a2e93863-2eed-4d1b-86f8-783c62810eca_verboseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current maturities of operating lease obligations</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityCurrent_d0d655bf-974d-475a-aa61-e85b36d873a5_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityCurrent_4484ebee-b951-4526-be2a-5a8d93395350_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Less: Current obligation under leases</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityCurrent_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Liability, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityCurrent" xlink:to="lab_us-gaap_OperatingLeaseLiabilityCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeaseCostAbstract_9635e531-086d-4b9b-83b0-ede838e08751_verboseLabel_en-US" xlink:label="lab_us-gaap_LeaseCostAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance lease cost</link:label>
    <link:label id="lab_us-gaap_LeaseCostAbstract_label_en-US" xlink:label="lab_us-gaap_LeaseCostAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lease, Cost [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCostAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseCostAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeaseCostAbstract" xlink:to="lab_us-gaap_LeaseCostAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares_d2833732-4171-4be0-95a6-7883c97fd42b_negatedLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Forfeited/Cancelled (in shares)</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Nonvested Options Forfeited, Number of Shares</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_601847a8-322c-416d-b613-4e792ad270e3_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts receivable</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Receivables</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_48a04804-0736-4cda-bb25-d1fa4539f9c6_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property and equipment</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Property, Plant, and Equipment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds_16cd526d-7e9a-44fd-bc83-b9348f2a949e_terseLabel_en-US" xlink:label="lab_ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Percentage of net cash proceeds (as a percent)</link:label>
    <link:label id="lab_ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds_label_en-US" xlink:label="lab_ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Prepayments, Percentage Of Net Cash Proceeds</link:label>
    <link:label id="lab_ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds_documentation_en-US" xlink:label="lab_ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Prepayments, Percentage Of Net Cash Proceeds</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds" xlink:href="ibp-20221231.xsd#ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds" xlink:to="lab_ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermDebtNoncurrent_8225b575-318a-4ed9-af84-5a25dd85209b_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term debt</link:label>
    <link:label id="lab_us-gaap_LongTermDebtNoncurrent_a1167e99-b936-4353-b6fe-6f4dba491dc7_verboseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtNoncurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term debt, less current maturities</link:label>
    <link:label id="lab_us-gaap_LongTermDebtNoncurrent_label_en-US" xlink:label="lab_us-gaap_LongTermDebtNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Term Debt, Excluding Current Maturities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtNoncurrent" xlink:to="lab_us-gaap_LongTermDebtNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_NorkoteMember_2b31538a-ca86-4f67-b881-402a0c972749_terseLabel_en-US" xlink:label="lab_ibp_NorkoteMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">ICON</link:label>
    <link:label id="lab_ibp_NorkoteMember_label_en-US" xlink:label="lab_ibp_NorkoteMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Norkote [Member]</link:label>
    <link:label id="lab_ibp_NorkoteMember_documentation_en-US" xlink:label="lab_ibp_NorkoteMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Norkote</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_NorkoteMember" xlink:href="ibp-20221231.xsd#ibp_NorkoteMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_NorkoteMember" xlink:to="lab_ibp_NorkoteMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_Liabilities_0172c038-3498-4bfd-8405-1c98be543a2f_totalLabel_en-US" xlink:label="lab_us-gaap_Liabilities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total liabilities</link:label>
    <link:label id="lab_us-gaap_Liabilities_label_en-US" xlink:label="lab_us-gaap_Liabilities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Liabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Liabilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Liabilities" xlink:to="lab_us-gaap_Liabilities" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_OtherProductInstallationMember_d06215b0-7e70-4560-835c-684ad47ce790_terseLabel_en-US" xlink:label="lab_ibp_OtherProductInstallationMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other</link:label>
    <link:label id="lab_ibp_OtherProductInstallationMember_label_en-US" xlink:label="lab_ibp_OtherProductInstallationMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Product Installation [Member]</link:label>
    <link:label id="lab_ibp_OtherProductInstallationMember_documentation_en-US" xlink:label="lab_ibp_OtherProductInstallationMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Product Installation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_OtherProductInstallationMember" xlink:href="ibp-20221231.xsd#ibp_OtherProductInstallationMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_OtherProductInstallationMember" xlink:to="lab_ibp_OtherProductInstallationMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_92803e10-4e2b-405d-8ed5-47a5b7abb13a_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating leases (in years)</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Weighted Average Remaining Lease Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:to="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_aff7a188-8f95-413d-9a7f-7804ddcdae76_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillPurchaseAccountingAdjustments_f831d229-1973-4b9d-9572-70e79338ab78_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillPurchaseAccountingAdjustments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill adjustments</link:label>
    <link:label id="lab_us-gaap_GoodwillPurchaseAccountingAdjustments_label_en-US" xlink:label="lab_us-gaap_GoodwillPurchaseAccountingAdjustments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill, Purchase Accounting Adjustments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillPurchaseAccountingAdjustments" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillPurchaseAccountingAdjustments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillPurchaseAccountingAdjustments" xlink:to="lab_us-gaap_GoodwillPurchaseAccountingAdjustments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedAndIndefiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTableTextBlock_d7182c05-2a58-41a5-89ea-5bde0f935773_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedAndIndefiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Estimates of Acquired Intangible Assets</link:label>
    <link:label id="lab_us-gaap_FiniteLivedAndIndefiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTableTextBlock_label_en-US" xlink:label="lab_us-gaap_FiniteLivedAndIndefiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived and Indefinite-Lived Intangible Assets Acquired as Part of Business Combination [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedAndIndefiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedAndIndefiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedAndIndefiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTableTextBlock" xlink:to="lab_us-gaap_FiniteLivedAndIndefiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_977027e2-0e8e-4626-a2ee-f12509ba3025_terseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash flows from investing activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Investing Activities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityCommonStockSharesOutstanding_66a6acdc-d5f6-40a9-a47e-648a2b9e6c91_terseLabel_en-US" xlink:label="lab_dei_EntityCommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Common Stock, Shares Outstanding</link:label>
    <link:label id="lab_dei_EntityCommonStockSharesOutstanding_label_en-US" xlink:label="lab_dei_EntityCommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Common Stock, Shares Outstanding</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCommonStockSharesOutstanding" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCommonStockSharesOutstanding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCommonStockSharesOutstanding" xlink:to="lab_dei_EntityCommonStockSharesOutstanding" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_49c98603-39fd-4d34-af90-f7510067b204_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value Hierarchy and NAV [Domain]</link:label>
    <link:label id="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_label_en-US" xlink:label="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value Hierarchy and NAV [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:to="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_LeaseLiabilities_57c89b4a-f370-4b04-9965-c762535c6528_totalLabel_en-US" xlink:label="lab_ibp_LeaseLiabilities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total lease liabilities</link:label>
    <link:label id="lab_ibp_LeaseLiabilities_label_en-US" xlink:label="lab_ibp_LeaseLiabilities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lease Liabilities</link:label>
    <link:label id="lab_ibp_LeaseLiabilities_documentation_en-US" xlink:label="lab_ibp_LeaseLiabilities" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Represents total lease liabilities.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_LeaseLiabilities" xlink:href="ibp-20221231.xsd#ibp_LeaseLiabilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_LeaseLiabilities" xlink:to="lab_ibp_LeaseLiabilities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevolvingCreditFacilityMember_84815c86-da92-4cf0-9096-0d3a5867878b_terseLabel_en-US" xlink:label="lab_us-gaap_RevolvingCreditFacilityMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revolving Credit Facility</link:label>
    <link:label id="lab_us-gaap_RevolvingCreditFacilityMember_label_en-US" xlink:label="lab_us-gaap_RevolvingCreditFacilityMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revolving Credit Facility [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevolvingCreditFacilityMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevolvingCreditFacilityMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevolvingCreditFacilityMember" xlink:to="lab_us-gaap_RevolvingCreditFacilityMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_6915288b-a94d-41bb-96ef-347469cd94c2_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue and Cost Recognition</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue from Contract with Customer [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_5216fce5-c1e2-4f20-8046-ec84b10a9993_terseLabel_en-US" xlink:label="lab_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current:</link:label>
    <link:label id="lab_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_label_en-US" xlink:label="lab_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current Income Tax Expense (Benefit), Continuing Operations [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:to="lab_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentType_78eb5a77-2839-4d5f-ba9d-8fa56d31f2c9_terseLabel_en-US" xlink:label="lab_dei_DocumentType" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Type</link:label>
    <link:label id="lab_dei_DocumentType_label_en-US" xlink:label="lab_dei_DocumentType" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Type</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentType" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentType"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentType" xlink:to="lab_dei_DocumentType" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife_e444c21c-6fa7-4403-a015-383e0f8f9828_verboseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Estimated useful life</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment, Useful Life</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermDebtTextBlock_dad1004e-a631-49f4-a49d-d75c583d36a1_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Term Debt</link:label>
    <link:label id="lab_us-gaap_LongTermDebtTextBlock_label_en-US" xlink:label="lab_us-gaap_LongTermDebtTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Term Debt [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtTextBlock" xlink:to="lab_us-gaap_LongTermDebtTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsFairValueDisclosureAbstract_f65678e1-47bf-45bf-8430-5ca94aa1f3a2_terseLabel_en-US" xlink:label="lab_us-gaap_AssetsFairValueDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Financial assets:</link:label>
    <link:label id="lab_us-gaap_AssetsFairValueDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_AssetsFairValueDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets, Fair Value Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsFairValueDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsFairValueDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsFairValueDisclosureAbstract" xlink:to="lab_us-gaap_AssetsFairValueDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_c6f2e85a-b0bc-4fef-917a-df15522b9d19_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets, Major Class Name [Domain]</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets, Major Class Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_aee43958-1cf5-4833-9a32-ad028ea469bf_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Nonvested performance-based stock awards/units, Beginning balance (in USD per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_b4ec3a9b-84f2-4842-8af7-298e8ebfd3c6_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Nonvested performance-based stock awards/units, Ending balance (in USD per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredIncomeTaxExpenseBenefit_eb2f3f95-eab1-4094-a162-790e74436ca1_totalLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred income tax expense (benefit)</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxExpenseBenefit_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:to="lab_us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_2ea06a87-04a3-4b34-91e5-8daef717e7e2_terseLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary of Assets and Liabilities Related to Uncompleted Contracts and Customer Deposits</link:label>
    <link:label id="lab_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:to="lab_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationAwardTrancheOneMember_83e6e4ca-3bb6-4d02-bacf-adecf4ca447c_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationAwardTrancheOneMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Tranche One</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationAwardTrancheOneMember_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationAwardTrancheOneMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement, Tranche One [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationAwardTrancheOneMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationAwardTrancheOneMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationAwardTrancheOneMember" xlink:to="lab_us-gaap_ShareBasedCompensationAwardTrancheOneMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_MultiemployerPlansLineItems_68b7e79d-1c7a-4876-a742-ce70d67dd30c_terseLabel_en-US" xlink:label="lab_us-gaap_MultiemployerPlansLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Multiemployer Plan [Line Items]</link:label>
    <link:label id="lab_us-gaap_MultiemployerPlansLineItems_label_en-US" xlink:label="lab_us-gaap_MultiemployerPlansLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Multiemployer Plan [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MultiemployerPlansLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MultiemployerPlansLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MultiemployerPlansLineItems" xlink:to="lab_us-gaap_MultiemployerPlansLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_DenisonGlassAndMirrorMember_57fbefac-a18b-4585-b6e3-e7b3cd5683b8_terseLabel_en-US" xlink:label="lab_ibp_DenisonGlassAndMirrorMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Denison Glass and Mirror</link:label>
    <link:label id="lab_ibp_DenisonGlassAndMirrorMember_label_en-US" xlink:label="lab_ibp_DenisonGlassAndMirrorMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Denison Glass and Mirror [Member]</link:label>
    <link:label id="lab_ibp_DenisonGlassAndMirrorMember_documentation_en-US" xlink:label="lab_ibp_DenisonGlassAndMirrorMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Denison Glass and Mirror</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DenisonGlassAndMirrorMember" xlink:href="ibp-20221231.xsd#ibp_DenisonGlassAndMirrorMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_DenisonGlassAndMirrorMember" xlink:to="lab_ibp_DenisonGlassAndMirrorMember" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax_8c599a09-b290-4ac3-a561-fd48103f2e65_terseLabel_en-US" xlink:label="lab_ibp_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">(Benefit) expense associated with swap net settlements</link:label>
    <link:label id="lab_ibp_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax_label_en-US" xlink:label="lab_ibp_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Comprehensive Income (Loss), Cash Flow Hedge, Reclassification For Settlement, Before Tax</link:label>
    <link:label id="lab_ibp_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax_documentation_en-US" xlink:label="lab_ibp_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Comprehensive Income (Loss), Cash Flow Hedge, Reclassification For Settlement, Before Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax" xlink:href="ibp-20221231.xsd#ibp_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax" xlink:to="lab_ibp_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs_40553dd8-7432-439a-b444-c6485ed7e63f_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amounts written off</link:label>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs_label_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss, Writeoff</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs" xlink:to="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtDisclosureAbstract_2ad91446-a7e8-4e1c-a74f-2a066f436181_terseLabel_en-US" xlink:label="lab_us-gaap_DebtDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Disclosure [Abstract]</link:label>
    <link:label id="lab_us-gaap_DebtDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_DebtDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtDisclosureAbstract" xlink:to="lab_us-gaap_DebtDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeStatementLocationAxis_2442dce9-be95-4f3f-b04b-4c334d039fde_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement Location [Axis]</link:label>
    <link:label id="lab_us-gaap_IncomeStatementLocationAxis_label_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement Location [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementLocationAxis" xlink:to="lab_us-gaap_IncomeStatementLocationAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted_8caf4205-04f4-434e-82f9-effe7bb85f36_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Diluted net income per share</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Acquisition, Pro Forma Earnings Per Share, Diluted</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted" xlink:to="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationAwardTrancheThreeMember_c07ea683-5384-4a32-bb28-e839ba74298e_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationAwardTrancheThreeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Tranche Three</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationAwardTrancheThreeMember_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationAwardTrancheThreeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement, Tranche Three [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationAwardTrancheThreeMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationAwardTrancheThreeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationAwardTrancheThreeMember" xlink:to="lab_us-gaap_ShareBasedCompensationAwardTrancheThreeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WorkersCompensationLiabilityNoncurrent_fbeedb28-30b0-4d5f-bd5d-0737d3dd4cac_terseLabel_en-US" xlink:label="lab_us-gaap_WorkersCompensationLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Included in other long-term liabilities</link:label>
    <link:label id="lab_us-gaap_WorkersCompensationLiabilityNoncurrent_label_en-US" xlink:label="lab_us-gaap_WorkersCompensationLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Workers' Compensation Liability, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WorkersCompensationLiabilityNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WorkersCompensationLiabilityNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WorkersCompensationLiabilityNoncurrent" xlink:to="lab_us-gaap_WorkersCompensationLiabilityNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermDebtCurrent_b11bc741-2896-45e1-b366-ff674b74ac26_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current maturities of long-term debt</link:label>
    <link:label id="lab_us-gaap_LongTermDebtCurrent_99ba38a0-73d0-4fee-bf43-a6bc49b6f30e_negatedLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtCurrent" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Less: current maturities</link:label>
    <link:label id="lab_us-gaap_LongTermDebtCurrent_label_en-US" xlink:label="lab_us-gaap_LongTermDebtCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Term Debt, Current Maturities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtCurrent" xlink:to="lab_us-gaap_LongTermDebtCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinitelivedIntangibleAssetsAcquired1_ad353ac1-467d-4cf5-a037-b9b07c07b2e8_terseLabel_en-US" xlink:label="lab_us-gaap_FinitelivedIntangibleAssetsAcquired1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Estimated Fair Value</link:label>
    <link:label id="lab_us-gaap_FinitelivedIntangibleAssetsAcquired1_label_en-US" xlink:label="lab_us-gaap_FinitelivedIntangibleAssetsAcquired1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets Acquired</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinitelivedIntangibleAssetsAcquired1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinitelivedIntangibleAssetsAcquired1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinitelivedIntangibleAssetsAcquired1" xlink:to="lab_us-gaap_FinitelivedIntangibleAssetsAcquired1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities_988e502d-1eac-4a69-b9f3-a177591ab80d_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net cash (used in) provided by financing activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Financing Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountingPoliciesAbstract_18eb2671-c51a-4b24-91b2-6095682b8866_terseLabel_en-US" xlink:label="lab_us-gaap_AccountingPoliciesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounting Policies [Abstract]</link:label>
    <link:label id="lab_us-gaap_AccountingPoliciesAbstract_label_en-US" xlink:label="lab_us-gaap_AccountingPoliciesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounting Policies [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountingPoliciesAbstract" xlink:to="lab_us-gaap_AccountingPoliciesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationForfeited_18fee396-42c4-4d47-8201-9d8b04c8bbee_negatedLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationForfeited" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Surrender of common stock awards by employees (in shares)</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationForfeited_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationForfeited" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Shares Issued, Shares, Share-Based Payment Arrangement, Forfeited</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationForfeited" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationForfeited"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationForfeited" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationForfeited" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_VariableLeaseCost_92982fa6-5e20-4fb8-aa19-4568b9f068a8_terseLabel_en-US" xlink:label="lab_us-gaap_VariableLeaseCost" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Variable lease costs</link:label>
    <link:label id="lab_us-gaap_VariableLeaseCost_label_en-US" xlink:label="lab_us-gaap_VariableLeaseCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Variable Lease, Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableLeaseCost" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableLeaseCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_VariableLeaseCost" xlink:to="lab_us-gaap_VariableLeaseCost" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockholdersEquityAbstract_5b87456a-632f-40ad-bf5a-90da073bd381_terseLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stockholders&#8217; equity</link:label>
    <link:label id="lab_us-gaap_StockholdersEquityAbstract_label_en-US" xlink:label="lab_us-gaap_StockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stockholders' Equity Attributable to Parent [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquityAbstract" xlink:to="lab_us-gaap_StockholdersEquityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_2d7355da-31d9-4921-87ec-492878cbab3d_verboseLabel_en-US" xlink:label="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Prepaid expenses and other current assets</link:label>
    <link:label id="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_label_en-US" xlink:label="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Prepaid Expense and Other Assets, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:to="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsTable_84f4f102-eda8-4dbc-b91c-d426d3b020c6_terseLabel_en-US" xlink:label="lab_ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Future Minimum Payments Under Non Cancelable Operating Leases with initial or remaining lease terms in excess of one year and future minimum capital lease payments [Table]</link:label>
    <link:label id="lab_ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsTable_label_en-US" xlink:label="lab_ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Future Minimum Payments Under Non Cancelable Operating Leases with initial or remaining lease terms in excess of one year and future minimum capital lease payments [Table]</link:label>
    <link:label id="lab_ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsTable_documentation_en-US" xlink:label="lab_ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsTable" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Future Minimum Payments Under Non Cancelable Operating Leases with initial or remaining lease terms in excess of one year and future minimum capital lease payments [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsTable" xlink:href="ibp-20221231.xsd#ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsTable" xlink:to="lab_ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsTable" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_CumulativeEffectPeriodOfAdoptionDomain_cac8f4d5-e8b9-4303-933c-1df7db78cf21_terseLabel_en-US" xlink:label="lab_srt_CumulativeEffectPeriodOfAdoptionDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cumulative Effect, Period of Adoption [Domain]</link:label>
    <link:label id="lab_srt_CumulativeEffectPeriodOfAdoptionDomain_label_en-US" xlink:label="lab_srt_CumulativeEffectPeriodOfAdoptionDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cumulative Effect, Period of Adoption [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionDomain" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionDomain" xlink:to="lab_srt_CumulativeEffectPeriodOfAdoptionDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_MajorCustomersAxis_414580f4-ac40-46a3-b401-9ce002796d69_terseLabel_en-US" xlink:label="lab_srt_MajorCustomersAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer [Axis]</link:label>
    <link:label id="lab_srt_MajorCustomersAxis_label_en-US" xlink:label="lab_srt_MajorCustomersAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MajorCustomersAxis" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MajorCustomersAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MajorCustomersAxis" xlink:to="lab_srt_MajorCustomersAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityNoncurrent_24bba609-115d-4418-a050-6891fcdf2076_terseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance lease obligations</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityNoncurrent_2b3d572c-f629-4c66-8fd0-0f29788f134f_verboseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term lease obligations</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityNoncurrent_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Liability, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:to="lab_us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RelatedPartyTransactionLineItems_0c9f19bd-ae15-4bb5-85a5-6cfad462617c_terseLabel_en-US" xlink:label="lab_us-gaap_RelatedPartyTransactionLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Related Party Transaction [Line Items]</link:label>
    <link:label id="lab_us-gaap_RelatedPartyTransactionLineItems_label_en-US" xlink:label="lab_us-gaap_RelatedPartyTransactionLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Related Party Transaction [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems" xlink:to="lab_us-gaap_RelatedPartyTransactionLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax_41bdf443-aba3-4fd5-9efb-ca6bc3bf2fb5_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unrealized loss included in accumulated other comprehensive loss associated with the terminated swaps</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax_d982c84d-5fb3-4a9b-aa3f-b6d77107bd7e_verboseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Expense associated with amortization of amended/terminated swaps</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Comprehensive Income (Loss), Cash Flow Hedge, Reclassification for Discontinuance, before Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_1d21f53d-fa91-4e78-9841-35cb44bc66ac_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Provision for Income Taxes</link:label>
    <link:label id="lab_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Components of Income Tax Expense (Benefit) [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance_0ef68601-e6f5-43d2-935c-b5e80e4c8f37_terseLabel_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Change in valuation allowance</link:label>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance_label_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Change in Deferred Tax Assets Valuation Allowance, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_e5a8c880-eb21-43cf-b747-d07b5b47e1d3_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Remaining Vesting Period</link:label>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_label_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_49f6e5f5-f7db-4992-b234-d894a837200a_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Gross Carrying Amount, Accumulated Amortization and Net Book Value</link:label>
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsToAcquireBusinessesGross_9c86f60d-a0d8-423f-9bdc-ec28d4b55991_terseLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireBusinessesGross" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash Paid</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquireBusinessesGross_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireBusinessesGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments to Acquire Businesses, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesGross" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireBusinessesGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquireBusinessesGross" xlink:to="lab_us-gaap_PaymentsToAcquireBusinessesGross" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax_fadb1c5d-1e21-4552-919f-ef5e738471a4_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unrealized gain (loss) in fair value of interest rate derivatives</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Comprehensive Income (Loss), before Reclassifications, Net of Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueByBalanceSheetGroupingTextBlock_131d9bc1-d3ca-49ae-b381-60fafd6f44fe_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueByBalanceSheetGroupingTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary of Carrying Values and Associated Fair Values of Financial Assets and Liabilities</link:label>
    <link:label id="lab_us-gaap_FairValueByBalanceSheetGroupingTextBlock_label_en-US" xlink:label="lab_us-gaap_FairValueByBalanceSheetGroupingTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, by Balance Sheet Grouping [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByBalanceSheetGroupingTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueByBalanceSheetGroupingTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTextBlock" xlink:to="lab_us-gaap_FairValueByBalanceSheetGroupingTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeContractTypeDomain_578925fa-b463-4151-9df3-e1031b748fc6_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeContractTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative Contract [Domain]</link:label>
    <link:label id="lab_us-gaap_DerivativeContractTypeDomain_label_en-US" xlink:label="lab_us-gaap_DerivativeContractTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative Contract [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeContractTypeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeContractTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeContractTypeDomain" xlink:to="lab_us-gaap_DerivativeContractTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GrossProfit_bf9dc4d0-3d81-4103-ad15-d04e70543dbf_totalLabel_en-US" xlink:label="lab_us-gaap_GrossProfit" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gross profit</link:label>
    <link:label id="lab_us-gaap_GrossProfit_label_en-US" xlink:label="lab_us-gaap_GrossProfit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gross Profit</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GrossProfit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GrossProfit" xlink:to="lab_us-gaap_GrossProfit" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_InstallationSegmentMember_a1265a93-0fff-4a91-8d72-4860d7752dda_terseLabel_en-US" xlink:label="lab_ibp_InstallationSegmentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Installation</link:label>
    <link:label id="lab_ibp_InstallationSegmentMember_label_en-US" xlink:label="lab_ibp_InstallationSegmentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Installation Segment [Member]</link:label>
    <link:label id="lab_ibp_InstallationSegmentMember_documentation_en-US" xlink:label="lab_ibp_InstallationSegmentMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Installation Segment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_InstallationSegmentMember" xlink:href="ibp-20221231.xsd#ibp_InstallationSegmentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_InstallationSegmentMember" xlink:to="lab_ibp_InstallationSegmentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityRegistrantName_be807f2c-db2d-4857-86ce-ea9d6851c6ab_terseLabel_en-US" xlink:label="lab_dei_EntityRegistrantName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Registrant Name</link:label>
    <link:label id="lab_dei_EntityRegistrantName_label_en-US" xlink:label="lab_dei_EntityRegistrantName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Registrant Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityRegistrantName" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityRegistrantName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityRegistrantName" xlink:to="lab_dei_EntityRegistrantName" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventsTextBlock_da04d5e2-fb8a-4d7d-a21b-a627c2abf415_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventsTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Events</link:label>
    <link:label id="lab_us-gaap_SubsequentEventsTextBlock_label_en-US" xlink:label="lab_us-gaap_SubsequentEventsTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Events [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventsTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventsTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventsTextBlock" xlink:to="lab_us-gaap_SubsequentEventsTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_9bedb821-a407-4b8a-ace7-28b3dd8dad06_terseLabel_en-US" xlink:label="lab_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Combined Business Acquisitions</link:label>
    <link:label id="lab_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_label_en-US" xlink:label="lab_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Series of Individually Immaterial Business Acquisitions [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember" xlink:to="lab_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_IncomeTaxesLineItems_917e7e86-52d8-4bde-aa4d-d056c626e88c_terseLabel_en-US" xlink:label="lab_ibp_IncomeTaxesLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Taxes [Line Items]</link:label>
    <link:label id="lab_ibp_IncomeTaxesLineItems_label_en-US" xlink:label="lab_ibp_IncomeTaxesLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Taxes [Line Items]</link:label>
    <link:label id="lab_ibp_IncomeTaxesLineItems_documentation_en-US" xlink:label="lab_ibp_IncomeTaxesLineItems" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Taxes [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_IncomeTaxesLineItems" xlink:href="ibp-20221231.xsd#ibp_IncomeTaxesLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_IncomeTaxesLineItems" xlink:to="lab_ibp_IncomeTaxesLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeasesAbstract_cf520ded-ab92-4c78-809d-401d20245489_terseLabel_en-US" xlink:label="lab_us-gaap_LeasesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leases [Abstract]</link:label>
    <link:label id="lab_us-gaap_LeasesAbstract_label_en-US" xlink:label="lab_us-gaap_LeasesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leases [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeasesAbstract" xlink:to="lab_us-gaap_LeasesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_0b189a71-9854-410c-9cf4-f22fe6917ca0_verboseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net operating loss carryforwards</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_e81b4034-433c-421d-b10e-35e1e84dde32_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred tax assets, net operating loss carryforwards</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Operating Loss Carryforwards</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwards"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:to="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConsolidationPolicyTextBlock_8b127b98-3fef-4dc5-a15c-dabcfdf55407_terseLabel_en-US" xlink:label="lab_us-gaap_ConsolidationPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Consolidation</link:label>
    <link:label id="lab_us-gaap_ConsolidationPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_ConsolidationPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Consolidation, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConsolidationPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConsolidationPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConsolidationPolicyTextBlock" xlink:to="lab_us-gaap_ConsolidationPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_CertainEmployeesMember_8b280ab7-407f-43b8-b497-fc23b500b1d3_terseLabel_en-US" xlink:label="lab_ibp_CertainEmployeesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Certain Employees</link:label>
    <link:label id="lab_ibp_CertainEmployeesMember_label_en-US" xlink:label="lab_ibp_CertainEmployeesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Certain Employees [Member]</link:label>
    <link:label id="lab_ibp_CertainEmployeesMember_documentation_en-US" xlink:label="lab_ibp_CertainEmployeesMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Certain Employees</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CertainEmployeesMember" xlink:href="ibp-20221231.xsd#ibp_CertainEmployeesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_CertainEmployeesMember" xlink:to="lab_ibp_CertainEmployeesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromDebtNetOfIssuanceCosts_c9237eb8-c065-4878-a5c0-370af7cf47bd_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromDebtNetOfIssuanceCosts" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from senior note issuance</link:label>
    <link:label id="lab_us-gaap_ProceedsFromDebtNetOfIssuanceCosts_label_en-US" xlink:label="lab_us-gaap_ProceedsFromDebtNetOfIssuanceCosts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from Debt, Net of Issuance Costs</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromDebtNetOfIssuanceCosts" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromDebtNetOfIssuanceCosts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromDebtNetOfIssuanceCosts" xlink:to="lab_us-gaap_ProceedsFromDebtNetOfIssuanceCosts" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_MinimumMember_89a35f82-7702-42f5-ac6e-fa53600fecce_terseLabel_en-US" xlink:label="lab_srt_MinimumMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Minimum</link:label>
    <link:label id="lab_srt_MinimumMember_label_en-US" xlink:label="lab_srt_MinimumMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Minimum [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MinimumMember" xlink:to="lab_srt_MinimumMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityEmergingGrowthCompany_bf447974-51b0-406c-bf8f-db1eddc6f122_terseLabel_en-US" xlink:label="lab_dei_EntityEmergingGrowthCompany" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Emerging Growth Company</link:label>
    <link:label id="lab_dei_EntityEmergingGrowthCompany_label_en-US" xlink:label="lab_dei_EntityEmergingGrowthCompany" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Emerging Growth Company</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityEmergingGrowthCompany" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityEmergingGrowthCompany"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityEmergingGrowthCompany" xlink:to="lab_dei_EntityEmergingGrowthCompany" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockParOrStatedValuePerShare_2ab4fa2f-9300-4493-8a38-daf9e6fc99e3_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockParOrStatedValuePerShare" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock, par value (in USD per share)</link:label>
    <link:label id="lab_us-gaap_CommonStockParOrStatedValuePerShare_label_en-US" xlink:label="lab_us-gaap_CommonStockParOrStatedValuePerShare" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock, Par or Stated Value Per Share</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockParOrStatedValuePerShare"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockParOrStatedValuePerShare" xlink:to="lab_us-gaap_CommonStockParOrStatedValuePerShare" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_EstimatedEarningsOnLongTermContracts_99e001c0-1e7c-4e3b-88e3-3098a8ec1438_terseLabel_en-US" xlink:label="lab_ibp_EstimatedEarningsOnLongTermContracts" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Estimated earnings</link:label>
    <link:label id="lab_ibp_EstimatedEarningsOnLongTermContracts_label_en-US" xlink:label="lab_ibp_EstimatedEarningsOnLongTermContracts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Estimated Earnings On Long Term Contracts</link:label>
    <link:label id="lab_ibp_EstimatedEarningsOnLongTermContracts_documentation_en-US" xlink:label="lab_ibp_EstimatedEarningsOnLongTermContracts" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Estimated earnings on long term contracts.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_EstimatedEarningsOnLongTermContracts" xlink:href="ibp-20221231.xsd#ibp_EstimatedEarningsOnLongTermContracts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_EstimatedEarningsOnLongTermContracts" xlink:to="lab_ibp_EstimatedEarningsOnLongTermContracts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_49e6458b-9d0b-4be8-af76-5f864c624260_verboseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Intangibles on business combination</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_e02f636c-d0ef-44fd-a6f6-d2f43f2db059_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Intangibles</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_eb15032e-f73b-4d5a-b586-3586ef283d8e_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Intangibles</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Intangible Assets, Other than Goodwill</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost_c609b507-b358-4107-a3ad-c9a22b2270d7_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock compensation</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Nondeductible Expense, Share-Based Payment Arrangement, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:to="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax_89543ba1-9720-4ac4-bcfa-16ce142fd7fa_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortized interest expense of financing element</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Comprehensive Income (Loss) before Reclassifications, Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_f131aebf-d349-4dc5-b8ef-883145b83f05_terseLabel_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commitments and Contingencies Disclosure [Abstract]</link:label>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commitments and Contingencies Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueDisclosuresTextBlock_bfc94c6b-a817-48ea-8017-caed50c4a53b_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueDisclosuresTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value Measurements</link:label>
    <link:label id="lab_us-gaap_FairValueDisclosuresTextBlock_label_en-US" xlink:label="lab_us-gaap_FairValueDisclosuresTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value Disclosures [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueDisclosuresTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueDisclosuresTextBlock" xlink:to="lab_us-gaap_FairValueDisclosuresTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_IncomeTaxTable_98ae1851-99f6-4633-bc2f-66134fe849c5_terseLabel_en-US" xlink:label="lab_ibp_IncomeTaxTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax [Table]</link:label>
    <link:label id="lab_ibp_IncomeTaxTable_label_en-US" xlink:label="lab_ibp_IncomeTaxTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax [Table]</link:label>
    <link:label id="lab_ibp_IncomeTaxTable_documentation_en-US" xlink:label="lab_ibp_IncomeTaxTable" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_IncomeTaxTable" xlink:href="ibp-20221231.xsd#ibp_IncomeTaxTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_IncomeTaxTable" xlink:to="lab_ibp_IncomeTaxTable" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_TradingSymbol_90fb263c-0ec1-43e2-9893-5d7d85ed87d2_terseLabel_en-US" xlink:label="lab_dei_TradingSymbol" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Trading Symbol</link:label>
    <link:label id="lab_dei_TradingSymbol_label_en-US" xlink:label="lab_dei_TradingSymbol" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Trading Symbol</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_TradingSymbol" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_TradingSymbol"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_TradingSymbol" xlink:to="lab_dei_TradingSymbol" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityFileNumber_e80c3f58-524a-46c9-b762-e9180d2a6581_terseLabel_en-US" xlink:label="lab_dei_EntityFileNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity File Number</link:label>
    <link:label id="lab_dei_EntityFileNumber_label_en-US" xlink:label="lab_dei_EntityFileNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity File Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFileNumber" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityFileNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityFileNumber" xlink:to="lab_dei_EntityFileNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TreasuryStockAcquiredAverageCostPerShare_6d3951ca-62c5-4214-8452-1fb2f764d678_terseLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockAcquiredAverageCostPerShare" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share repurchase, price per share (USD per share)</link:label>
    <link:label id="lab_us-gaap_TreasuryStockAcquiredAverageCostPerShare_label_en-US" xlink:label="lab_us-gaap_TreasuryStockAcquiredAverageCostPerShare" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Treasury Stock Acquired, Average Cost Per Share</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockAcquiredAverageCostPerShare" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockAcquiredAverageCostPerShare"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockAcquiredAverageCostPerShare" xlink:to="lab_us-gaap_TreasuryStockAcquiredAverageCostPerShare" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_cea48ee0-ca3d-4728-b8db-2f72dc0661fc_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss) [Line Items]</link:label>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_label_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss) [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_0ffb148d-df44-4141-a62d-2cace8684eb1_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2026</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, Year Four</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_TitleOfIndividualAxis_8f535142-a496-48ef-ac83-93ee82507070_terseLabel_en-US" xlink:label="lab_srt_TitleOfIndividualAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Title of Individual [Axis]</link:label>
    <link:label id="lab_srt_TitleOfIndividualAxis_label_en-US" xlink:label="lab_srt_TitleOfIndividualAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Title of Individual [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_TitleOfIndividualAxis" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_TitleOfIndividualAxis" xlink:to="lab_srt_TitleOfIndividualAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_84e1b30e-e4fd-4854-94b9-f9169e16d0d0_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based awards granted (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_GeneralLiabilityInsuranceProgramMember_5af91328-95ca-4613-968c-933afc5ee0af_terseLabel_en-US" xlink:label="lab_ibp_GeneralLiabilityInsuranceProgramMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">General Liability Insurance Program</link:label>
    <link:label id="lab_ibp_GeneralLiabilityInsuranceProgramMember_label_en-US" xlink:label="lab_ibp_GeneralLiabilityInsuranceProgramMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">General Liability Insurance Program [Member]</link:label>
    <link:label id="lab_ibp_GeneralLiabilityInsuranceProgramMember_documentation_en-US" xlink:label="lab_ibp_GeneralLiabilityInsuranceProgramMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">General liability insurance program.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_GeneralLiabilityInsuranceProgramMember" xlink:href="ibp-20221231.xsd#ibp_GeneralLiabilityInsuranceProgramMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_GeneralLiabilityInsuranceProgramMember" xlink:to="lab_ibp_GeneralLiabilityInsuranceProgramMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperations_ad018211-ab88-4716-9bcb-76769afd6a2d_totalLabel_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total tax expense</link:label>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperations_label_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskByBenchmarkAxis_8f2b01c2-ad91-49cc-996f-760ec0408a41_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Benchmark [Axis]</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskByBenchmarkAxis_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Benchmark [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="lab_us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_UseOfEstimates_85eec8f2-abeb-416e-aca3-aa3d396a1611_terseLabel_en-US" xlink:label="lab_us-gaap_UseOfEstimates" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Use of Estimates</link:label>
    <link:label id="lab_us-gaap_UseOfEstimates_label_en-US" xlink:label="lab_us-gaap_UseOfEstimates" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Use of Estimates, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UseOfEstimates" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UseOfEstimates"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UseOfEstimates" xlink:to="lab_us-gaap_UseOfEstimates" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationDisclosureTextBlock_13b39380-4d15-422c-8fc2-fac4d864af95_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combinations</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationDisclosureTextBlock" xlink:to="lab_us-gaap_BusinessCombinationDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherNonoperatingIncomeExpenseAbstract_d899872a-c482-459f-8ca1-3dcbd9417195_terseLabel_en-US" xlink:label="lab_us-gaap_OtherNonoperatingIncomeExpenseAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other expense</link:label>
    <link:label id="lab_us-gaap_OtherNonoperatingIncomeExpenseAbstract_label_en-US" xlink:label="lab_us-gaap_OtherNonoperatingIncomeExpenseAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Nonoperating Income (Expense) [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpenseAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNonoperatingIncomeExpenseAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherNonoperatingIncomeExpenseAbstract" xlink:to="lab_us-gaap_OtherNonoperatingIncomeExpenseAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_NoncashActivitiesReleaseOfIndemnificationOfAcquisitionRelatedDebt_1637df0d-cb97-4375-ba98-21cfc6430c55_terseLabel_en-US" xlink:label="lab_ibp_NoncashActivitiesReleaseOfIndemnificationOfAcquisitionRelatedDebt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Release of indemnification of acquisition-related debt</link:label>
    <link:label id="lab_ibp_NoncashActivitiesReleaseOfIndemnificationOfAcquisitionRelatedDebt_label_en-US" xlink:label="lab_ibp_NoncashActivitiesReleaseOfIndemnificationOfAcquisitionRelatedDebt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Noncash Activities, Release Of Indemnification Of Acquisition Related Debt</link:label>
    <link:label id="lab_ibp_NoncashActivitiesReleaseOfIndemnificationOfAcquisitionRelatedDebt_documentation_en-US" xlink:label="lab_ibp_NoncashActivitiesReleaseOfIndemnificationOfAcquisitionRelatedDebt" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Noncash Activities, Release Of Indemnification Of Acquisition Related Debt</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_NoncashActivitiesReleaseOfIndemnificationOfAcquisitionRelatedDebt" xlink:href="ibp-20221231.xsd#ibp_NoncashActivitiesReleaseOfIndemnificationOfAcquisitionRelatedDebt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_NoncashActivitiesReleaseOfIndemnificationOfAcquisitionRelatedDebt" xlink:to="lab_ibp_NoncashActivitiesReleaseOfIndemnificationOfAcquisitionRelatedDebt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsPayable_eb384a56-ca67-44b4-8a06-f8c40f065f25_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsPayable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts payable</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsPayable_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsPayable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Accounts Payable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsPayable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccountsPayable" xlink:to="lab_us-gaap_IncreaseDecreaseInAccountsPayable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_e041ecdf-8d43-4416-8cab-e08f3d4b7ac3_totalLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair value of assets acquired and purchase price</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired, Goodwill, and Liabilities Assumed, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_23e3af93-021d-4246-8244-93f0c145a9de_periodStartLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Beginning Balance</link:label>
    <link:label id="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_431ce1ed-8c72-4b0b-9ac1-fbf6e83cca15_periodEndLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Ending Balance</link:label>
    <link:label id="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_label_en-US" xlink:label="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue" xlink:to="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskPercentage1_1d60f167-4199-42ea-aadb-6b8647366989_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskPercentage1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer risk (as a percent)</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskPercentage1_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskPercentage1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk, Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskPercentage1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskPercentage1" xlink:to="lab_us-gaap_ConcentrationRiskPercentage1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred_ccab34b0-919c-4081-9c60-4810332396d9_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Seller obligations in connection with acquisition of businesses</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Consideration Transferred, Liabilities Incurred</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred" xlink:to="lab_us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss_97bd0d9f-5a29-4a9f-a73f-c962a6f16e49_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net income</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Acquisition, Pro Forma Net Income (Loss)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss" xlink:to="lab_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_LiabilityPerformanceBasedStockAwardsMember_7552de72-4da7-4784-9760-5c003175639a_terseLabel_en-US" xlink:label="lab_ibp_LiabilityPerformanceBasedStockAwardsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liability Performance-Based Stock Awards</link:label>
    <link:label id="lab_ibp_LiabilityPerformanceBasedStockAwardsMember_label_en-US" xlink:label="lab_ibp_LiabilityPerformanceBasedStockAwardsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liability Performance-based Stock Awards [Member]</link:label>
    <link:label id="lab_ibp_LiabilityPerformanceBasedStockAwardsMember_documentation_en-US" xlink:label="lab_ibp_LiabilityPerformanceBasedStockAwardsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liability Performance-based Stock Awards</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_LiabilityPerformanceBasedStockAwardsMember" xlink:href="ibp-20221231.xsd#ibp_LiabilityPerformanceBasedStockAwardsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_LiabilityPerformanceBasedStockAwardsMember" xlink:to="lab_ibp_LiabilityPerformanceBasedStockAwardsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxDisclosureTextBlock_1cc819db-f4c6-4db7-a562-a46d7e9c316f_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Taxes</link:label>
    <link:label id="lab_us-gaap_IncomeTaxDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_IncomeTaxDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxDisclosureTextBlock" xlink:to="lab_us-gaap_IncomeTaxDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueFromRelatedParties_56dbc09f-47db-4fdc-86ce-9d5c8484eeef_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromRelatedParties" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sales</link:label>
    <link:label id="lab_us-gaap_RevenueFromRelatedParties_label_en-US" xlink:label="lab_us-gaap_RevenueFromRelatedParties" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue from Related Parties</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromRelatedParties" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromRelatedParties"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromRelatedParties" xlink:to="lab_us-gaap_RevenueFromRelatedParties" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CreditFacilityDomain_f3112378-312a-4204-977d-314a92e6ac24_terseLabel_en-US" xlink:label="lab_us-gaap_CreditFacilityDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Credit Facility [Domain]</link:label>
    <link:label id="lab_us-gaap_CreditFacilityDomain_label_en-US" xlink:label="lab_us-gaap_CreditFacilityDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Credit Facility [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CreditFacilityDomain" xlink:to="lab_us-gaap_CreditFacilityDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareBasic_7a2d0938-2068-4555-b0ef-233093dbffbb_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasic" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Basic (in USD per share)</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareBasic_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasic" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Earnings Per Share, Basic</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasic" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareBasic"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareBasic" xlink:to="lab_us-gaap_EarningsPerShareBasic" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationTax_0259830d-14d0-41fe-abb7-46cde20c755d_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization of unrealized gain (loss)</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationTax_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), Reclassification, Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeaseContractualTermAxis_71aec6ba-8c3e-4de9-a37e-b3056dd4c316_terseLabel_en-US" xlink:label="lab_us-gaap_LeaseContractualTermAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lease Contractual Term [Axis]</link:label>
    <link:label id="lab_us-gaap_LeaseContractualTermAxis_label_en-US" xlink:label="lab_us-gaap_LeaseContractualTermAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lease Contractual Term [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseContractualTermAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseContractualTermAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeaseContractualTermAxis" xlink:to="lab_us-gaap_LeaseContractualTermAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityInteractiveDataCurrent_2137e847-75db-4594-a360-b6ad47517c0d_terseLabel_en-US" xlink:label="lab_dei_EntityInteractiveDataCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Interactive Data Current</link:label>
    <link:label id="lab_dei_EntityInteractiveDataCurrent_label_en-US" xlink:label="lab_dei_EntityInteractiveDataCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Interactive Data Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityInteractiveDataCurrent" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityInteractiveDataCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityInteractiveDataCurrent" xlink:to="lab_dei_EntityInteractiveDataCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeDomain_d3c1724c-25cf-4be8-b3fa-d12c9d55d7bd_terseLabel_en-US" xlink:label="lab_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Guaranteed Insurance Contract, Type of Guarantee [Domain]</link:label>
    <link:label id="lab_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeDomain_label_en-US" xlink:label="lab_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Guaranteed Insurance Contract, Type of Guarantee [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeDomain" xlink:to="lab_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueByBalanceSheetGroupingTable_5815495e-c432-44a8-b9d2-0902ce8b38bc_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueByBalanceSheetGroupingTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, by Balance Sheet Grouping [Table]</link:label>
    <link:label id="lab_us-gaap_FairValueByBalanceSheetGroupingTable_label_en-US" xlink:label="lab_us-gaap_FairValueByBalanceSheetGroupingTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, by Balance Sheet Grouping [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByBalanceSheetGroupingTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueByBalanceSheetGroupingTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable" xlink:to="lab_us-gaap_FairValueByBalanceSheetGroupingTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_e5197558-2459-4b4f-a6f3-1294ce0fbe72_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_0392998d-eb90-4432-bbe7-66037bf24f6e_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Changes in assets and liabilities, excluding effects of acquisitions</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Operating Capital [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationTaxContingencies_aeae0981-0bb1-49fe-8aa9-eab671630bb3_terseLabel_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationTaxContingencies" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Change in uncertain tax positions</link:label>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationTaxContingencies_label_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationTaxContingencies" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Tax Contingency, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationTaxContingencies" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationTaxContingencies"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateReconciliationTaxContingencies" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateReconciliationTaxContingencies" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PortionAtFairValueFairValueDisclosureMember_821f414c-dfc6-4984-8303-4b1ee67600cc_terseLabel_en-US" xlink:label="lab_us-gaap_PortionAtFairValueFairValueDisclosureMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Portion at Fair Value Measurement</link:label>
    <link:label id="lab_us-gaap_PortionAtFairValueFairValueDisclosureMember_label_en-US" xlink:label="lab_us-gaap_PortionAtFairValueFairValueDisclosureMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Portion at Fair Value Measurement [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PortionAtFairValueFairValueDisclosureMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PortionAtFairValueFairValueDisclosureMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PortionAtFairValueFairValueDisclosureMember" xlink:to="lab_us-gaap_PortionAtFairValueFairValueDisclosureMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive_0f75c170-e77a-4603-a1e0-7e22d639aab5_terseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2027</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Liability, to be Paid, Year Five</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive" xlink:to="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromSaleOfShortTermInvestments_a31dd54a-4bab-4955-ad1a-c5e7d4e93592_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromSaleOfShortTermInvestments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Maturities of short term investments</link:label>
    <link:label id="lab_us-gaap_ProceedsFromSaleOfShortTermInvestments_label_en-US" xlink:label="lab_us-gaap_ProceedsFromSaleOfShortTermInvestments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from Sale of Short-Term Investments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromSaleOfShortTermInvestments" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromSaleOfShortTermInvestments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromSaleOfShortTermInvestments" xlink:to="lab_us-gaap_ProceedsFromSaleOfShortTermInvestments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashFDICInsuredAmount_a222ad27-b061-4f7e-84bf-cf9325ea5aab_terseLabel_en-US" xlink:label="lab_us-gaap_CashFDICInsuredAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amount insured by FDIC</link:label>
    <link:label id="lab_us-gaap_CashFDICInsuredAmount_label_en-US" xlink:label="lab_us-gaap_CashFDICInsuredAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash, FDIC Insured Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashFDICInsuredAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashFDICInsuredAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashFDICInsuredAmount" xlink:to="lab_us-gaap_CashFDICInsuredAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_baa1c5dc-bd46-44ef-9bfe-56ce689004fe_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary of Stock Compensation Expenses</link:label>
    <link:label id="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:to="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_d6bdf22e-9b1f-4fb4-af52-412e592b19fe_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based compensation issued to directors</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Shares Issued, Value, Share-Based Payment Arrangement, after Forfeiture</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:to="lab_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsForRepurchaseOfCommonStock_66fa061e-bc1a-4b6f-8cef-dd32d5aa7442_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Repurchase of common stock</link:label>
    <link:label id="lab_us-gaap_PaymentsForRepurchaseOfCommonStock_label_en-US" xlink:label="lab_us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments for Repurchase of Common Stock</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:to="lab_us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive_af714651-4964-41d0-8adc-ead5946a4d00_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Thereafter</link:label>
    <link:label id="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive_label_en-US" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Term Debt, Maturity, after Year Five</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive" xlink:to="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxPolicyTextBlock_9e150eb2-21a3-49c7-b45b-4a2dc971ea4f_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Taxes</link:label>
    <link:label id="lab_us-gaap_IncomeTaxPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_IncomeTaxPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxPolicyTextBlock" xlink:to="lab_us-gaap_IncomeTaxPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RepaymentsOfOtherLongTermDebt_d0ef7eef-6683-456f-842b-114b61ba2767_negatedLabel_en-US" xlink:label="lab_us-gaap_RepaymentsOfOtherLongTermDebt" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Principal payments on long-term debt</link:label>
    <link:label id="lab_us-gaap_RepaymentsOfOtherLongTermDebt_label_en-US" xlink:label="lab_us-gaap_RepaymentsOfOtherLongTermDebt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Repayments of Other Long-Term Debt</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfOtherLongTermDebt" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RepaymentsOfOtherLongTermDebt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RepaymentsOfOtherLongTermDebt" xlink:to="lab_us-gaap_RepaymentsOfOtherLongTermDebt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromIssuanceOfMediumTermNotes_081e47a9-c3b7-4696-9556-35b403035b1c_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromIssuanceOfMediumTermNotes" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from term loan (Note 8)</link:label>
    <link:label id="lab_us-gaap_ProceedsFromIssuanceOfMediumTermNotes_label_en-US" xlink:label="lab_us-gaap_ProceedsFromIssuanceOfMediumTermNotes" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from Issuance of Medium-term Notes</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfMediumTermNotes" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfMediumTermNotes"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromIssuanceOfMediumTermNotes" xlink:to="lab_us-gaap_ProceedsFromIssuanceOfMediumTermNotes" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_InsuranceReceivableForClaimsExceedingStopLossLimit_68052881-aa3f-49f6-92db-7576641f47f3_terseLabel_en-US" xlink:label="lab_ibp_InsuranceReceivableForClaimsExceedingStopLossLimit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Insurance receivables for claims that exceeded the stop loss limit</link:label>
    <link:label id="lab_ibp_InsuranceReceivableForClaimsExceedingStopLossLimit_label_en-US" xlink:label="lab_ibp_InsuranceReceivableForClaimsExceedingStopLossLimit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Insurance Receivable For Claims Exceeding Stop Loss Limit</link:label>
    <link:label id="lab_ibp_InsuranceReceivableForClaimsExceedingStopLossLimit_documentation_en-US" xlink:label="lab_ibp_InsuranceReceivableForClaimsExceedingStopLossLimit" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Insurance receivable for claims exceeding stop loss limit.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_InsuranceReceivableForClaimsExceedingStopLossLimit" xlink:href="ibp-20221231.xsd#ibp_InsuranceReceivableForClaimsExceedingStopLossLimit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_InsuranceReceivableForClaimsExceedingStopLossLimit" xlink:to="lab_ibp_InsuranceReceivableForClaimsExceedingStopLossLimit" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_TermLoanMember_bc85d35b-e7cf-4f13-9c1e-e664898975a6_terseLabel_en-US" xlink:label="lab_ibp_TermLoanMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Term Loan</link:label>
    <link:label id="lab_ibp_TermLoanMember_label_en-US" xlink:label="lab_ibp_TermLoanMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Term Loan [Member]</link:label>
    <link:label id="lab_ibp_TermLoanMember_documentation_en-US" xlink:label="lab_ibp_TermLoanMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Term loan.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_TermLoanMember" xlink:href="ibp-20221231.xsd#ibp_TermLoanMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_TermLoanMember" xlink:to="lab_ibp_TermLoanMember" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_CostsAndEstimatedEarningsOnUncompletedContractsTableTextBlock_27853916-36cf-4b3c-bc22-3686319fd6ef_terseLabel_en-US" xlink:label="lab_ibp_CostsAndEstimatedEarningsOnUncompletedContractsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Cost and Estimated Earnings on Uncompleted Contracts</link:label>
    <link:label id="lab_ibp_CostsAndEstimatedEarningsOnUncompletedContractsTableTextBlock_label_en-US" xlink:label="lab_ibp_CostsAndEstimatedEarningsOnUncompletedContractsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Costs And Estimated Earnings On Uncompleted Contracts [Table Text Block]</link:label>
    <link:label id="lab_ibp_CostsAndEstimatedEarningsOnUncompletedContractsTableTextBlock_documentation_en-US" xlink:label="lab_ibp_CostsAndEstimatedEarningsOnUncompletedContractsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Costs And Estimated Earnings On Uncompleted Contracts Table [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CostsAndEstimatedEarningsOnUncompletedContractsTableTextBlock" xlink:href="ibp-20221231.xsd#ibp_CostsAndEstimatedEarningsOnUncompletedContractsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_CostsAndEstimatedEarningsOnUncompletedContractsTableTextBlock" xlink:to="lab_ibp_CostsAndEstimatedEarningsOnUncompletedContractsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsCurrentAbstract_852c8690-b35e-4ebe-9b47-a2cdb2bcfa50_terseLabel_en-US" xlink:label="lab_us-gaap_AssetsCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current assets</link:label>
    <link:label id="lab_us-gaap_AssetsCurrentAbstract_label_en-US" xlink:label="lab_us-gaap_AssetsCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets, Current [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrentAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrentAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsCurrentAbstract" xlink:to="lab_us-gaap_AssetsCurrentAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityAbstract_5b8103bd-0eb3-42a9-9133-8ed3aea6fdf1_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Leases</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityAbstract_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Liability [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityAbstract" xlink:to="lab_us-gaap_OperatingLeaseLiabilityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InsuranceSettlementsReceivableNoncurrent_7928f738-8257-48dc-ad4a-032cfa669442_terseLabel_en-US" xlink:label="lab_us-gaap_InsuranceSettlementsReceivableNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Included in other non-current assets</link:label>
    <link:label id="lab_us-gaap_InsuranceSettlementsReceivableNoncurrent_5d2a80ee-0838-4ce0-b2ca-5565515f1040_totalLabel_en-US" xlink:label="lab_us-gaap_InsuranceSettlementsReceivableNoncurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total insurance receivables and indemnification assets included in other non-current assets</link:label>
    <link:label id="lab_us-gaap_InsuranceSettlementsReceivableNoncurrent_label_en-US" xlink:label="lab_us-gaap_InsuranceSettlementsReceivableNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Insurance Settlements Receivable, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InsuranceSettlementsReceivableNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InsuranceSettlementsReceivableNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InsuranceSettlementsReceivableNoncurrent" xlink:to="lab_us-gaap_InsuranceSettlementsReceivableNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RetainedEarningsAccumulatedDeficit_5a766743-d134-4cdf-9f4e-33524c3fe607_terseLabel_en-US" xlink:label="lab_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retained earnings</link:label>
    <link:label id="lab_us-gaap_RetainedEarningsAccumulatedDeficit_label_en-US" xlink:label="lab_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retained Earnings (Accumulated Deficit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:to="lab_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_18850738-e3eb-4a1d-8afc-85efc377d527_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ScenarioUnspecifiedDomain_5951741a-b076-425d-9d66-da9529c48fec_terseLabel_en-US" xlink:label="lab_srt_ScenarioUnspecifiedDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Scenario [Domain]</link:label>
    <link:label id="lab_srt_ScenarioUnspecifiedDomain_label_en-US" xlink:label="lab_srt_ScenarioUnspecifiedDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Scenario [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioUnspecifiedDomain" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioUnspecifiedDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ScenarioUnspecifiedDomain" xlink:to="lab_srt_ScenarioUnspecifiedDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts_6022a116-67ed-4dbe-9109-8be3c1ea5fd5_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Allowance for doubtful accounts</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Asset, Tax Deferred Expense, Reserve and Accrual, Accounts Receivable, Allowance for Credit Loss</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" xlink:to="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RelatedPartyTransactionsDisclosureTextBlock_ac95988f-70ce-430d-8b0c-ae0638ef6e24_terseLabel_en-US" xlink:label="lab_us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Related Party Transactions</link:label>
    <link:label id="lab_us-gaap_RelatedPartyTransactionsDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Related Party Transactions Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionsDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:to="lab_us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_VehiclesInsuranceMember_9327a6b4-297d-4682-a72a-de35d5df9620_terseLabel_en-US" xlink:label="lab_ibp_VehiclesInsuranceMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vehicles Insurance</link:label>
    <link:label id="lab_ibp_VehiclesInsuranceMember_label_en-US" xlink:label="lab_ibp_VehiclesInsuranceMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vehicles Insurance [Member]</link:label>
    <link:label id="lab_ibp_VehiclesInsuranceMember_documentation_en-US" xlink:label="lab_ibp_VehiclesInsuranceMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vehicles insurance.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_VehiclesInsuranceMember" xlink:href="ibp-20221231.xsd#ibp_VehiclesInsuranceMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_VehiclesInsuranceMember" xlink:to="lab_ibp_VehiclesInsuranceMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessAcquisitionProFormaInformationTextBlock_a4a38215-60e8-4ce1-a82c-da7fef1ed2a6_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionProFormaInformationTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Pro Forma Results of Operations</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionProFormaInformationTextBlock_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionProFormaInformationTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Acquisition, Pro Forma Information [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionProFormaInformationTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionProFormaInformationTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionProFormaInformationTextBlock" xlink:to="lab_us-gaap_BusinessAcquisitionProFormaInformationTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentFiscalYearFocus_f8af51d5-4d8b-4323-b412-4eb843ab494c_terseLabel_en-US" xlink:label="lab_dei_DocumentFiscalYearFocus" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Fiscal Year Focus</link:label>
    <link:label id="lab_dei_DocumentFiscalYearFocus_label_en-US" xlink:label="lab_dei_DocumentFiscalYearFocus" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Fiscal Year Focus</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalYearFocus" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentFiscalYearFocus"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentFiscalYearFocus" xlink:to="lab_dei_DocumentFiscalYearFocus" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_DividendsDeclaredAndPaid2Member_403f1d0f-8d04-4ae2-9c80-835b74fd70d0_terseLabel_en-US" xlink:label="lab_ibp_DividendsDeclaredAndPaid2Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Dividends Declared And Paid 2</link:label>
    <link:label id="lab_ibp_DividendsDeclaredAndPaid2Member_label_en-US" xlink:label="lab_ibp_DividendsDeclaredAndPaid2Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Dividends Declared And Paid 2 [Member]</link:label>
    <link:label id="lab_ibp_DividendsDeclaredAndPaid2Member_documentation_en-US" xlink:label="lab_ibp_DividendsDeclaredAndPaid2Member" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Dividends Declared And Paid 2</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DividendsDeclaredAndPaid2Member" xlink:href="ibp-20221231.xsd#ibp_DividendsDeclaredAndPaid2Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_DividendsDeclaredAndPaid2Member" xlink:to="lab_ibp_DividendsDeclaredAndPaid2Member" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization_c98a61fa-9803-45df-a6dc-da81c1452fa5_terseLabel_en-US" xlink:label="lab_us-gaap_CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost of sales</link:label>
    <link:label id="lab_us-gaap_CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization_label_en-US" xlink:label="lab_us-gaap_CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost of Goods and Service, Excluding Depreciation, Depletion, and Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization" xlink:to="lab_us-gaap_CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfEqualInstallmentsForVestingOfStockAwards_50d7398d-8d87-428b-92e0-991c2a31108d_terseLabel_en-US" xlink:label="lab_ibp_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfEqualInstallmentsForVestingOfStockAwards" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of equal installments</link:label>
    <link:label id="lab_ibp_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfEqualInstallmentsForVestingOfStockAwards_label_en-US" xlink:label="lab_ibp_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfEqualInstallmentsForVestingOfStockAwards" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share Based Compensation Arrangement By Share Based Payment Award Number Of Equal Installments For Vesting Of Stock Awards</link:label>
    <link:label id="lab_ibp_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfEqualInstallmentsForVestingOfStockAwards_documentation_en-US" xlink:label="lab_ibp_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfEqualInstallmentsForVestingOfStockAwards" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of equal installments for vesting restricted stock.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfEqualInstallmentsForVestingOfStockAwards" xlink:href="ibp-20221231.xsd#ibp_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfEqualInstallmentsForVestingOfStockAwards"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfEqualInstallmentsForVestingOfStockAwards" xlink:to="lab_ibp_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfEqualInstallmentsForVestingOfStockAwards" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_f2a1715c-566c-4080-a19a-18702a4dd537_terseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash flows from operating activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Operating Activities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeasePrincipalPayments_d10af70e-69bc-49cc-aff7-d2a88f42e941_negatedLabel_en-US" xlink:label="lab_us-gaap_FinanceLeasePrincipalPayments" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Principal payments on finance lease obligations</link:label>
    <link:label id="lab_us-gaap_FinanceLeasePrincipalPayments_0c8bfa83-4140-49eb-9a6e-1969453cd5c3_verboseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeasePrincipalPayments" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Financing cash flows for finance leases</link:label>
    <link:label id="lab_us-gaap_FinanceLeasePrincipalPayments_label_en-US" xlink:label="lab_us-gaap_FinanceLeasePrincipalPayments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Principal Payments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeasePrincipalPayments" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeasePrincipalPayments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeasePrincipalPayments" xlink:to="lab_us-gaap_FinanceLeasePrincipalPayments" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_NumberOfSwaps_d74ea36d-ca6a-4f3f-96e8-a232549813b8_terseLabel_en-US" xlink:label="lab_ibp_NumberOfSwaps" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of swaps</link:label>
    <link:label id="lab_ibp_NumberOfSwaps_label_en-US" xlink:label="lab_ibp_NumberOfSwaps" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number Of Swaps</link:label>
    <link:label id="lab_ibp_NumberOfSwaps_documentation_en-US" xlink:label="lab_ibp_NumberOfSwaps" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of swaps.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_NumberOfSwaps" xlink:href="ibp-20221231.xsd#ibp_NumberOfSwaps"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_NumberOfSwaps" xlink:to="lab_ibp_NumberOfSwaps" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis_d8103337-4bdb-4818-bd16-76a495fe61bf_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value Hierarchy and NAV [Axis]</link:label>
    <link:label id="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis_label_en-US" xlink:label="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value Hierarchy and NAV [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CurrentIncomeTaxExpenseBenefit_802eb261-1df3-4e07-aca9-dd2df9f6cd51_totalLabel_en-US" xlink:label="lab_us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current income tax expense (benefit)</link:label>
    <link:label id="lab_us-gaap_CurrentIncomeTaxExpenseBenefit_label_en-US" xlink:label="lab_us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:to="lab_us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesAbstract_7d8cad3a-abfa-4b37-89ad-8c8e275bfc3f_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Liabilities</link:label>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesAbstract_label_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Liabilities, Gross [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesAbstract" xlink:to="lab_us-gaap_DeferredTaxLiabilitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable_d1e9c2b0-c6a8-46c6-9b16-756b838f5892_negatedTerseLabel_en-US" xlink:label="lab_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income tax payable</link:label>
    <link:label id="lab_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable_label_en-US" xlink:label="lab_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Income Tax Payable</link:label>
    <link:label id="lab_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable_documentation_en-US" xlink:label="lab_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Income Tax Payable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable" xlink:href="ibp-20221231.xsd#ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable" xlink:to="lab_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInInventories_f68ed9f9-0f5e-434e-8092-420333761138_negatedLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInInventories" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventories</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInInventories_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInInventories" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Inventories</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInInventories"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInInventories" xlink:to="lab_us-gaap_IncreaseDecreaseInInventories" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_DividendsDeclaredAndPaid1Member_1676ff05-36eb-4ef6-8e38-76ac28a18832_terseLabel_en-US" xlink:label="lab_ibp_DividendsDeclaredAndPaid1Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Dividends Declared And Paid 1</link:label>
    <link:label id="lab_ibp_DividendsDeclaredAndPaid1Member_label_en-US" xlink:label="lab_ibp_DividendsDeclaredAndPaid1Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Dividends Declared And Paid 1 [Member]</link:label>
    <link:label id="lab_ibp_DividendsDeclaredAndPaid1Member_documentation_en-US" xlink:label="lab_ibp_DividendsDeclaredAndPaid1Member" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Dividends Declared And Paid 1</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DividendsDeclaredAndPaid1Member" xlink:href="ibp-20221231.xsd#ibp_DividendsDeclaredAndPaid1Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_DividendsDeclaredAndPaid1Member" xlink:to="lab_ibp_DividendsDeclaredAndPaid1Member" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockSharesOutstanding_7812426d-54f4-4c8a-aea2-8aa40b575012_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock, shares outstanding (in shares)</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesOutstanding_label_en-US" xlink:label="lab_us-gaap_CommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock, Shares, Outstanding</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesOutstanding" xlink:to="lab_us-gaap_CommonStockSharesOutstanding" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_ScheduleOfAccruedInsuranceReservesTableTextBlock_884bc5cf-8302-41de-8834-1962a034287a_terseLabel_en-US" xlink:label="lab_ibp_ScheduleOfAccruedInsuranceReservesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Accrued General Insurance Reserves</link:label>
    <link:label id="lab_ibp_ScheduleOfAccruedInsuranceReservesTableTextBlock_label_en-US" xlink:label="lab_ibp_ScheduleOfAccruedInsuranceReservesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule Of Accrued Insurance Reserves [Table Text Block]</link:label>
    <link:label id="lab_ibp_ScheduleOfAccruedInsuranceReservesTableTextBlock_documentation_en-US" xlink:label="lab_ibp_ScheduleOfAccruedInsuranceReservesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of accrued insurance reserves.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_ScheduleOfAccruedInsuranceReservesTableTextBlock" xlink:href="ibp-20221231.xsd#ibp_ScheduleOfAccruedInsuranceReservesTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_ScheduleOfAccruedInsuranceReservesTableTextBlock" xlink:to="lab_ibp_ScheduleOfAccruedInsuranceReservesTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_Goodwill_f14d8081-8658-4ebe-b503-5645e4062c0c_terseLabel_en-US" xlink:label="lab_us-gaap_Goodwill" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill</link:label>
    <link:label id="lab_us-gaap_Goodwill_d509de30-8abc-4097-a1c9-dfe8983f0fe1_totalLabel_en-US" xlink:label="lab_us-gaap_Goodwill" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill (net)</link:label>
    <link:label id="lab_us-gaap_Goodwill_d82e5394-cc58-48e1-bed0-90c4c3812ea7_verboseLabel_en-US" xlink:label="lab_us-gaap_Goodwill" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill</link:label>
    <link:label id="lab_us-gaap_Goodwill_label_en-US" xlink:label="lab_us-gaap_Goodwill" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Goodwill" xlink:to="lab_us-gaap_Goodwill" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis_ab7b74f5-50a0-4d1d-a826-d9ea4c0de88a_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment, Type [Axis]</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Lived Tangible Asset [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefit_2ab0f915-f752-456c-a0e4-5bfac56e8ced_verboseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income tax provision</link:label>
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefit_6fffc519-5b65-405d-a7b4-8e4708325d33_totalLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total tax expense</link:label>
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefit_923d7ab1-2580-4a8b-9354-27b2b51ed91d_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income tax expense (benefit)</link:label>
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefit_label_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:to="lab_us-gaap_IncomeTaxExpenseBenefit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsValuationAllowance_fac7b802-07e3-48ea-a286-9ca3bb8c2f39_negatedLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsValuationAllowance" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Less: Valuation allowance</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsValuationAllowance_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsValuationAllowance" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Valuation Allowance</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsValuationAllowance" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsValuationAllowance"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsValuationAllowance" xlink:to="lab_us-gaap_DeferredTaxAssetsValuationAllowance" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet_36994649-6923-4599-88f9-e1c83fc04879_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred income taxes</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Income Tax Liabilities, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:to="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_4d3d0ecc-d308-4c6f-8027-dff7a64eaabf_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Hedging Relationship [Axis]</link:label>
    <link:label id="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Hedging Relationship [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xlink:to="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityPublicFloat_cae21d33-1c4f-4336-a707-84619518ab4c_terseLabel_en-US" xlink:label="lab_dei_EntityPublicFloat" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Public Float</link:label>
    <link:label id="lab_dei_EntityPublicFloat_label_en-US" xlink:label="lab_dei_EntityPublicFloat" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Public Float</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityPublicFloat" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityPublicFloat"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityPublicFloat" xlink:to="lab_dei_EntityPublicFloat" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BalanceSheetLocationDomain_881e5ac4-24d0-420a-814e-edbdf40fbd53_terseLabel_en-US" xlink:label="lab_us-gaap_BalanceSheetLocationDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance Sheet Location [Domain]</link:label>
    <link:label id="lab_us-gaap_BalanceSheetLocationDomain_label_en-US" xlink:label="lab_us-gaap_BalanceSheetLocationDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance Sheet Location [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BalanceSheetLocationDomain" xlink:to="lab_us-gaap_BalanceSheetLocationDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_ProceedsFromTerminationOfDerivativeInstruments_94bfa6cc-c5d5-441a-b82b-e7a803c684df_terseLabel_en-US" xlink:label="lab_ibp_ProceedsFromTerminationOfDerivativeInstruments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from termination of interest rate swap agreements</link:label>
    <link:label id="lab_ibp_ProceedsFromTerminationOfDerivativeInstruments_label_en-US" xlink:label="lab_ibp_ProceedsFromTerminationOfDerivativeInstruments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from Termination of Derivative Instruments</link:label>
    <link:label id="lab_ibp_ProceedsFromTerminationOfDerivativeInstruments_documentation_en-US" xlink:label="lab_ibp_ProceedsFromTerminationOfDerivativeInstruments" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from Termination of Derivative Instruments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_ProceedsFromTerminationOfDerivativeInstruments" xlink:href="ibp-20221231.xsd#ibp_ProceedsFromTerminationOfDerivativeInstruments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_ProceedsFromTerminationOfDerivativeInstruments" xlink:to="lab_ibp_ProceedsFromTerminationOfDerivativeInstruments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeAssetStatementOfFinancialPositionExtensibleEnumeration_c2af7be1-cd9d-4bb5-943d-591c2acd03c9_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeAssetStatementOfFinancialPositionExtensibleEnumeration" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative Asset, Statement of Financial Position [Extensible Enumeration]</link:label>
    <link:label id="lab_us-gaap_DerivativeAssetStatementOfFinancialPositionExtensibleEnumeration_label_en-US" xlink:label="lab_us-gaap_DerivativeAssetStatementOfFinancialPositionExtensibleEnumeration" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative Asset, Statement of Financial Position [Extensible Enumeration]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeAssetStatementOfFinancialPositionExtensibleEnumeration" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeAssetStatementOfFinancialPositionExtensibleEnumeration"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeAssetStatementOfFinancialPositionExtensibleEnumeration" xlink:to="lab_us-gaap_DerivativeAssetStatementOfFinancialPositionExtensibleEnumeration" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_WindowBlindsMember_bf0a77e9-3be1-4ce3-8157-01db6bd2e7be_terseLabel_en-US" xlink:label="lab_ibp_WindowBlindsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Window blinds</link:label>
    <link:label id="lab_ibp_WindowBlindsMember_label_en-US" xlink:label="lab_ibp_WindowBlindsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Window Blinds [Member]</link:label>
    <link:label id="lab_ibp_WindowBlindsMember_documentation_en-US" xlink:label="lab_ibp_WindowBlindsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Window Blinds</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_WindowBlindsMember" xlink:href="ibp-20221231.xsd#ibp_WindowBlindsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_WindowBlindsMember" xlink:to="lab_ibp_WindowBlindsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CostOfGoodsAndServicesSold_ecf9e7ea-9d24-44d8-8cb3-b3e712220d0f_terseLabel_en-US" xlink:label="lab_us-gaap_CostOfGoodsAndServicesSold" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost of sales</link:label>
    <link:label id="lab_us-gaap_CostOfGoodsAndServicesSold_label_en-US" xlink:label="lab_us-gaap_CostOfGoodsAndServicesSold" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost of Goods and Services Sold</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfGoodsAndServicesSold" xlink:to="lab_us-gaap_CostOfGoodsAndServicesSold" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross_c4d1e00a-eda8-4513-a6a4-6932c29e4944_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Issuance of common stock awards to employees</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Shares Issued, Value, Share-Based Payment Arrangement, before Forfeiture</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross" xlink:to="lab_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeLiabilities_fcf49629-7284-4427-9e17-f8447b6fae84_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeLiabilities" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative financial instruments</link:label>
    <link:label id="lab_us-gaap_DerivativeLiabilities_label_en-US" xlink:label="lab_us-gaap_DerivativeLiabilities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeLiabilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeLiabilities" xlink:to="lab_us-gaap_DerivativeLiabilities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BilledContractReceivables_3e0341a9-01ac-4544-a687-980e23a090f5_terseLabel_en-US" xlink:label="lab_us-gaap_BilledContractReceivables" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Less: Billings to date</link:label>
    <link:label id="lab_us-gaap_BilledContractReceivables_label_en-US" xlink:label="lab_us-gaap_BilledContractReceivables" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Billed Contracts Receivable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BilledContractReceivables" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BilledContractReceivables"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BilledContractReceivables" xlink:to="lab_us-gaap_BilledContractReceivables" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_PropertyPlantAndEquipmentDepreciationAllocationCategoriesTableTextBlock_d86a1ce6-8b22-4376-9335-cdbc9fa95a2c_terseLabel_en-US" xlink:label="lab_ibp_PropertyPlantAndEquipmentDepreciationAllocationCategoriesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Depreciation and Amortization Expense on Property and Equipment, by Income Statement Category</link:label>
    <link:label id="lab_ibp_PropertyPlantAndEquipmentDepreciationAllocationCategoriesTableTextBlock_label_en-US" xlink:label="lab_ibp_PropertyPlantAndEquipmentDepreciationAllocationCategoriesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property Plant and Equipment Depreciation Allocation Categories [Table Text Block]</link:label>
    <link:label id="lab_ibp_PropertyPlantAndEquipmentDepreciationAllocationCategoriesTableTextBlock_documentation_en-US" xlink:label="lab_ibp_PropertyPlantAndEquipmentDepreciationAllocationCategoriesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property plant and equipment depreciation allocation categories.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_PropertyPlantAndEquipmentDepreciationAllocationCategoriesTableTextBlock" xlink:href="ibp-20221231.xsd#ibp_PropertyPlantAndEquipmentDepreciationAllocationCategoriesTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_PropertyPlantAndEquipmentDepreciationAllocationCategoriesTableTextBlock" xlink:to="lab_ibp_PropertyPlantAndEquipmentDepreciationAllocationCategoriesTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_996b8672-606c-41f3-b156-2edc22abf3b3_terseLabel_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_label_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward" xlink:to="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsReceivableMember_f4688dbc-fd3f-4c79-af72-ac3dee192464_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsReceivableMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable</link:label>
    <link:label id="lab_us-gaap_AccountsReceivableMember_label_en-US" xlink:label="lab_us-gaap_AccountsReceivableMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsReceivableMember" xlink:to="lab_us-gaap_AccountsReceivableMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockValue_bbd0a2c1-7bcf-48f4-88b4-c32918b41a68_verboseLabel_en-US" xlink:label="lab_us-gaap_CommonStockValue" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock; $0.01 par value: 100,000,000 authorized, 33,429,557 and 33,271,659 issued and 28,306,482 and 29,706,401 shares outstanding at December&#160;31, 2022 and 2021, respectively</link:label>
    <link:label id="lab_us-gaap_CommonStockValue_label_en-US" xlink:label="lab_us-gaap_CommonStockValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock, Value, Issued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockValue" xlink:to="lab_us-gaap_CommonStockValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentNameDomain_d89f09d1-1b12-4690-b355-785892da98a1_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Name [Domain]</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentNameDomain_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentNameDomain" xlink:to="lab_us-gaap_DebtInstrumentNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessAcquisitionAcquireeDomain_0ff58a5c-18b5-4ee9-9be7-f259e9ccd42f_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionAcquireeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Acquisition, Acquiree [Domain]</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionAcquireeDomain_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionAcquireeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Acquisition, Acquiree [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="lab_us-gaap_BusinessAcquisitionAcquireeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_DebtRelatedFinancingCost_eb832abc-7138-4807-9b19-28a72c5f31da_terseLabel_en-US" xlink:label="lab_ibp_DebtRelatedFinancingCost" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Costs incurred associated with debt-related financing transactions</link:label>
    <link:label id="lab_ibp_DebtRelatedFinancingCost_label_en-US" xlink:label="lab_ibp_DebtRelatedFinancingCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Related Financing Cost</link:label>
    <link:label id="lab_ibp_DebtRelatedFinancingCost_documentation_en-US" xlink:label="lab_ibp_DebtRelatedFinancingCost" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Related Financing Cost.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DebtRelatedFinancingCost" xlink:href="ibp-20221231.xsd#ibp_DebtRelatedFinancingCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_DebtRelatedFinancingCost" xlink:to="lab_ibp_DebtRelatedFinancingCost" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SeniorNotesMember_bd35a059-1c3d-4e53-b361-8dac8fe15249_terseLabel_en-US" xlink:label="lab_us-gaap_SeniorNotesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Senior Notes</link:label>
    <link:label id="lab_us-gaap_SeniorNotesMember_label_en-US" xlink:label="lab_us-gaap_SeniorNotesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Senior Notes [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SeniorNotesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SeniorNotesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SeniorNotesMember" xlink:to="lab_us-gaap_SeniorNotesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock_a8621fa1-0b3c-4f5c-829a-a29cad65ac32_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Cash Flow Hedges Included in Accumulated Other Comprehensive Income (Loss)</link:label>
    <link:label id="lab_us-gaap_ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Cash Flow Hedges Included in Accumulated Other Comprehensive Income (Loss) [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_4cf0367b-3840-4d64-a97b-1b5d91433954_periodStartLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash and cash equivalents at beginning of period</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_702d41ca-638a-4931-ac9f-978dd4f1cd30_periodEndLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash and cash equivalents at end of period</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_label_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesCurrentAbstract_d545a72e-be7d-441f-9e49-6cee5306f5b6_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current liabilities</link:label>
    <link:label id="lab_us-gaap_LiabilitiesCurrentAbstract_label_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities, Current [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrentAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract" xlink:to="lab_us-gaap_LiabilitiesCurrentAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_e0be31ed-6d1d-4c2e-94ae-73e48b4ea918_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]</link:label>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_label_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:to="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases_521a0182-30bb-48b0-9854-65e12bee7574_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preliminary purchase price</link:label>
    <link:label id="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases_label_en-US" xlink:label="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability, Purchases</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases" xlink:to="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationOtherAdjustments_34eaa384-64f3-4e94-9022-036a357c554a_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other permanent items</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationOtherAdjustments_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Other Adjustments, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationOtherAdjustments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:to="lab_us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseInterestExpense_e4a22812-2d9a-4789-a42f-b057671fdf10_verboseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseInterestExpense" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest on finance lease obligations</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseInterestExpense_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseInterestExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Interest Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseInterestExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseInterestExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseInterestExpense" xlink:to="lab_us-gaap_FinanceLeaseInterestExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RetirementPlanTypeDomain_53c63c77-6f3c-414a-a8d1-7c342ad7d634_terseLabel_en-US" xlink:label="lab_us-gaap_RetirementPlanTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retirement Plan Type [Domain]</link:label>
    <link:label id="lab_us-gaap_RetirementPlanTypeDomain_label_en-US" xlink:label="lab_us-gaap_RetirementPlanTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retirement Plan Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetirementPlanTypeDomain" xlink:to="lab_us-gaap_RetirementPlanTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeStatementLocationDomain_1e1a1043-a1a8-4641-be59-33049de3f292_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement Location [Domain]</link:label>
    <link:label id="lab_us-gaap_IncomeStatementLocationDomain_label_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement Location [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementLocationDomain" xlink:to="lab_us-gaap_IncomeStatementLocationDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_CurrentLeaseLiabilitiesAbstract_97f3159e-28b3-4ca9-b70f-eca7d0e7061e_verboseLabel_en-US" xlink:label="lab_ibp_CurrentLeaseLiabilitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current</link:label>
    <link:label id="lab_ibp_CurrentLeaseLiabilitiesAbstract_label_en-US" xlink:label="lab_ibp_CurrentLeaseLiabilitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current Lease Liabilities [Abstract]</link:label>
    <link:label id="lab_ibp_CurrentLeaseLiabilitiesAbstract_documentation_en-US" xlink:label="lab_ibp_CurrentLeaseLiabilitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Represents current lease liabilities abstract.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CurrentLeaseLiabilitiesAbstract" xlink:href="ibp-20221231.xsd#ibp_CurrentLeaseLiabilitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_CurrentLeaseLiabilitiesAbstract" xlink:to="lab_ibp_CurrentLeaseLiabilitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_AmendmentFlag_44b8d619-f5fa-445b-9949-0f122ac2434e_terseLabel_en-US" xlink:label="lab_dei_AmendmentFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amendment Flag</link:label>
    <link:label id="lab_dei_AmendmentFlag_label_en-US" xlink:label="lab_dei_AmendmentFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amendment Flag</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AmendmentFlag" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AmendmentFlag"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_AmendmentFlag" xlink:to="lab_dei_AmendmentFlag" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetUsefulLife_939fd08e-10db-4fed-aa25-fe586a339b35_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Estimated useful life</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetUsefulLife_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Asset, Useful Life</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseCost_8d1bda07-f8a0-4e46-af55-82b4bf73ad53_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseCost" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease cost</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseCost_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseCost" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseCost" xlink:to="lab_us-gaap_OperatingLeaseCost" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_FinanceLeaseObligationsIncurred_c4127f7a-e145-45f5-97ea-bbec633e0d48_terseLabel_en-US" xlink:label="lab_ibp_FinanceLeaseObligationsIncurred" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property and equipment obtained in exchange for finance lease obligations</link:label>
    <link:label id="lab_ibp_FinanceLeaseObligationsIncurred_label_en-US" xlink:label="lab_ibp_FinanceLeaseObligationsIncurred" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease Obligations Incurred</link:label>
    <link:label id="lab_ibp_FinanceLeaseObligationsIncurred_documentation_en-US" xlink:label="lab_ibp_FinanceLeaseObligationsIncurred" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">The increase during the period in finance lease obligations due to entering into new capital leases.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FinanceLeaseObligationsIncurred" xlink:href="ibp-20221231.xsd#ibp_FinanceLeaseObligationsIncurred"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_FinanceLeaseObligationsIncurred" xlink:to="lab_ibp_FinanceLeaseObligationsIncurred" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities_1054e5cc-da12-4bda-bd68-c026263c91eb_negatedLabel_en-US" xlink:label="lab_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts payable and other current liabilities</link:label>
    <link:label id="lab_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities_label_en-US" xlink:label="lab_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination Recognized Identifiable Assets Acquired And Liabilities Assumed Accounts Payable And Other Current Liabilities</link:label>
    <link:label id="lab_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities_documentation_en-US" xlink:label="lab_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business combination recognized identifiable assets acquired and liabilities assumed accounts payable and other current liabilities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities" xlink:href="ibp-20221231.xsd#ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities" xlink:to="lab_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillAcquiredDuringPeriod_cec7bbd4-94a2-4327-99f8-d71c673b5de7_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillAcquiredDuringPeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business combinations</link:label>
    <link:label id="lab_us-gaap_GoodwillAcquiredDuringPeriod_label_en-US" xlink:label="lab_us-gaap_GoodwillAcquiredDuringPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill, Acquired During Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAcquiredDuringPeriod" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAcquiredDuringPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillAcquiredDuringPeriod" xlink:to="lab_us-gaap_GoodwillAcquiredDuringPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessAcquisitionsProFormaRevenue_2810b3bf-732e-4572-89f0-cf19bc132325_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionsProFormaRevenue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net revenue</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionsProFormaRevenue_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionsProFormaRevenue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Acquisition, Pro Forma Revenue</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionsProFormaRevenue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionsProFormaRevenue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionsProFormaRevenue" xlink:to="lab_us-gaap_BusinessAcquisitionsProFormaRevenue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsOfMergerRelatedCostsFinancingActivities_f1a55445-d237-48f3-934a-29e110374afd_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsOfMergerRelatedCostsFinancingActivities" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Acquisition-related obligations</link:label>
    <link:label id="lab_us-gaap_PaymentsOfMergerRelatedCostsFinancingActivities_label_en-US" xlink:label="lab_us-gaap_PaymentsOfMergerRelatedCostsFinancingActivities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments of Merger Related Costs, Financing Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfMergerRelatedCostsFinancingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfMergerRelatedCostsFinancingActivities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsOfMergerRelatedCostsFinancingActivities" xlink:to="lab_us-gaap_PaymentsOfMergerRelatedCostsFinancingActivities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_51255969-1a0a-4235-97c9-1f0269b8ab3f_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill and Intangible Assets Disclosure [Abstract]</link:label>
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill and Intangible Assets Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_44060cc5-6ca2-40a5-b5f4-96c064d0fc72_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred income tax liabilities</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Deferred Tax Liabilities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherAssetsNoncurrent_ea399c32-c42c-45b2-a278-25ee9c98cc87_verboseLabel_en-US" xlink:label="lab_us-gaap_OtherAssetsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other non-current assets</link:label>
    <link:label id="lab_us-gaap_OtherAssetsNoncurrent_label_en-US" xlink:label="lab_us-gaap_OtherAssetsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Assets, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAssetsNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherAssetsNoncurrent" xlink:to="lab_us-gaap_OtherAssetsNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DepreciationDepletionAndAmortization_678b6a8a-d30a-4ed2-a1d5-d5e1d11c2a53_terseLabel_en-US" xlink:label="lab_us-gaap_DepreciationDepletionAndAmortization" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Depreciation and amortization</link:label>
    <link:label id="lab_us-gaap_DepreciationDepletionAndAmortization_label_en-US" xlink:label="lab_us-gaap_DepreciationDepletionAndAmortization" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Depreciation, Depletion and Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DepreciationDepletionAndAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DepreciationDepletionAndAmortization" xlink:to="lab_us-gaap_DepreciationDepletionAndAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_00ba2c46-0a7b-47a1-adc2-7bac0eb7a54d_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Thereafter</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, after Year Five</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock_d8cb00dd-4401-4232-80a1-d7e45bf71a87_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Common or Related Party Transactions</link:label>
    <link:label id="lab_us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Related Party Transactions [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_a764f233-a6d6-4c53-b054-b453f8ccabc5_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss) [Table]</link:label>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_label_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss) [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_PerformanceBasedRestrictedStockUnitsMember_5b543794-c96e-4aa2-813c-1e3a6b82b0b3_verboseLabel_en-US" xlink:label="lab_ibp_PerformanceBasedRestrictedStockUnitsMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Performance Based Restricted Stock Units</link:label>
    <link:label id="lab_ibp_PerformanceBasedRestrictedStockUnitsMember_d06af062-c2df-443d-b7c3-05dbb2179214_terseLabel_en-US" xlink:label="lab_ibp_PerformanceBasedRestrictedStockUnitsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Performance-Based Restricted Stock Units</link:label>
    <link:label id="lab_ibp_PerformanceBasedRestrictedStockUnitsMember_label_en-US" xlink:label="lab_ibp_PerformanceBasedRestrictedStockUnitsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Performance Based Restricted Stock Units [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_PerformanceBasedRestrictedStockUnitsMember" xlink:href="ibp-20221231.xsd#ibp_PerformanceBasedRestrictedStockUnitsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_PerformanceBasedRestrictedStockUnitsMember" xlink:to="lab_ibp_PerformanceBasedRestrictedStockUnitsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeNumberOfInstrumentsHeld_02026152-2ec6-49de-bf67-ab161a7173cb_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeNumberOfInstrumentsHeld" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of derivatives</link:label>
    <link:label id="lab_us-gaap_DerivativeNumberOfInstrumentsHeld_label_en-US" xlink:label="lab_us-gaap_DerivativeNumberOfInstrumentsHeld" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative, Number of Instruments Held</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeNumberOfInstrumentsHeld" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeNumberOfInstrumentsHeld"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeNumberOfInstrumentsHeld" xlink:to="lab_us-gaap_DerivativeNumberOfInstrumentsHeld" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityIncorporationStateCountryCode_6deeb242-eac8-44d1-874b-e1979f6a3385_terseLabel_en-US" xlink:label="lab_dei_EntityIncorporationStateCountryCode" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Incorporation, State or Country Code</link:label>
    <link:label id="lab_dei_EntityIncorporationStateCountryCode_label_en-US" xlink:label="lab_dei_EntityIncorporationStateCountryCode" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Incorporation, State or Country Code</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityIncorporationStateCountryCode" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityIncorporationStateCountryCode"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityIncorporationStateCountryCode" xlink:to="lab_dei_EntityIncorporationStateCountryCode" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeasePayments_71c5ef7d-802a-4ede-945d-25b88bfdce5c_verboseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeasePayments" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating cash flows for operating leases</link:label>
    <link:label id="lab_us-gaap_OperatingLeasePayments_label_en-US" xlink:label="lab_us-gaap_OperatingLeasePayments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Payments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeasePayments" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeasePayments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeasePayments" xlink:to="lab_us-gaap_OperatingLeasePayments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeStockOptionMember_30adf3dd-b35f-4945-9bf3-155b34c3beb3_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeStockOptionMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Option</link:label>
    <link:label id="lab_us-gaap_EmployeeStockOptionMember_label_en-US" xlink:label="lab_us-gaap_EmployeeStockOptionMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement, Option [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeStockOptionMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeStockOptionMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeStockOptionMember" xlink:to="lab_us-gaap_EmployeeStockOptionMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DividendsDeclaredTableTextBlock_516d5bfb-a2c0-4834-80f8-f5962a763822_terseLabel_en-US" xlink:label="lab_us-gaap_DividendsDeclaredTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Dividends</link:label>
    <link:label id="lab_us-gaap_DividendsDeclaredTableTextBlock_label_en-US" xlink:label="lab_us-gaap_DividendsDeclaredTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Dividends Declared [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsDeclaredTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DividendsDeclaredTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DividendsDeclaredTableTextBlock" xlink:to="lab_us-gaap_DividendsDeclaredTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_bc34fd74-81e6-4504-89f8-6f9ccfe81cc3_terseLabel_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Allowance for doubtful accounts</link:label>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_label_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:to="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GeneralLiabilityMember_5a5ad4bb-a2bf-43da-9982-aef31b8fee8d_terseLabel_en-US" xlink:label="lab_us-gaap_GeneralLiabilityMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">General Liability</link:label>
    <link:label id="lab_us-gaap_GeneralLiabilityMember_label_en-US" xlink:label="lab_us-gaap_GeneralLiabilityMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">General Liability [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeneralLiabilityMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GeneralLiabilityMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GeneralLiabilityMember" xlink:to="lab_us-gaap_GeneralLiabilityMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockSharesAuthorized_77e33b8e-2a1c-46f4-8635-fe8ca6491afc_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock, shares authorized (in shares)</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesAuthorized_label_en-US" xlink:label="lab_us-gaap_CommonStockSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock, Shares Authorized</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesAuthorized" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesAuthorized"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesAuthorized" xlink:to="lab_us-gaap_CommonStockSharesAuthorized" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingExpenses_30920b16-e32f-4722-8969-36d78df90d45_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingExpenses" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Expenses</link:label>
    <link:label id="lab_us-gaap_OperatingExpenses_label_en-US" xlink:label="lab_us-gaap_OperatingExpenses" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Expenses</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingExpenses" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingExpenses"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingExpenses" xlink:to="lab_us-gaap_OperatingExpenses" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_MaximumMember_4b0f0538-c5a2-4820-8d5b-5c49faa18242_terseLabel_en-US" xlink:label="lab_srt_MaximumMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Maximum</link:label>
    <link:label id="lab_srt_MaximumMember_label_en-US" xlink:label="lab_srt_MaximumMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Maximum [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MaximumMember" xlink:to="lab_srt_MaximumMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_c1b4271c-66a7-40a5-85ae-59cde8c396a3_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Business Acquisitions, by Acquisition [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Business Acquisitions, by Acquisition [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_1008f2c5-0872-47bb-b5e7-26f42084fa6a_terseLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash and cash equivalents</link:label>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_label_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash and Cash Equivalents, at Carrying Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:to="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_AssetsAndLiabilitiesLesseeTableTextBlock_fd1e0626-beac-4d60-935d-8579872a8fc3_terseLabel_en-US" xlink:label="lab_ibp_AssetsAndLiabilitiesLesseeTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Lease-Related Assets and Liabilities</link:label>
    <link:label id="lab_ibp_AssetsAndLiabilitiesLesseeTableTextBlock_label_en-US" xlink:label="lab_ibp_AssetsAndLiabilitiesLesseeTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets And Liabilities, Lessee [Table Text Block]</link:label>
    <link:label id="lab_ibp_AssetsAndLiabilitiesLesseeTableTextBlock_documentation_en-US" xlink:label="lab_ibp_AssetsAndLiabilitiesLesseeTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of supplemental balance sheet information related to leases.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_AssetsAndLiabilitiesLesseeTableTextBlock" xlink:href="ibp-20221231.xsd#ibp_AssetsAndLiabilitiesLesseeTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_AssetsAndLiabilitiesLesseeTableTextBlock" xlink:to="lab_ibp_AssetsAndLiabilitiesLesseeTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DesignatedAsHedgingInstrumentMember_fcaf9442-6b59-45a9-906e-4355ac4d32de_terseLabel_en-US" xlink:label="lab_us-gaap_DesignatedAsHedgingInstrumentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Designated as Hedging Instrument</link:label>
    <link:label id="lab_us-gaap_DesignatedAsHedgingInstrumentMember_label_en-US" xlink:label="lab_us-gaap_DesignatedAsHedgingInstrumentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Designated as Hedging Instrument [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DesignatedAsHedgingInstrumentMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DesignatedAsHedgingInstrumentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DesignatedAsHedgingInstrumentMember" xlink:to="lab_us-gaap_DesignatedAsHedgingInstrumentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueAbstract_95b58cc6-7b96-4f38-a1d1-bb18d48b6bf0_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Grant Date Fair Value Per Share</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueAbstract_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Nonvested, Weighted Average Grant Date Fair Value [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueAbstract" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessAcquisitionLineItems_424efb3e-dcb9-4b3d-a898-d3245d37edbb_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Acquisition [Line Items]</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionLineItems_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Acquisition [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems" xlink:to="lab_us-gaap_BusinessAcquisitionLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DividendsPayableLineItems_3e15eb4d-b169-4915-9235-7fda6b8124e5_terseLabel_en-US" xlink:label="lab_us-gaap_DividendsPayableLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Dividends Payable [Line Items]</link:label>
    <link:label id="lab_us-gaap_DividendsPayableLineItems_label_en-US" xlink:label="lab_us-gaap_DividendsPayableLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Dividends Payable [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsPayableLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DividendsPayableLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DividendsPayableLineItems" xlink:to="lab_us-gaap_DividendsPayableLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillOtherIncreaseDecrease_7f2df5fc-288b-4d29-8922-77fc3d875bda_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillOtherIncreaseDecrease" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other additions</link:label>
    <link:label id="lab_us-gaap_GoodwillOtherIncreaseDecrease_label_en-US" xlink:label="lab_us-gaap_GoodwillOtherIncreaseDecrease" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill, Other Increase (Decrease)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillOtherIncreaseDecrease" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillOtherIncreaseDecrease"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillOtherIncreaseDecrease" xlink:to="lab_us-gaap_GoodwillOtherIncreaseDecrease" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock_b3351900-1d06-4d93-a2d2-24c6407800e8_terseLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stockholders' Equity</link:label>
    <link:label id="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stockholders' Equity Note Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:to="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_RelatedPartyOperatingLeasesMember_6417d178-6236-446f-85ef-951a6ff291f7_terseLabel_en-US" xlink:label="lab_ibp_RelatedPartyOperatingLeasesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Related&#160;Party</link:label>
    <link:label id="lab_ibp_RelatedPartyOperatingLeasesMember_label_en-US" xlink:label="lab_ibp_RelatedPartyOperatingLeasesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Related Party Operating Leases [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_RelatedPartyOperatingLeasesMember" xlink:href="ibp-20221231.xsd#ibp_RelatedPartyOperatingLeasesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_RelatedPartyOperatingLeasesMember" xlink:to="lab_ibp_RelatedPartyOperatingLeasesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WorkersCompensationLiabilityCurrent_109466ec-2119-4b81-892c-3626609defaa_terseLabel_en-US" xlink:label="lab_us-gaap_WorkersCompensationLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Included in other current liabilities</link:label>
    <link:label id="lab_us-gaap_WorkersCompensationLiabilityCurrent_label_en-US" xlink:label="lab_us-gaap_WorkersCompensationLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Workers' Compensation Liability, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WorkersCompensationLiabilityCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WorkersCompensationLiabilityCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WorkersCompensationLiabilityCurrent" xlink:to="lab_us-gaap_WorkersCompensationLiabilityCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfMultiemployerPlansTable_ad3db675-f0fd-4ce6-9305-6041bc1466f9_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfMultiemployerPlansTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Multiemployer Plan [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfMultiemployerPlansTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfMultiemployerPlansTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Multiemployer Plan [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfMultiemployerPlansTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfMultiemployerPlansTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfMultiemployerPlansTable" xlink:to="lab_us-gaap_ScheduleOfMultiemployerPlansTable" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness_470d77ec-cf55-4a82-a3a8-b23af18b5ffc_verboseLabel_en-US" xlink:label="lab_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Seller Obligations</link:label>
    <link:label id="lab_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness_010cc6b4-5321-4f8c-99df-1eb241fa8006_terseLabel_en-US" xlink:label="lab_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Less seller obligations</link:label>
    <link:label id="lab_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness_label_en-US" xlink:label="lab_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Seller Obligations In Connection With Acquisition Of Business</link:label>
    <link:label id="lab_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness_documentation_en-US" xlink:label="lab_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">It represents the non cash amount of seller obligations in connection with acquisition of business.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness" xlink:href="ibp-20221231.xsd#ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness" xlink:to="lab_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_CommonStockAwardsMember_6e340306-b7ff-48f6-b1c1-ea84d2e009c9_terseLabel_en-US" xlink:label="lab_ibp_CommonStockAwardsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock Awards</link:label>
    <link:label id="lab_ibp_CommonStockAwardsMember_label_en-US" xlink:label="lab_ibp_CommonStockAwardsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock Awards [Member]</link:label>
    <link:label id="lab_ibp_CommonStockAwardsMember_documentation_en-US" xlink:label="lab_ibp_CommonStockAwardsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock awards.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CommonStockAwardsMember" xlink:href="ibp-20221231.xsd#ibp_CommonStockAwardsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_CommonStockAwardsMember" xlink:to="lab_ibp_CommonStockAwardsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_1955c1f3-1ded-4009-a2ec-8a0c58638269_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share based compensation, recognized tax benefits</link:label>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_label_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement, Expense, Tax Benefit</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccruedInsuranceNoncurrent_3ed272cd-1f9a-417c-9c84-3feb48705841_terseLabel_en-US" xlink:label="lab_us-gaap_AccruedInsuranceNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Included in other long-term liabilities</link:label>
    <link:label id="lab_us-gaap_AccruedInsuranceNoncurrent_label_en-US" xlink:label="lab_us-gaap_AccruedInsuranceNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued Insurance, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedInsuranceNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedInsuranceNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedInsuranceNoncurrent" xlink:to="lab_us-gaap_AccruedInsuranceNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_LeaseLiabilitiesAbstract_6150ae78-6243-4d3d-803e-97fcde8cc6fd_verboseLabel_en-US" xlink:label="lab_ibp_LeaseLiabilitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities</link:label>
    <link:label id="lab_ibp_LeaseLiabilitiesAbstract_label_en-US" xlink:label="lab_ibp_LeaseLiabilitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lease Liabilities [Abstract]</link:label>
    <link:label id="lab_ibp_LeaseLiabilitiesAbstract_documentation_en-US" xlink:label="lab_ibp_LeaseLiabilitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Represents lease liabilities abstract.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_LeaseLiabilitiesAbstract" xlink:href="ibp-20221231.xsd#ibp_LeaseLiabilitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_LeaseLiabilitiesAbstract" xlink:to="lab_ibp_LeaseLiabilitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsReceivable_e8acfa81-24b7-4311-95a5-4c6d0f4c0aa5_negatedLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts receivable</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsReceivable_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Accounts Receivable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:to="lab_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_Security12bTitle_22d34635-02d2-4403-94ef-d561623b4df7_terseLabel_en-US" xlink:label="lab_dei_Security12bTitle" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Title of 12(b) Security</link:label>
    <link:label id="lab_dei_Security12bTitle_label_en-US" xlink:label="lab_dei_Security12bTitle" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Title of 12(b) Security</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_Security12bTitle" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_Security12bTitle"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_Security12bTitle" xlink:to="lab_dei_Security12bTitle" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock_8c70ae23-9123-4acd-8a02-dac592b7ce79_terseLabel_en-US" xlink:label="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Organization</link:label>
    <link:label id="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:to="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_CostsIncurredOnUncompletedContracts_55217cf3-f92a-47fe-8657-224cfe984e89_terseLabel_en-US" xlink:label="lab_ibp_CostsIncurredOnUncompletedContracts" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Costs incurred on uncompleted contracts</link:label>
    <link:label id="lab_ibp_CostsIncurredOnUncompletedContracts_label_en-US" xlink:label="lab_ibp_CostsIncurredOnUncompletedContracts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Costs Incurred on Uncompleted Contracts</link:label>
    <link:label id="lab_ibp_CostsIncurredOnUncompletedContracts_documentation_en-US" xlink:label="lab_ibp_CostsIncurredOnUncompletedContracts" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Costs incurred on uncompleted contracts.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CostsIncurredOnUncompletedContracts" xlink:href="ibp-20221231.xsd#ibp_CostsIncurredOnUncompletedContracts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_CostsIncurredOnUncompletedContracts" xlink:to="lab_ibp_CostsIncurredOnUncompletedContracts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock_7733eb9f-ab36-4a67-aae0-8ecc6383fd21_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Rollforward of Gross Unrecognized Tax Benefits</link:label>
    <link:label id="lab_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Unrecognized Tax Benefits Roll Forward [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds2_c1d870dd-7c08-4b65-a995-75bfb22afb85_terseLabel_en-US" xlink:label="lab_ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Percentage of cash proceeds and its restricted subsidiaries (as a percent)</link:label>
    <link:label id="lab_ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds2_label_en-US" xlink:label="lab_ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Prepayments, Percentage Of Net Cash Proceeds 2</link:label>
    <link:label id="lab_ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds2_documentation_en-US" xlink:label="lab_ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds2" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Prepayments, Percentage Of Net Cash Proceeds 2</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds2" xlink:href="ibp-20221231.xsd#ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds2"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds2" xlink:to="lab_ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds2" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_e199de6f-cdd3-4bad-91d3-d8868394fee2_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Awards</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Nonvested, Number of Shares [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_LeaseAssetsAbstract_24895717-dd41-49a6-8820-69383a7a4031_verboseLabel_en-US" xlink:label="lab_ibp_LeaseAssetsAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets</link:label>
    <link:label id="lab_ibp_LeaseAssetsAbstract_label_en-US" xlink:label="lab_ibp_LeaseAssetsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lease Assets [Abstract]</link:label>
    <link:label id="lab_ibp_LeaseAssetsAbstract_documentation_en-US" xlink:label="lab_ibp_LeaseAssetsAbstract" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Represents lease assets abstract.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_LeaseAssetsAbstract" xlink:href="ibp-20221231.xsd#ibp_LeaseAssetsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_LeaseAssetsAbstract" xlink:to="lab_ibp_LeaseAssetsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventLineItems_c793e512-0bd6-43ab-aa57-8383a1aec51a_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event [Line Items]</link:label>
    <link:label id="lab_us-gaap_SubsequentEventLineItems_label_en-US" xlink:label="lab_us-gaap_SubsequentEventLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventLineItems" xlink:to="lab_us-gaap_SubsequentEventLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_HealthInsuranceExpense_bf0dffa6-4a88-4dd2-9884-b4d373a957af_terseLabel_en-US" xlink:label="lab_ibp_HealthInsuranceExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Healthcare benefit expense, net of employee contributions</link:label>
    <link:label id="lab_ibp_HealthInsuranceExpense_label_en-US" xlink:label="lab_ibp_HealthInsuranceExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Health Insurance Expense</link:label>
    <link:label id="lab_ibp_HealthInsuranceExpense_documentation_en-US" xlink:label="lab_ibp_HealthInsuranceExpense" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Health insurance expense.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_HealthInsuranceExpense" xlink:href="ibp-20221231.xsd#ibp_HealthInsuranceExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_HealthInsuranceExpense" xlink:to="lab_ibp_HealthInsuranceExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SegmentReportingDisclosureTextBlock_5dbd5a57-53bf-46a1-8e07-74e392078d20_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentReportingDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">INFORMATION ON SEGMENTS</link:label>
    <link:label id="lab_us-gaap_SegmentReportingDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_SegmentReportingDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segment Reporting Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingDisclosureTextBlock" xlink:to="lab_us-gaap_SegmentReportingDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_OfficerMember_f1ae46c8-c2c7-469b-9cc6-da233fe6cefb_terseLabel_en-US" xlink:label="lab_srt_OfficerMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Officer</link:label>
    <link:label id="lab_srt_OfficerMember_label_en-US" xlink:label="lab_srt_OfficerMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Officer [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_OfficerMember" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_OfficerMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_OfficerMember" xlink:to="lab_srt_OfficerMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable_ed39764c-eb58-4dfc-ae6f-fe9d0a51309d_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Financing Receivable, Allowance for Credit Loss [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Financing Receivable, Allowance for Credit Loss [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable" xlink:to="lab_us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxLiabilities_f8bac8c8-bb80-453c-a18b-e41a947dd8b5_negatedTotalLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilities" xlink:role="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net deferred tax liabilities</link:label>
    <link:label id="lab_us-gaap_DeferredTaxLiabilities_label_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Liabilities, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilities" xlink:to="lab_us-gaap_DeferredTaxLiabilities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract_82ecac18-bdbc-4415-9cdb-691030c5942c_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">LIABILITIES AND STOCKHOLDERS&#8217; EQUITY</link:label>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract_label_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities and Equity [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_44a2833d-4a35-4c26-b0df-a8bedc0e71ef_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Recurring and Nonrecurring [Table]</link:label>
    <link:label id="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_label_en-US" xlink:label="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Recurring and Nonrecurring [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_ce04e5e3-e79c-4259-b69c-cf4b58d4c4bd_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted average shares outstanding:</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Diluted [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GainLossOnDispositionOfAssets_6aea324a-5c7d-4f89-a6d5-b238e4d72c00_negatedLabel_en-US" xlink:label="lab_us-gaap_GainLossOnDispositionOfAssets" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gain on sale of property and equipment</link:label>
    <link:label id="lab_us-gaap_GainLossOnDispositionOfAssets_label_en-US" xlink:label="lab_us-gaap_GainLossOnDispositionOfAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gain (Loss) on Disposition of Property Plant Equipment, Excluding Oil and Gas Property and Timber Property</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnDispositionOfAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnDispositionOfAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GainLossOnDispositionOfAssets" xlink:to="lab_us-gaap_GainLossOnDispositionOfAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryNet_ebf0cae2-6c96-4101-945c-b6372d1707b7_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventories</link:label>
    <link:label id="lab_us-gaap_InventoryNet_label_en-US" xlink:label="lab_us-gaap_InventoryNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryNet" xlink:to="lab_us-gaap_InventoryNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsPayableCurrent_64b76c13-d98c-46c4-a06a-46dff0cf4f7c_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsPayableCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts payable</link:label>
    <link:label id="lab_us-gaap_AccountsPayableCurrent_label_en-US" xlink:label="lab_us-gaap_AccountsPayableCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Payable, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsPayableCurrent" xlink:to="lab_us-gaap_AccountsPayableCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NumberOfBusinessesAcquired_b1bc2aaa-3011-483d-ac80-ed420f5c960f_terseLabel_en-US" xlink:label="lab_us-gaap_NumberOfBusinessesAcquired" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of businesses acquired</link:label>
    <link:label id="lab_us-gaap_NumberOfBusinessesAcquired_label_en-US" xlink:label="lab_us-gaap_NumberOfBusinessesAcquired" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of Businesses Acquired</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfBusinessesAcquired" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NumberOfBusinessesAcquired"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NumberOfBusinessesAcquired" xlink:to="lab_us-gaap_NumberOfBusinessesAcquired" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentUnamortizedDiscount_9056d8b8-16ff-46d2-a96f-7908a7a0fa4e_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentUnamortizedDiscount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unamortized debt issuance costs</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentUnamortizedDiscount_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentUnamortizedDiscount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Unamortized Discount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentUnamortizedDiscount" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentUnamortizedDiscount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentUnamortizedDiscount" xlink:to="lab_us-gaap_DebtInstrumentUnamortizedDiscount" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_RainGuttersMember_354f9926-481e-4b8d-a010-37a7cd605404_terseLabel_en-US" xlink:label="lab_ibp_RainGuttersMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Rain gutters</link:label>
    <link:label id="lab_ibp_RainGuttersMember_label_en-US" xlink:label="lab_ibp_RainGuttersMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Rain Gutters [Member]</link:label>
    <link:label id="lab_ibp_RainGuttersMember_documentation_en-US" xlink:label="lab_ibp_RainGuttersMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Rain gutters.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_RainGuttersMember" xlink:href="ibp-20221231.xsd#ibp_RainGuttersMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_RainGuttersMember" xlink:to="lab_ibp_RainGuttersMember" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion_5f3297ac-5177-4dbd-bd04-37de3e3de951_totalLabel_en-US" xlink:label="lab_ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segment gross profit</link:label>
    <link:label id="lab_ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion_label_en-US" xlink:label="lab_ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gross Profit, Excluding Depreciation, Amortization And Depletion</link:label>
    <link:label id="lab_ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion_documentation_en-US" xlink:label="lab_ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gross Profit, Excluding Depreciation, Amortization And Depletion</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion" xlink:href="ibp-20221231.xsd#ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion" xlink:to="lab_ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization_79009d19-5d2f-48ca-a9cf-9fec71b55e1b_negatedLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Less: accumulated depreciation and amortization</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant, and Equipment and Finance Lease Right-of-Use Asset, Accumulated Depreciation and Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_aeea7609-bc1a-4cae-8a84-23931a0c7b80_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Basic (in shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Basic</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_ABSMember_b7efd806-ebf2-4f4c-a617-a726ccd6ef11_terseLabel_en-US" xlink:label="lab_ibp_ABSMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">ABS</link:label>
    <link:label id="lab_ibp_ABSMember_label_en-US" xlink:label="lab_ibp_ABSMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">ABS [Member]</link:label>
    <link:label id="lab_ibp_ABSMember_documentation_en-US" xlink:label="lab_ibp_ABSMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">ABS</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_ABSMember" xlink:href="ibp-20221231.xsd#ibp_ABSMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_ABSMember" xlink:to="lab_ibp_ABSMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TrustForBenefitOfEmployeesMember_07d4b7fd-c82a-4a6c-8e91-eecd9c3665ee_terseLabel_en-US" xlink:label="lab_us-gaap_TrustForBenefitOfEmployeesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Board of Directors</link:label>
    <link:label id="lab_us-gaap_TrustForBenefitOfEmployeesMember_label_en-US" xlink:label="lab_us-gaap_TrustForBenefitOfEmployeesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Trust for Benefit of Employees [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TrustForBenefitOfEmployeesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrustForBenefitOfEmployeesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TrustForBenefitOfEmployeesMember" xlink:to="lab_us-gaap_TrustForBenefitOfEmployeesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsReceivableNet_30f6552b-2173-47ed-a52b-3834c19494b4_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsReceivableNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts receivable</link:label>
    <link:label id="lab_us-gaap_AccountsReceivableNet_label_en-US" xlink:label="lab_us-gaap_AccountsReceivableNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable, after Allowance for Credit Loss</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNet" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsReceivableNet" xlink:to="lab_us-gaap_AccountsReceivableNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeNotionalAmount_5b891b62-431f-4257-94ae-6c7246982439_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeNotionalAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Notional amount of derivative instruments</link:label>
    <link:label id="lab_us-gaap_DerivativeNotionalAmount_label_en-US" xlink:label="lab_us-gaap_DerivativeNotionalAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative, Notional Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeNotionalAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeNotionalAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeNotionalAmount" xlink:to="lab_us-gaap_DerivativeNotionalAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PreferredStockValue_2367efa9-be1d-4057-8c76-b968af331d5e_verboseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockValue" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred Stock; $0.01 par value: 5,000,000 authorized and 0 shares issued and outstanding at December&#160;31, 2022 and 2021, respectively</link:label>
    <link:label id="lab_us-gaap_PreferredStockValue_label_en-US" xlink:label="lab_us-gaap_PreferredStockValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred Stock, Value, Issued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockValue" xlink:to="lab_us-gaap_PreferredStockValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestrictedStockMember_516e6d97-5500-4bbc-89c7-764d2bcbb19b_terseLabel_en-US" xlink:label="lab_us-gaap_RestrictedStockMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted Stock</link:label>
    <link:label id="lab_us-gaap_RestrictedStockMember_label_en-US" xlink:label="lab_us-gaap_RestrictedStockMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted Stock [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestrictedStockMember" xlink:to="lab_us-gaap_RestrictedStockMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentLineItems_77b8ccf2-8333-49eb-b992-ffccb20e1611_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment [Line Items]</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentLineItems_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfDebtTableTextBlock_6ea32358-6fc6-4a23-a3a5-10c83c944f81_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfDebtTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Debt</link:label>
    <link:label id="lab_us-gaap_ScheduleOfDebtTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfDebtTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Debt [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDebtTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDebtTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfDebtTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfDebtTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShortTermDebtTypeDomain_544968c0-bfd8-4041-9ee1-1b8dd15a3416_terseLabel_en-US" xlink:label="lab_us-gaap_ShortTermDebtTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Short-term Debt, Type [Domain]</link:label>
    <link:label id="lab_us-gaap_ShortTermDebtTypeDomain_label_en-US" xlink:label="lab_us-gaap_ShortTermDebtTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Short-Term Debt, Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermDebtTypeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShortTermDebtTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShortTermDebtTypeDomain" xlink:to="lab_us-gaap_ShortTermDebtTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GeneralAndAdministrativeExpenseMember_84e2ddb0-91ad-49c7-9dc6-737b4f4e354f_terseLabel_en-US" xlink:label="lab_us-gaap_GeneralAndAdministrativeExpenseMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Administrative</link:label>
    <link:label id="lab_us-gaap_GeneralAndAdministrativeExpenseMember_label_en-US" xlink:label="lab_us-gaap_GeneralAndAdministrativeExpenseMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">General and Administrative Expense [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpenseMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GeneralAndAdministrativeExpenseMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GeneralAndAdministrativeExpenseMember" xlink:to="lab_us-gaap_GeneralAndAdministrativeExpenseMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityWellKnownSeasonedIssuer_2e0d487f-7e0c-4794-8e84-5fa52e687012_terseLabel_en-US" xlink:label="lab_dei_EntityWellKnownSeasonedIssuer" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Well-known Seasoned Issuer</link:label>
    <link:label id="lab_dei_EntityWellKnownSeasonedIssuer_label_en-US" xlink:label="lab_dei_EntityWellKnownSeasonedIssuer" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Well-known Seasoned Issuer</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityWellKnownSeasonedIssuer" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityWellKnownSeasonedIssuer"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityWellKnownSeasonedIssuer" xlink:to="lab_dei_EntityWellKnownSeasonedIssuer" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentTable_221e25a4-abaf-4e0f-b94b-768c6becaa5a_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Long-term Debt Instruments [Table]</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentTable_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Long-Term Debt Instruments [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentTable" xlink:to="lab_us-gaap_DebtInstrumentTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeLeasesPolicyTextBlock_fc010cc2-69e7-4aed-9ae8-29b61c595362_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeLeasesPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leases</link:label>
    <link:label id="lab_us-gaap_LesseeLeasesPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_LesseeLeasesPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Leases [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeasesPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeLeasesPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeLeasesPolicyTextBlock" xlink:to="lab_us-gaap_LesseeLeasesPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueInputsLevel3Member_6ca58681-3dcd-477d-93ca-dc0bd3e89b81_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel3Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Level&#160;3</link:label>
    <link:label id="lab_us-gaap_FairValueInputsLevel3Member_label_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel3Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Inputs, Level 3 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel3Member" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel3Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueInputsLevel3Member" xlink:to="lab_us-gaap_FairValueInputsLevel3Member" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivable_83d16456-c768-4b3d-96a9-610500437188_periodStartLabel_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Beginning balance</link:label>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivable_c54f3d49-1d51-4b27-90f1-d4c294310c8b_periodEndLabel_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Ending balance</link:label>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivable_label_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:to="lab_us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OrderOrProductionBacklogMember_1970b151-71c6-4b60-8d23-2166f5caa5d6_terseLabel_en-US" xlink:label="lab_us-gaap_OrderOrProductionBacklogMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Backlog</link:label>
    <link:label id="lab_us-gaap_OrderOrProductionBacklogMember_label_en-US" xlink:label="lab_us-gaap_OrderOrProductionBacklogMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Order or Production Backlog [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrderOrProductionBacklogMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OrderOrProductionBacklogMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OrderOrProductionBacklogMember" xlink:to="lab_us-gaap_OrderOrProductionBacklogMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationsAbstract_44d43ebf-1753-4fc0-ad35-7c30df73b2dd_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combinations [Abstract]</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationsAbstract_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combinations [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationsAbstract" xlink:to="lab_us-gaap_BusinessCombinationsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_WorkersCompensationExpense_f494ae0c-cd7d-4eee-b7c9-d82b49e8003e_terseLabel_en-US" xlink:label="lab_ibp_WorkersCompensationExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Workers' compensation expense</link:label>
    <link:label id="lab_ibp_WorkersCompensationExpense_label_en-US" xlink:label="lab_ibp_WorkersCompensationExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Workers Compensation Expense</link:label>
    <link:label id="lab_ibp_WorkersCompensationExpense_documentation_en-US" xlink:label="lab_ibp_WorkersCompensationExpense" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">All expenses associated with Worker's Compensation Insurance benefits incurred during the period.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_WorkersCompensationExpense" xlink:href="ibp-20221231.xsd#ibp_WorkersCompensationExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_WorkersCompensationExpense" xlink:to="lab_ibp_WorkersCompensationExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_InterestRateSwapFiveEffectiveDecember312025Member_684fe796-7e55-4a10-a03b-331ac72953b0_terseLabel_en-US" xlink:label="lab_ibp_InterestRateSwapFiveEffectiveDecember312025Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest Rate Swap Five, Effective December 31, 2025</link:label>
    <link:label id="lab_ibp_InterestRateSwapFiveEffectiveDecember312025Member_label_en-US" xlink:label="lab_ibp_InterestRateSwapFiveEffectiveDecember312025Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest Rate Swap Five, Effective December 31, 2025 [Member]</link:label>
    <link:label id="lab_ibp_InterestRateSwapFiveEffectiveDecember312025Member_documentation_en-US" xlink:label="lab_ibp_InterestRateSwapFiveEffectiveDecember312025Member" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest Rate Swap Five, Effective December 31, 2025</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_InterestRateSwapFiveEffectiveDecember312025Member" xlink:href="ibp-20221231.xsd#ibp_InterestRateSwapFiveEffectiveDecember312025Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_InterestRateSwapFiveEffectiveDecember312025Member" xlink:to="lab_ibp_InterestRateSwapFiveEffectiveDecember312025Member" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentTerm_b55d8e0d-8005-4344-8658-4d09b1bd2226_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentTerm" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Term loan facility maturity period (in years)</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentTerm_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentTerm" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTerm" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTerm"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentTerm" xlink:to="lab_us-gaap_DebtInstrumentTerm" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_c7d51a81-0f79-45d5-85d4-bd28b20169d4_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Deferred Tax Asset or Liability</link:label>
    <link:label id="lab_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Deferred Tax Assets and Liabilities [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EurodollarMember_866bc47e-05eb-4316-b15c-dddc5e569a95_terseLabel_en-US" xlink:label="lab_us-gaap_EurodollarMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Eurodollar</link:label>
    <link:label id="lab_us-gaap_EurodollarMember_label_en-US" xlink:label="lab_us-gaap_EurodollarMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Eurodollar [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EurodollarMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EurodollarMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EurodollarMember" xlink:to="lab_us-gaap_EurodollarMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_9725f071-84f0-4454-af19-e5f69f8fc0c8_terseLabel_en-US" xlink:label="lab_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Related Party [Axis]</link:label>
    <link:label id="lab_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_label_en-US" xlink:label="lab_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Related Party [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="lab_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillRollForward_06a29a27-585d-4b61-abaf-4945ada3616f_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_GoodwillRollForward_label_en-US" xlink:label="lab_us-gaap_GoodwillRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillRollForward" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillRollForward" xlink:to="lab_us-gaap_GoodwillRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LandMember_f984d410-1651-40b7-9f1a-a1a4ca716e61_terseLabel_en-US" xlink:label="lab_us-gaap_LandMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Land</link:label>
    <link:label id="lab_us-gaap_LandMember_label_en-US" xlink:label="lab_us-gaap_LandMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Land [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LandMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LandMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LandMember" xlink:to="lab_us-gaap_LandMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_4dde5c27-44b8-4159-8a66-9b0e2c939de2_terseLabel_en-US" xlink:label="lab_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Dilutive effect of outstanding restricted stock awards (in shares)</link:label>
    <link:label id="lab_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_label_en-US" xlink:label="lab_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Incremental Common Shares Attributable to Dilutive Effect of Share-Based Payment Arrangements</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:to="lab_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_f09f0e44-697b-484c-86d9-d9340418b359_terseLabel_en-US" xlink:label="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Organization, Consolidation and Presentation of Financial Statements [Abstract]</link:label>
    <link:label id="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_label_en-US" xlink:label="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Organization, Consolidation and Presentation of Financial Statements [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_9cd44ce8-04b4-479a-acdd-afe16a74cd97_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Acquisitions of businesses, net of cash acquired of $523, $1,707 and $0 in 2022, 2021 and 2020, respectively</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments to Acquire Businesses, Net of Cash Acquired</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:to="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount_40c68890-571d-483c-a498-ea657eb86756_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill acquired expected to be tax deductible</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Acquisition, Goodwill, Expected Tax Deductible Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount" xlink:to="lab_us-gaap_BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueInputsLevel2Member_eb546885-4883-4aab-bd32-89e4ef6668a7_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel2Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Level&#160;2</link:label>
    <link:label id="lab_us-gaap_FairValueInputsLevel2Member_label_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel2Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Inputs, Level 2 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel2Member" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel2Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueInputsLevel2Member" xlink:to="lab_us-gaap_FairValueInputsLevel2Member" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_CurrentFiscalYearEndDate_988dd014-1b24-4789-a11f-5518f3e8e94d_terseLabel_en-US" xlink:label="lab_dei_CurrentFiscalYearEndDate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current Fiscal Year End Date</link:label>
    <link:label id="lab_dei_CurrentFiscalYearEndDate_label_en-US" xlink:label="lab_dei_CurrentFiscalYearEndDate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current Fiscal Year End Date</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CurrentFiscalYearEndDate" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CurrentFiscalYearEndDate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CurrentFiscalYearEndDate" xlink:to="lab_dei_CurrentFiscalYearEndDate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_6d33b91e-406d-401d-acac-4fc6d6de87a4_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other current assets</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Other</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems_493e5826-a98a-46f7-91ff-a5a28a9baffb_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets [Line Items]</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationAwardTrancheTwoMember_8bd06995-d160-463e-8422-2c05b4b4dc1e_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationAwardTrancheTwoMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Tranche Two</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationAwardTrancheTwoMember_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationAwardTrancheTwoMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement, Tranche Two [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationAwardTrancheTwoMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationAwardTrancheTwoMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationAwardTrancheTwoMember" xlink:to="lab_us-gaap_ShareBasedCompensationAwardTrancheTwoMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_c5c7857b-e08e-4b09-9fde-9e343b99273e_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_label_en-US" xlink:label="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward" xlink:to="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_974b8d46-011c-4f94-bda7-14ca6ad488eb_terseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based compensation expense</link:label>
    <link:label id="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_label_en-US" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">APIC, Share-Based Payment Arrangement, Increase for Cost Recognition</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:to="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskByTypeAxis_143c2269-54fc-45e8-85b2-8b412dfdc3d7_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskByTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Type [Axis]</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskByTypeAxis_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskByTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis" xlink:to="lab_us-gaap_ConcentrationRiskByTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesCurrent_f49b4fb6-cc8f-4887-a875-69c4f6d5f29d_totalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total current liabilities</link:label>
    <link:label id="lab_us-gaap_LiabilitiesCurrent_label_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesCurrent" xlink:to="lab_us-gaap_LiabilitiesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CustomerConcentrationRiskMember_499b7766-923e-4faa-ba69-85bfbf861df4_terseLabel_en-US" xlink:label="lab_us-gaap_CustomerConcentrationRiskMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer Concentration Risk</link:label>
    <link:label id="lab_us-gaap_CustomerConcentrationRiskMember_label_en-US" xlink:label="lab_us-gaap_CustomerConcentrationRiskMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer Concentration Risk [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerConcentrationRiskMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerConcentrationRiskMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CustomerConcentrationRiskMember" xlink:to="lab_us-gaap_CustomerConcentrationRiskMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate_476877fd-7935-4d5f-9507-1df11454a139_terseLabel_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unrecognized tax benefit that would affect the effective tax rate</link:label>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate_label_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unrecognized Tax Benefits that Would Impact Effective Tax Rate</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" xlink:to="lab_us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligation_9a6e3c38-e21c-4aab-9444-ac523c6b9738_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Transaction price allocated to uncompleted contracts</link:label>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligation_label_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue, Remaining Performance Obligation, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligation" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueRemainingPerformanceObligation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligation" xlink:to="lab_us-gaap_RevenueRemainingPerformanceObligation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerMember_28ad9403-6cf3-4b87-8ba6-ab599b496840_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue from Contract with Customer Benchmark</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerMember_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue from Contract with Customer Benchmark [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerMember" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1_ab9f222e-9a3f-43ed-be15-88c5096ced33_terseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance leases (in years)</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Weighted Average Remaining Lease Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1" xlink:to="lab_us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueDisclosuresAbstract_1a131e65-2782-4c75-8962-6fb1568e4e87_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value Disclosures [Abstract]</link:label>
    <link:label id="lab_us-gaap_FairValueDisclosuresAbstract_label_en-US" xlink:label="lab_us-gaap_FairValueDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value Disclosures [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueDisclosuresAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract" xlink:to="lab_us-gaap_FairValueDisclosuresAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_UnrecognizedTaxBenefitsNetOfIncomeTaxPenaltiesAndInterestExpense_35336418-d3f2-4ae6-9eef-43c3e6c022c4_terseLabel_en-US" xlink:label="lab_ibp_UnrecognizedTaxBenefitsNetOfIncomeTaxPenaltiesAndInterestExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Decrease in unrecognized tax benefits, net of penalties and interest</link:label>
    <link:label id="lab_ibp_UnrecognizedTaxBenefitsNetOfIncomeTaxPenaltiesAndInterestExpense_label_en-US" xlink:label="lab_ibp_UnrecognizedTaxBenefitsNetOfIncomeTaxPenaltiesAndInterestExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unrecognized Tax Benefits Net Of Income Tax Penalties And Interest Expense</link:label>
    <link:label id="lab_ibp_UnrecognizedTaxBenefitsNetOfIncomeTaxPenaltiesAndInterestExpense_documentation_en-US" xlink:label="lab_ibp_UnrecognizedTaxBenefitsNetOfIncomeTaxPenaltiesAndInterestExpense" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unrecognized tax benefits net of income tax penalties and interest expense.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_UnrecognizedTaxBenefitsNetOfIncomeTaxPenaltiesAndInterestExpense" xlink:href="ibp-20221231.xsd#ibp_UnrecognizedTaxBenefitsNetOfIncomeTaxPenaltiesAndInterestExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_UnrecognizedTaxBenefitsNetOfIncomeTaxPenaltiesAndInterestExpense" xlink:to="lab_ibp_UnrecognizedTaxBenefitsNetOfIncomeTaxPenaltiesAndInterestExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_dd5dea48-3ab2-45ab-ab6e-e23bf0b95ae5_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Remaining borrowing availability</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility, Remaining Borrowing Capacity</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:to="lab_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_a98442e4-7b74-4c8c-8957-c0c039a8886f_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative Instruments and Hedging Activities Disclosure [Abstract]</link:label>
    <link:label id="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative Instruments and Hedging Activities Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:to="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeInstrumentsGainLossReclassificationFromAccumulatedOCIToIncomeEstimatedNetAmountToBeTransferred_5a1384e4-78fb-46ae-966b-d71410489f2f_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossReclassificationFromAccumulatedOCIToIncomeEstimatedNetAmountToBeTransferred" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reclassification from accumulated other comprehensive income to interest expense</link:label>
    <link:label id="lab_us-gaap_DerivativeInstrumentsGainLossReclassificationFromAccumulatedOCIToIncomeEstimatedNetAmountToBeTransferred_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossReclassificationFromAccumulatedOCIToIncomeEstimatedNetAmountToBeTransferred" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative Instruments, Gain (Loss) Reclassification from Accumulated OCI to Income, Estimated Net Amount to be Transferred</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossReclassificationFromAccumulatedOCIToIncomeEstimatedNetAmountToBeTransferred" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsGainLossReclassificationFromAccumulatedOCIToIncomeEstimatedNetAmountToBeTransferred"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossReclassificationFromAccumulatedOCIToIncomeEstimatedNetAmountToBeTransferred" xlink:to="lab_us-gaap_DerivativeInstrumentsGainLossReclassificationFromAccumulatedOCIToIncomeEstimatedNetAmountToBeTransferred" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds_08dc8c81-1a9f-4909-917e-f5d268891060_terseLabel_en-US" xlink:label="lab_ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Step down percentage (as a percent)</link:label>
    <link:label id="lab_ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds_label_en-US" xlink:label="lab_ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Prepayments, Step Down Percentage Of Net Cash Proceeds</link:label>
    <link:label id="lab_ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds_documentation_en-US" xlink:label="lab_ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Prepayments, Step Down Percentage Of Net Cash Proceeds</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds" xlink:href="ibp-20221231.xsd#ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds" xlink:to="lab_ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_LineOfCreditFacilityAccordionFeatureIncreaseLimit_ed703d3b-9662-4dab-8664-90c8f5545a21_terseLabel_en-US" xlink:label="lab_ibp_LineOfCreditFacilityAccordionFeatureIncreaseLimit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line Of Credit Facility, Accordion Feature, Increase Limit</link:label>
    <link:label id="lab_ibp_LineOfCreditFacilityAccordionFeatureIncreaseLimit_label_en-US" xlink:label="lab_ibp_LineOfCreditFacilityAccordionFeatureIncreaseLimit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line Of Credit Facility, Accordion Feature, Increase Limit</link:label>
    <link:label id="lab_ibp_LineOfCreditFacilityAccordionFeatureIncreaseLimit_documentation_en-US" xlink:label="lab_ibp_LineOfCreditFacilityAccordionFeatureIncreaseLimit" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line Of Credit Facility, Accordion Feature, Increase Limit</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_LineOfCreditFacilityAccordionFeatureIncreaseLimit" xlink:href="ibp-20221231.xsd#ibp_LineOfCreditFacilityAccordionFeatureIncreaseLimit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_LineOfCreditFacilityAccordionFeatureIncreaseLimit" xlink:to="lab_ibp_LineOfCreditFacilityAccordionFeatureIncreaseLimit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CreditFacilityAxis_1aaaa508-473a-43e9-975b-abc480ca4ae8_terseLabel_en-US" xlink:label="lab_us-gaap_CreditFacilityAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Credit Facility [Axis]</link:label>
    <link:label id="lab_us-gaap_CreditFacilityAxis_label_en-US" xlink:label="lab_us-gaap_CreditFacilityAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Credit Facility [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CreditFacilityAxis" xlink:to="lab_us-gaap_CreditFacilityAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_IncrementalRevolvingCreditFacilityMember_80f1a268-8c6c-4d6e-be95-034ae2f44943_terseLabel_en-US" xlink:label="lab_ibp_IncrementalRevolvingCreditFacilityMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Incremental Revolving Credit Facility</link:label>
    <link:label id="lab_ibp_IncrementalRevolvingCreditFacilityMember_label_en-US" xlink:label="lab_ibp_IncrementalRevolvingCreditFacilityMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Incremental Revolving Credit Facility [Member]</link:label>
    <link:label id="lab_ibp_IncrementalRevolvingCreditFacilityMember_documentation_en-US" xlink:label="lab_ibp_IncrementalRevolvingCreditFacilityMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Incremental Revolving Credit Facility Member.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_IncrementalRevolvingCreditFacilityMember" xlink:href="ibp-20221231.xsd#ibp_IncrementalRevolvingCreditFacilityMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_IncrementalRevolvingCreditFacilityMember" xlink:to="lab_ibp_IncrementalRevolvingCreditFacilityMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EquityAbstract_ec0a55d9-7509-43c0-939e-5df9369aac48_terseLabel_en-US" xlink:label="lab_us-gaap_EquityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity [Abstract]</link:label>
    <link:label id="lab_us-gaap_EquityAbstract_label_en-US" xlink:label="lab_us-gaap_EquityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquityAbstract" xlink:to="lab_us-gaap_EquityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventTable_19b4e55f-f210-4877-a86c-8b9936a2f78f_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event [Table]</link:label>
    <link:label id="lab_us-gaap_SubsequentEventTable_label_en-US" xlink:label="lab_us-gaap_SubsequentEventTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventTable" xlink:to="lab_us-gaap_SubsequentEventTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_8188cde1-eea8-46b6-b385-dd83ff389a8a_negatedLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vested (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_ProductInstallationMember_e19ad652-0db0-4a54-8c25-71a83845ebae_terseLabel_en-US" xlink:label="lab_ibp_ProductInstallationMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net revenues, Installation</link:label>
    <link:label id="lab_ibp_ProductInstallationMember_label_en-US" xlink:label="lab_ibp_ProductInstallationMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product Installation [Member]</link:label>
    <link:label id="lab_ibp_ProductInstallationMember_documentation_en-US" xlink:label="lab_ibp_ProductInstallationMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product Installation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_ProductInstallationMember" xlink:href="ibp-20221231.xsd#ibp_ProductInstallationMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_ProductInstallationMember" xlink:to="lab_ibp_ProductInstallationMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityTaxIdentificationNumber_4c10c398-7298-49b4-91dc-124386ba338f_terseLabel_en-US" xlink:label="lab_dei_EntityTaxIdentificationNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Tax Identification Number</link:label>
    <link:label id="lab_dei_EntityTaxIdentificationNumber_label_en-US" xlink:label="lab_dei_EntityTaxIdentificationNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Tax Identification Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityTaxIdentificationNumber" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityTaxIdentificationNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityTaxIdentificationNumber" xlink:to="lab_dei_EntityTaxIdentificationNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_7d800c24-45ac-42f1-a191-8edbefb8d71e_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock shares authorized (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Authorized</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock_4c87c55c-9ebb-4e6d-a595-673319540b69_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary of Equity-Based Awards for Employees</link:label>
    <link:label id="lab_us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Nonvested Share Activity [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember_7174cfad-0b33-46c3-9322-8a0efcdc3851_verboseLabel_en-US" xlink:label="lab_ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">5.75% Senior Notes Due 2028</link:label>
    <link:label id="lab_ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember_label_en-US" xlink:label="lab_ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Five Point Seven Five Percentage Senior Notes Due Two Thousand Twenty Eight [Member]</link:label>
    <link:label id="lab_ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember_documentation_en-US" xlink:label="lab_ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Five Point Seven Five Percentage Senior Notes Due Two Thousand Twenty Eight Member.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember" xlink:href="ibp-20221231.xsd#ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember" xlink:to="lab_ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeFixedInterestRate_dfce87b2-7bed-46c9-be19-8cac912dcc0b_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeFixedInterestRate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest rate of derivative instruments</link:label>
    <link:label id="lab_us-gaap_DerivativeFixedInterestRate_label_en-US" xlink:label="lab_us-gaap_DerivativeFixedInterestRate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative, Fixed Interest Rate</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeFixedInterestRate" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeFixedInterestRate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeFixedInterestRate" xlink:to="lab_us-gaap_DerivativeFixedInterestRate" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_AuditorInformationAbstract_label_en-US" xlink:label="lab_ibp_AuditorInformationAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Auditor Information [Abstract]</link:label>
    <link:label id="lab_ibp_AuditorInformationAbstract_documentation_en-US" xlink:label="lab_ibp_AuditorInformationAbstract" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Auditor Information</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_AuditorInformationAbstract" xlink:href="ibp-20221231.xsd#ibp_AuditorInformationAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_AuditorInformationAbstract" xlink:to="lab_ibp_AuditorInformationAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueRecurringBasisUnobservableInputReconciliationLiabilityGainLossStatementOfIncomeExtensibleList_5e45ff30-bf0c-4cd7-b1c2-ff51bea5cf6e_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueRecurringBasisUnobservableInputReconciliationLiabilityGainLossStatementOfIncomeExtensibleList" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Liability, Recurring Basis, Unobservable Input Reconciliation, Gain (Loss), Statement of Income or Comprehensive Income [Extensible Enumeration]</link:label>
    <link:label id="lab_us-gaap_FairValueRecurringBasisUnobservableInputReconciliationLiabilityGainLossStatementOfIncomeExtensibleList_label_en-US" xlink:label="lab_us-gaap_FairValueRecurringBasisUnobservableInputReconciliationLiabilityGainLossStatementOfIncomeExtensibleList" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Liability, Recurring Basis, Unobservable Input Reconciliation, Gain (Loss), Statement of Income or Comprehensive Income [Extensible Enumeration]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueRecurringBasisUnobservableInputReconciliationLiabilityGainLossStatementOfIncomeExtensibleList" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueRecurringBasisUnobservableInputReconciliationLiabilityGainLossStatementOfIncomeExtensibleList"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueRecurringBasisUnobservableInputReconciliationLiabilityGainLossStatementOfIncomeExtensibleList" xlink:to="lab_us-gaap_FairValueRecurringBasisUnobservableInputReconciliationLiabilityGainLossStatementOfIncomeExtensibleList" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_543f6373-dba3-462f-9b5a-23a63f4707e4_terseLabel_en-US" xlink:label="lab_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock surrendered by employees (in shares)</link:label>
    <link:label id="lab_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_label_en-US" xlink:label="lab_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement, Shares Withheld for Tax Withholding Obligation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:to="lab_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TypeAndTierIdentifierDomain_f3c80ebc-6f8e-4a05-a38b-a80bfc6c59a5_terseLabel_en-US" xlink:label="lab_us-gaap_TypeAndTierIdentifierDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Type and Tier Identifier [Domain]</link:label>
    <link:label id="lab_us-gaap_TypeAndTierIdentifierDomain_label_en-US" xlink:label="lab_us-gaap_TypeAndTierIdentifierDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Type and Tier Identifier [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TypeAndTierIdentifierDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeAndTierIdentifierDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TypeAndTierIdentifierDomain" xlink:to="lab_us-gaap_TypeAndTierIdentifierDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_CostAndEstimatedEarningsUnderOverBillingsNet_d8c18406-5ff7-450b-8acc-6242d206d4ad_terseLabel_en-US" xlink:label="lab_ibp_CostAndEstimatedEarningsUnderOverBillingsNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net under billings</link:label>
    <link:label id="lab_ibp_CostAndEstimatedEarningsUnderOverBillingsNet_54bdaa3f-6ab7-4ca4-a044-edef8a900ed9_totalLabel_en-US" xlink:label="lab_ibp_CostAndEstimatedEarningsUnderOverBillingsNet" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net under billings</link:label>
    <link:label id="lab_ibp_CostAndEstimatedEarningsUnderOverBillingsNet_label_en-US" xlink:label="lab_ibp_CostAndEstimatedEarningsUnderOverBillingsNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost and Estimated Earnings Under Over Billings Net</link:label>
    <link:label id="lab_ibp_CostAndEstimatedEarningsUnderOverBillingsNet_documentation_en-US" xlink:label="lab_ibp_CostAndEstimatedEarningsUnderOverBillingsNet" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost and estimated earnings under or over billings net.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CostAndEstimatedEarningsUnderOverBillingsNet" xlink:href="ibp-20221231.xsd#ibp_CostAndEstimatedEarningsUnderOverBillingsNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_CostAndEstimatedEarningsUnderOverBillingsNet" xlink:to="lab_ibp_CostAndEstimatedEarningsUnderOverBillingsNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_ea9bf690-daf7-41c8-aa86-58abde5efeeb_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reconciliation Between Effective Tax Rate on Net Income (Loss) and Federal Statutory Tax Rate</link:label>
    <link:label id="lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Effective Income Tax Rate Reconciliation [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityAccretionExpense_d9fbb2bc-2fc8-4f4a-9e49-a92744947ee9_terseLabel_en-US" xlink:label="lab_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityAccretionExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accretion in value</link:label>
    <link:label id="lab_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityAccretionExpense_label_en-US" xlink:label="lab_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityAccretionExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value Measurement With Unobservable Inputs Reconciliation Recurring Basis Liability Accretion Expense</link:label>
    <link:label id="lab_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityAccretionExpense_documentation_en-US" xlink:label="lab_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityAccretionExpense" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair value measurement with unobservable inputs reconciliation recurring basis liability accretion expense.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityAccretionExpense" xlink:href="ibp-20221231.xsd#ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityAccretionExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityAccretionExpense" xlink:to="lab_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityAccretionExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_e545a081-e35a-43b7-b425-7b0b759aa652_totalLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net change in cash and cash equivalents</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_label_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_8128c30f-d0b6-43b8-af34-1510b953dd76_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">State income taxes, net of federal benefit</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:to="lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment_47fe7c27-b3d1-4c8f-9261-94e5f92ac5aa_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property and equipment</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Property, Plant and Equipment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment" xlink:to="lab_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityCentralIndexKey_01813c16-1aeb-4026-b8a1-f024da2cc8de_terseLabel_en-US" xlink:label="lab_dei_EntityCentralIndexKey" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Central Index Key</link:label>
    <link:label id="lab_dei_EntityCentralIndexKey_label_en-US" xlink:label="lab_dei_EntityCentralIndexKey" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Central Index Key</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCentralIndexKey" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCentralIndexKey"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCentralIndexKey" xlink:to="lab_dei_EntityCentralIndexKey" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_5f3c040d-3802-4650-ac65-5944439b869c_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets by Major Class [Axis]</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets by Major Class [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_dc80278e-44ec-4506-985e-a0fadf7b0fd2_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationConsiderationTransferred1_cd60fddd-8d14-4f26-9f57-5b23e33218b4_totalLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationConsiderationTransferred1" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total Purchase Price</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationConsiderationTransferred1_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationConsiderationTransferred1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Consideration Transferred</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferred1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationConsiderationTransferred1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationConsiderationTransferred1" xlink:to="lab_us-gaap_BusinessCombinationConsiderationTransferred1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskCreditRisk_25d0d62a-c704-49b2-921f-b64feb840e7c_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskCreditRisk" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration of Credit Risk</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskCreditRisk_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskCreditRisk" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk, Credit Risk, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskCreditRisk" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskCreditRisk"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskCreditRisk" xlink:to="lab_us-gaap_ConcentrationRiskCreditRisk" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_CityAreaCode_9cd5c15b-f5cd-4bc8-8fea-bc95cfb33b92_terseLabel_en-US" xlink:label="lab_dei_CityAreaCode" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">City Area Code</link:label>
    <link:label id="lab_dei_CityAreaCode_label_en-US" xlink:label="lab_dei_CityAreaCode" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">City Area Code</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CityAreaCode" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CityAreaCode"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CityAreaCode" xlink:to="lab_dei_CityAreaCode" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsAbstract_172dbb27-bb02-4521-9e96-b98df8f344f4_terseLabel_en-US" xlink:label="lab_us-gaap_AssetsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">ASSETS</link:label>
    <link:label id="lab_us-gaap_AssetsAbstract_label_en-US" xlink:label="lab_us-gaap_AssetsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsAbstract" xlink:to="lab_us-gaap_AssetsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_RestatementAdjustmentMember_61bfab8f-d404-47b6-9fa8-5c441730fb30_terseLabel_en-US" xlink:label="lab_srt_RestatementAdjustmentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Adjustment</link:label>
    <link:label id="lab_srt_RestatementAdjustmentMember_label_en-US" xlink:label="lab_srt_RestatementAdjustmentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revision of Prior Period, Adjustment [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementAdjustmentMember" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementAdjustmentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RestatementAdjustmentMember" xlink:to="lab_srt_RestatementAdjustmentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_CommercialMember_9ea9686d-d55f-4c1c-aa74-fa616a385745_terseLabel_en-US" xlink:label="lab_ibp_CommercialMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commercial</link:label>
    <link:label id="lab_ibp_CommercialMember_label_en-US" xlink:label="lab_ibp_CommercialMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commercial [Member]</link:label>
    <link:label id="lab_ibp_CommercialMember_documentation_en-US" xlink:label="lab_ibp_CommercialMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commercial.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CommercialMember" xlink:href="ibp-20221231.xsd#ibp_CommercialMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_CommercialMember" xlink:to="lab_ibp_CommercialMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_6f7b4615-d62f-4173-a688-c0c58e035e41_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2023</link:label>
    <link:label id="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_label_en-US" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Term Debt, Maturity, Year One</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:to="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensation_02b7a495-25bd-43cd-bd24-3314a37d272b_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Noncash stock compensation</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensation_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement, Noncash Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensation" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensation" xlink:to="lab_us-gaap_ShareBasedCompensation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_2fa4433c-6390-486f-9a46-d4da73a3ffb9_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Granted (in USD per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_VariableRateAxis_3dfa0614-23ff-4734-bdd5-ce5f7f7b4aaa_terseLabel_en-US" xlink:label="lab_us-gaap_VariableRateAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Variable Rate [Axis]</link:label>
    <link:label id="lab_us-gaap_VariableRateAxis_label_en-US" xlink:label="lab_us-gaap_VariableRateAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Variable Rate [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_VariableRateAxis" xlink:to="lab_us-gaap_VariableRateAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherLiabilitiesNoncurrent_668127b6-56ee-4f8e-bb79-3794a4f54b18_terseLabel_en-US" xlink:label="lab_us-gaap_OtherLiabilitiesNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other long-term liabilities</link:label>
    <link:label id="lab_us-gaap_OtherLiabilitiesNoncurrent_label_en-US" xlink:label="lab_us-gaap_OtherLiabilitiesNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Liabilities, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherLiabilitiesNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherLiabilitiesNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherLiabilitiesNoncurrent" xlink:to="lab_us-gaap_OtherLiabilitiesNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOtherOperatingLiabilities_56f409a1-83a4-46e4-b72a-f302bb2a907e_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherOperatingLiabilities" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other liabilities</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOtherOperatingLiabilities_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherOperatingLiabilities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Other Operating Liabilities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOtherOperatingLiabilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInOtherOperatingLiabilities" xlink:to="lab_us-gaap_IncreaseDecreaseInOtherOperatingLiabilities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_a6d5f38d-c201-4908-81a5-41d4f3b5ed1f_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Purchases of property and equipment</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments to Acquire Property, Plant, and Equipment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset_5bf67471-8ff1-4f22-a8b3-1f088c6364bb_terseLabel_en-US" xlink:label="lab_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease right-of-use asset</link:label>
    <link:label id="lab_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset_label_en-US" xlink:label="lab_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired And Liabilities Assumed, Operating Lease, Right-Of-Use Asset</link:label>
    <link:label id="lab_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset_documentation_en-US" xlink:label="lab_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired And Liabilities Assumed, Operating Lease, Right-Of-Use Asset</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" xlink:href="ibp-20221231.xsd#ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" xlink:to="lab_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_6711ff1f-e28c-4ac8-a364-f569af2a7400_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2023</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, Year One</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive_4c48d855-67c4-495b-a37b-ad233c9f3554_terseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Thereafter</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Liability, to be Paid, after Year Five</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive" xlink:to="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_65b7b52a-ee83-4214-a19b-e999624d162e_verboseLabel_en-US" xlink:label="lab_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Right-of-use assets obtained in exchange for operating lease obligations</link:label>
    <link:label id="lab_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_label_en-US" xlink:label="lab_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Right-of-Use Asset Obtained in Exchange for Operating Lease Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:to="lab_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract_d9f6cb0b-c96f-41b8-ad04-b290b4a5c677_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amount</link:label>
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract_label_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Expense (Benefit), Effective Income Tax Rate Reconciliation, Amount [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract" xlink:to="lab_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_NameOfMajorCustomerDomain_9579363c-81b0-4725-9879-46992cd2190b_terseLabel_en-US" xlink:label="lab_srt_NameOfMajorCustomerDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer [Domain]</link:label>
    <link:label id="lab_srt_NameOfMajorCustomerDomain_label_en-US" xlink:label="lab_srt_NameOfMajorCustomerDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_NameOfMajorCustomerDomain" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_NameOfMajorCustomerDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_NameOfMajorCustomerDomain" xlink:to="lab_srt_NameOfMajorCustomerDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent_e795a9c3-04e2-437d-9a1c-be0f262e7930_terseLabel_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other permanent items</link:label>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent_label_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Other Reconciling Items, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax_16d2ffa1-0186-4059-86d2-a351691e74b9_terseLabel_en-US" xlink:label="lab_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reclassification of realized net losses to earnings</link:label>
    <link:label id="lab_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax_label_en-US" xlink:label="lab_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reclassification from Accumulated Other Comprehensive Income, Current Period, Net of Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" xlink:to="lab_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_24c80624-deee-4c60-8613-ed88512fd899_totalLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total minimum lease payments</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProfitLoss_fb5a4166-cc86-4122-874c-5e29a28cac89_terseLabel_en-US" xlink:label="lab_us-gaap_ProfitLoss" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net income</link:label>
    <link:label id="lab_us-gaap_ProfitLoss_label_en-US" xlink:label="lab_us-gaap_ProfitLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Income (Loss), Including Portion Attributable to Noncontrolling Interest</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProfitLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProfitLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProfitLoss" xlink:to="lab_us-gaap_ProfitLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressPostalZipCode_710b1db7-76e8-43e1-82d7-1d57840e188f_terseLabel_en-US" xlink:label="lab_dei_EntityAddressPostalZipCode" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, Postal Zip Code</link:label>
    <link:label id="lab_dei_EntityAddressPostalZipCode_label_en-US" xlink:label="lab_dei_EntityAddressPostalZipCode" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, Postal Zip Code</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressPostalZipCode" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressPostalZipCode"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressPostalZipCode" xlink:to="lab_dei_EntityAddressPostalZipCode" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_InsulationMember_a770a2f4-a621-4576-825b-8ee243c33c77_terseLabel_en-US" xlink:label="lab_ibp_InsulationMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Insulation</link:label>
    <link:label id="lab_ibp_InsulationMember_label_en-US" xlink:label="lab_ibp_InsulationMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Insulation [Member]</link:label>
    <link:label id="lab_ibp_InsulationMember_documentation_en-US" xlink:label="lab_ibp_InsulationMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Insulation.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_InsulationMember" xlink:href="ibp-20221231.xsd#ibp_InsulationMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_InsulationMember" xlink:to="lab_ibp_InsulationMember" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_AblCreditAgreementMember_654d1932-c5ef-4ebf-866e-15aa61f88b20_terseLabel_en-US" xlink:label="lab_ibp_AblCreditAgreementMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">ABL Credit Agreement</link:label>
    <link:label id="lab_ibp_AblCreditAgreementMember_label_en-US" xlink:label="lab_ibp_AblCreditAgreementMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">ABL Credit Agreement [Member]</link:label>
    <link:label id="lab_ibp_AblCreditAgreementMember_documentation_en-US" xlink:label="lab_ibp_AblCreditAgreementMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">ABL credit agreement.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_AblCreditAgreementMember" xlink:href="ibp-20221231.xsd#ibp_AblCreditAgreementMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_AblCreditAgreementMember" xlink:to="lab_ibp_AblCreditAgreementMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_ad812364-dbf5-44f2-a940-7107e6785ee1_terseLabel_en-US" xlink:label="lab_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reconciliation of Unrecognized Tax Benefits, Excluding Amounts Pertaining to Examined Tax Returns [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_label_en-US" xlink:label="lab_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reconciliation of Unrecognized Tax Benefits, Excluding Amounts Pertaining to Examined Tax Returns [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" xlink:to="lab_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_a3689559-9c07-4b64-96c1-111fc1fbe11d_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2024</link:label>
    <link:label id="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_label_en-US" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Term Debt, Maturity, Year Two</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:to="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationsPolicy_1731d889-8e16-43c9-8e1b-8cf7b09267e8_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationsPolicy" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combinations</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationsPolicy_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationsPolicy" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combinations Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationsPolicy" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationsPolicy"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationsPolicy" xlink:to="lab_us-gaap_BusinessCombinationsPolicy" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AllOtherSegmentsMember_62d5115a-ea0c-4679-86f2-f088319be0be_terseLabel_en-US" xlink:label="lab_us-gaap_AllOtherSegmentsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other</link:label>
    <link:label id="lab_us-gaap_AllOtherSegmentsMember_label_en-US" xlink:label="lab_us-gaap_AllOtherSegmentsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Segments [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllOtherSegmentsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllOtherSegmentsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllOtherSegmentsMember" xlink:to="lab_us-gaap_AllOtherSegmentsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty_33caf90e-7aa4-47e5-aaff-a5cb1f66740b_terseLabel_en-US" xlink:label="lab_us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Rent</link:label>
    <link:label id="lab_us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty_label_en-US" xlink:label="lab_us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Related Party Transaction, Expenses from Transactions with Related Party</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty" xlink:to="lab_us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_393d289e-2b8f-4db5-86ed-e5c3a5448049_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of credit maximum borrowing capacity</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility, Maximum Borrowing Capacity</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:to="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxDisclosureAbstract_400fafdf-b100-4d4d-8ac4-ed7dd7dee7ca_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Disclosure [Abstract]</link:label>
    <link:label id="lab_us-gaap_IncomeTaxDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_IncomeTaxDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract" xlink:to="lab_us-gaap_IncomeTaxDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_ee96f1e3-e773-4951-89c8-c026a65e60e5_negatedLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property and equipment</link:label>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_label_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Liabilities, Property, Plant and Equipment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:to="lab_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchasesSalesIssuancesSettlements_2c331bc4-3240-45d7-8c81-9916822a78c0_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchasesSalesIssuancesSettlements" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amounts paid to sellers</link:label>
    <link:label id="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchasesSalesIssuancesSettlements_label_en-US" xlink:label="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchasesSalesIssuancesSettlements" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability, Purchases, (Sales), Issuances, (Settlements)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchasesSalesIssuancesSettlements" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchasesSalesIssuancesSettlements"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchasesSalesIssuancesSettlements" xlink:to="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchasesSalesIssuancesSettlements" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_LeaseAssets_fdd07fa5-450d-4ed7-acbe-b32bf85ade2b_totalLabel_en-US" xlink:label="lab_ibp_LeaseAssets" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total lease assets</link:label>
    <link:label id="lab_ibp_LeaseAssets_label_en-US" xlink:label="lab_ibp_LeaseAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lease Assets</link:label>
    <link:label id="lab_ibp_LeaseAssets_documentation_en-US" xlink:label="lab_ibp_LeaseAssets" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Represents aggregate of operating and finance lease assets.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_LeaseAssets" xlink:href="ibp-20221231.xsd#ibp_LeaseAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_LeaseAssets" xlink:to="lab_ibp_LeaseAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_72fd4e51-3dff-470c-adaf-7faf9c5bb5c3_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsForProceedsFromOtherInvestingActivities" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other</link:label>
    <link:label id="lab_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_label_en-US" xlink:label="lab_us-gaap_PaymentsForProceedsFromOtherInvestingActivities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments for (Proceeds from) Other Investing Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForProceedsFromOtherInvestingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsForProceedsFromOtherInvestingActivities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsForProceedsFromOtherInvestingActivities" xlink:to="lab_us-gaap_PaymentsForProceedsFromOtherInvestingActivities" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_RangeMember_7abce9fb-713b-40ee-ad18-44d4a8721858_terseLabel_en-US" xlink:label="lab_srt_RangeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Range [Domain]</link:label>
    <link:label id="lab_srt_RangeMember_9a137963-d1bc-4250-a284-0a4657d274a8_verboseLabel_en-US" xlink:label="lab_srt_RangeMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statistical Measurement [Domain]</link:label>
    <link:label id="lab_srt_RangeMember_label_en-US" xlink:label="lab_srt_RangeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statistical Measurement [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RangeMember" xlink:to="lab_srt_RangeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsTable_3e479fb3-0acf-4353-89c7-40d33c7632f5_terseLabel_en-US" xlink:label="lab_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Pension Plans Postretirement And Other Employee Benefits [Table]</link:label>
    <link:label id="lab_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsTable_label_en-US" xlink:label="lab_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Pension Plans Postretirement And Other Employee Benefits [Table]</link:label>
    <link:label id="lab_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsTable_documentation_en-US" xlink:label="lab_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsTable" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Pension Plans Postretirement And Other Employee Benefits [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsTable" xlink:href="ibp-20221231.xsd#ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsTable" xlink:to="lab_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShortTermDebtTypeAxis_454d2596-310f-4ed2-8be3-01bda9b6c529_terseLabel_en-US" xlink:label="lab_us-gaap_ShortTermDebtTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Short-term Debt, Type [Axis]</link:label>
    <link:label id="lab_us-gaap_ShortTermDebtTypeAxis_label_en-US" xlink:label="lab_us-gaap_ShortTermDebtTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Short-Term Debt, Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermDebtTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShortTermDebtTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShortTermDebtTypeAxis" xlink:to="lab_us-gaap_ShortTermDebtTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations_212299a6-2fdc-437c-a513-add9ddb62933_negatedLabel_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Decrease as a result of expiring statutes</link:label>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations_label_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unrecognized Tax Benefits, Reduction Resulting from Lapse of Applicable Statute of Limitations</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:to="lab_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_e04c0ea9-3272-472d-848e-240b35c2e8d1_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Business Combinations</link:label>
    <link:label id="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Business Acquisitions, by Acquisition [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" xlink:to="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnContingentConsideration_7e54bff3-e656-4294-b68e-d3085c197290_negatedTerseLabel_en-US" xlink:label="lab_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnContingentConsideration" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gains on acquisition earnouts</link:label>
    <link:label id="lab_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnContingentConsideration_label_en-US" xlink:label="lab_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnContingentConsideration" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability, Gain (Loss) On Contingent Consideration</link:label>
    <link:label id="lab_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnContingentConsideration_documentation_en-US" xlink:label="lab_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnContingentConsideration" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability, Gain (Loss) On Contingent Consideration</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnContingentConsideration" xlink:href="ibp-20221231.xsd#ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnContingentConsideration"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnContingentConsideration" xlink:to="lab_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnContingentConsideration" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_NoncurrentLeaseLiabilitiesAbstract_6f35033f-05b5-42e4-985b-11c22faceaad_terseLabel_en-US" xlink:label="lab_ibp_NoncurrentLeaseLiabilitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Non-Current</link:label>
    <link:label id="lab_ibp_NoncurrentLeaseLiabilitiesAbstract_label_en-US" xlink:label="lab_ibp_NoncurrentLeaseLiabilitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">NonCurrent Lease Liabilities [Abstract]</link:label>
    <link:label id="lab_ibp_NoncurrentLeaseLiabilitiesAbstract_documentation_en-US" xlink:label="lab_ibp_NoncurrentLeaseLiabilitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Represents non-current lease liabilities abstract.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_NoncurrentLeaseLiabilitiesAbstract" xlink:href="ibp-20221231.xsd#ibp_NoncurrentLeaseLiabilitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_NoncurrentLeaseLiabilitiesAbstract" xlink:to="lab_ibp_NoncurrentLeaseLiabilitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_cf8f5951-34ce-4f7a-9e4e-fbedfe4ae80d_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property and equipment, net</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_38bba9e2-7622-45d8-99f2-b527cd7de791_totalLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property and equipment, net</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant, and Equipment and Finance Lease Right-of-Use Asset, after Accumulated Depreciation and Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TreasuryStockValueAcquiredCostMethod_68ffd75b-0aea-4d2d-86b9-d373c11773d0_negatedLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock repurchase</link:label>
    <link:label id="lab_us-gaap_TreasuryStockValueAcquiredCostMethod_e061944b-b5e6-4b17-aacf-e6ca30271743_terseLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share repurchase, amount</link:label>
    <link:label id="lab_us-gaap_TreasuryStockValueAcquiredCostMethod_label_en-US" xlink:label="lab_us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Treasury Stock, Value, Acquired, Cost Method</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:to="lab_us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_3eb68501-2ed5-43f4-b1c3-c23205c4b8d5_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]</link:label>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_label_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:to="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetIncomeLoss_eba487d9-67d3-4e9f-b88a-84870047b097_totalLabel_en-US" xlink:label="lab_us-gaap_NetIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net income</link:label>
    <link:label id="lab_us-gaap_NetIncomeLoss_799fcd1f-b686-4e95-988a-1300ba9314fd_verboseLabel_en-US" xlink:label="lab_us-gaap_NetIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net income</link:label>
    <link:label id="lab_us-gaap_NetIncomeLoss_label_en-US" xlink:label="lab_us-gaap_NetIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Income (Loss) Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetIncomeLoss" xlink:to="lab_us-gaap_NetIncomeLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeFinanceLeasesTextBlock_0ca1eb30-bb01-43ba-b199-ebec0b191b2c_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeFinanceLeasesTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leases</link:label>
    <link:label id="lab_us-gaap_LesseeFinanceLeasesTextBlock_label_en-US" xlink:label="lab_us-gaap_LesseeFinanceLeasesTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Finance Leases [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeFinanceLeasesTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeFinanceLeasesTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeFinanceLeasesTextBlock" xlink:to="lab_us-gaap_LesseeFinanceLeasesTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_CumulativeEffectPeriodOfAdoptionAxis_4ddf3fd7-4339-4632-9769-84df68f1f009_terseLabel_en-US" xlink:label="lab_srt_CumulativeEffectPeriodOfAdoptionAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cumulative Effect, Period of Adoption [Axis]</link:label>
    <link:label id="lab_srt_CumulativeEffectPeriodOfAdoptionAxis_label_en-US" xlink:label="lab_srt_CumulativeEffectPeriodOfAdoptionAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cumulative Effect, Period of Adoption [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAxis" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionAxis" xlink:to="lab_srt_CumulativeEffectPeriodOfAdoptionAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_c44f16a0-a18f-4b32-8d41-d1d892a61a2c_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Maturities of Long-term Debt</link:label>
    <link:label id="lab_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Maturities of Long-Term Debt [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventTypeAxis_8b050779-f551-4330-b23d-409a5da37980_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event Type [Axis]</link:label>
    <link:label id="lab_us-gaap_SubsequentEventTypeAxis_label_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventTypeAxis" xlink:to="lab_us-gaap_SubsequentEventTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_InterestRateSwapFourEffectiveDecember312025Member_4ab9bef0-18c0-46f4-9116-6d2f281392fe_terseLabel_en-US" xlink:label="lab_ibp_InterestRateSwapFourEffectiveDecember312025Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest Rate Swap Four, Effective December 31, 2025</link:label>
    <link:label id="lab_ibp_InterestRateSwapFourEffectiveDecember312025Member_label_en-US" xlink:label="lab_ibp_InterestRateSwapFourEffectiveDecember312025Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest Rate Swap Four, Effective December 31, 2025 [Member]</link:label>
    <link:label id="lab_ibp_InterestRateSwapFourEffectiveDecember312025Member_documentation_en-US" xlink:label="lab_ibp_InterestRateSwapFourEffectiveDecember312025Member" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest Rate Swap Four, Effective December 31, 2025</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_InterestRateSwapFourEffectiveDecember312025Member" xlink:href="ibp-20221231.xsd#ibp_InterestRateSwapFourEffectiveDecember312025Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_InterestRateSwapFourEffectiveDecember312025Member" xlink:to="lab_ibp_InterestRateSwapFourEffectiveDecember312025Member" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationForfeited_ca62d7e6-b8f0-4de5-bf11-000c040191c5_negatedLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationForfeited" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Surrender of common stock awards</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationForfeited_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationForfeited" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Shares Issued, Value, Share-Based Payment Arrangement, Forfeited</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationForfeited" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationForfeited"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationForfeited" xlink:to="lab_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationForfeited" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_StatementScenarioAxis_f187de93-4b14-405f-b410-21356d88d144_terseLabel_en-US" xlink:label="lab_srt_StatementScenarioAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Scenario [Axis]</link:label>
    <link:label id="lab_srt_StatementScenarioAxis_label_en-US" xlink:label="lab_srt_StatementScenarioAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Scenario [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementScenarioAxis" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementScenarioAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_StatementScenarioAxis" xlink:to="lab_srt_StatementScenarioAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_8e7126c1-ea90-42a5-ab19-8ce83e98a33b_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Change in valuation allowance</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Change in Deferred Tax Assets Valuation Allowance, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:to="lab_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsFairValueDisclosure_df5a84ad-bf6f-4ce9-9da2-cd43a629ed44_totalLabel_en-US" xlink:label="lab_us-gaap_AssetsFairValueDisclosure" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total financial assets</link:label>
    <link:label id="lab_us-gaap_AssetsFairValueDisclosure_label_en-US" xlink:label="lab_us-gaap_AssetsFairValueDisclosure" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets, Fair Value Disclosure</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsFairValueDisclosure" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsFairValueDisclosure"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsFairValueDisclosure" xlink:to="lab_us-gaap_AssetsFairValueDisclosure" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_3faaec31-ba51-489e-94e1-3339cd5e0717_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vesting percentage (as a percent)</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Rights, Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeasesTextBlock_0b6931b9-ac33-4379-aae7-bd0c0d8708d5_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeasesTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leases</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeasesTextBlock_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeasesTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Leases [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeasesTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeasesTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeasesTextBlock" xlink:to="lab_us-gaap_LesseeOperatingLeasesTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TreasuryStockCommonValue_d0d0078a-3918-419c-8178-5d70c77327e2_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockCommonValue" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Treasury stock; at cost: 5,123,075 and 3,565,258 shares at December&#160;31, 2022 and 2021, respectively</link:label>
    <link:label id="lab_us-gaap_TreasuryStockCommonValue_06481b23-450d-47a0-ae39-d72995691b96_negatedPeriodStartLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockCommonValue" xlink:role="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">BALANCE, Treasury Stock, Value</link:label>
    <link:label id="lab_us-gaap_TreasuryStockCommonValue_ad1d87bb-0c92-4936-8c40-1dd7477eed46_negatedPeriodEndLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockCommonValue" xlink:role="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">BALANCE, Treasury Stock, Value</link:label>
    <link:label id="lab_us-gaap_TreasuryStockCommonValue_label_en-US" xlink:label="lab_us-gaap_TreasuryStockCommonValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Treasury Stock, Common, Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockCommonValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockCommonValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockCommonValue" xlink:to="lab_us-gaap_TreasuryStockCommonValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PlanNameAxis_ed634a19-5d20-4be5-a1d0-4499b6f4327d_terseLabel_en-US" xlink:label="lab_us-gaap_PlanNameAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Plan Name [Axis]</link:label>
    <link:label id="lab_us-gaap_PlanNameAxis_label_en-US" xlink:label="lab_us-gaap_PlanNameAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Plan Name [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PlanNameAxis" xlink:to="lab_us-gaap_PlanNameAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ContractWithCustomerAssetNet_45f003db-f8af-40d1-bcb8-6f5abfa2c96d_terseLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerAssetNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract assets</link:label>
    <link:label id="lab_us-gaap_ContractWithCustomerAssetNet_label_en-US" xlink:label="lab_us-gaap_ContractWithCustomerAssetNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract with Customer, Asset, after Allowance for Credit Loss</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerAssetNet" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerAssetNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerAssetNet" xlink:to="lab_us-gaap_ContractWithCustomerAssetNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeInstrumentRiskAxis_f205e91e-3a3d-41e1-91ab-4cdec977804d_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentRiskAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative Instrument [Axis]</link:label>
    <link:label id="lab_us-gaap_DerivativeInstrumentRiskAxis_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentRiskAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative Instrument [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentRiskAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentRiskAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis" xlink:to="lab_us-gaap_DerivativeInstrumentRiskAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets_e3c6eb57-2859-4bed-a3c4-3fac8368e84a_negatedLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Intangibles</link:label>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets_label_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Liabilities, Goodwill and Intangible Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets" xlink:to="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NumberOfOperatingSegments_2cb0db95-0560-4afe-9e70-9569e8f788d8_terseLabel_en-US" xlink:label="lab_us-gaap_NumberOfOperatingSegments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of operating segment</link:label>
    <link:label id="lab_us-gaap_NumberOfOperatingSegments_label_en-US" xlink:label="lab_us-gaap_NumberOfOperatingSegments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of Operating Segments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfOperatingSegments" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NumberOfOperatingSegments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NumberOfOperatingSegments" xlink:to="lab_us-gaap_NumberOfOperatingSegments" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_BillingsInExcessOfCostOnUncompletedContracts_c27c4f54-e078-4c6d-ae10-b140e6429f16_negatedLabel_en-US" xlink:label="lab_ibp_BillingsInExcessOfCostOnUncompletedContracts" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Billings in excess of costs and estimated earnings on uncompleted contracts (contract liabilities)</link:label>
    <link:label id="lab_ibp_BillingsInExcessOfCostOnUncompletedContracts_label_en-US" xlink:label="lab_ibp_BillingsInExcessOfCostOnUncompletedContracts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Billings In Excess Of Cost On Uncompleted Contracts</link:label>
    <link:label id="lab_ibp_BillingsInExcessOfCostOnUncompletedContracts_documentation_en-US" xlink:label="lab_ibp_BillingsInExcessOfCostOnUncompletedContracts" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Billings In Excess Of Cost On Uncompleted Contracts</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_BillingsInExcessOfCostOnUncompletedContracts" xlink:href="ibp-20221231.xsd#ibp_BillingsInExcessOfCostOnUncompletedContracts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_BillingsInExcessOfCostOnUncompletedContracts" xlink:to="lab_ibp_BillingsInExcessOfCostOnUncompletedContracts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillLineItems_9825b439-1786-4640-9423-bd40bc1785f7_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill [Line Items]</link:label>
    <link:label id="lab_us-gaap_GoodwillLineItems_label_en-US" xlink:label="lab_us-gaap_GoodwillLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillLineItems" xlink:to="lab_us-gaap_GoodwillLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementOfCashFlowsAbstract_779664aa-a9af-457c-b9d3-237077776b9f_terseLabel_en-US" xlink:label="lab_us-gaap_StatementOfCashFlowsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Cash Flows [Abstract]</link:label>
    <link:label id="lab_us-gaap_StatementOfCashFlowsAbstract_label_en-US" xlink:label="lab_us-gaap_StatementOfCashFlowsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Cash Flows [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfCashFlowsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfCashFlowsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract" xlink:to="lab_us-gaap_StatementOfCashFlowsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueInputsLevel1Member_1922d216-a86a-48b8-ba84-789e9a7cc54a_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel1Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Level&#160;1</link:label>
    <link:label id="lab_us-gaap_FairValueInputsLevel1Member_label_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel1Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Inputs, Level 1 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel1Member" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel1Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueInputsLevel1Member" xlink:to="lab_us-gaap_FairValueInputsLevel1Member" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock_f3142553-39b3-4e50-a74e-c13e62997b60_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Notional Amounts of Outstanding Derivative Positions</link:label>
    <link:label id="lab_us-gaap_ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Notional Amounts of Outstanding Derivative Positions [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedContributionPlanAdministrativeExpenses_030e87bd-db54-473d-839d-bf9461ae6095_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedContributionPlanAdministrativeExpenses" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Administration expense related to employee contribution plan</link:label>
    <link:label id="lab_us-gaap_DefinedContributionPlanAdministrativeExpenses_label_en-US" xlink:label="lab_us-gaap_DefinedContributionPlanAdministrativeExpenses" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Contribution Plan, Administrative Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedContributionPlanAdministrativeExpenses" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedContributionPlanAdministrativeExpenses"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedContributionPlanAdministrativeExpenses" xlink:to="lab_us-gaap_DefinedContributionPlanAdministrativeExpenses" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities_58161a8f-ec1d-42a9-8e6f-321f974d1f4e_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net cash provided by operating activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Operating Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeAssets_f793191c-3c23-45a1-b5de-be7bd744024d_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeAssets" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative financial instruments</link:label>
    <link:label id="lab_us-gaap_DerivativeAssets_label_en-US" xlink:label="lab_us-gaap_DerivativeAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative Asset</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeAssets" xlink:to="lab_us-gaap_DerivativeAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual_b007a905-8393-40de-9b20-685f5061755b_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Pro Forma Information, Revenue of Acquiree since Acquisition Date, Actual</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual" xlink:to="lab_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements_a43e02cd-2fa8-437c-b57b-47177d3ead34_negatedLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Settlement adjustments</link:label>
    <link:label id="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements_label_en-US" xlink:label="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability, Settlements</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements" xlink:to="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationTaxContingencies_b5f55a63-f40d-4f31-aa62-dc8d78ccb134_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationTaxContingencies" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Change in uncertain tax positions</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationTaxContingencies_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationTaxContingencies" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Tax Contingency, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationTaxContingencies" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationTaxContingencies"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationTaxContingencies" xlink:to="lab_us-gaap_IncomeTaxReconciliationTaxContingencies" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_TwoThousandTwentyTwoAcquisitionsMember_a060d1ed-805b-4896-89ae-8ff0950c3dfe_terseLabel_en-US" xlink:label="lab_ibp_TwoThousandTwentyTwoAcquisitionsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2022 Acquisitions</link:label>
    <link:label id="lab_ibp_TwoThousandTwentyTwoAcquisitionsMember_label_en-US" xlink:label="lab_ibp_TwoThousandTwentyTwoAcquisitionsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">TwoThousandTwentyTwoAcquisitions [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_TwoThousandTwentyTwoAcquisitionsMember" xlink:href="ibp-20221231.xsd#ibp_TwoThousandTwentyTwoAcquisitionsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_TwoThousandTwentyTwoAcquisitionsMember" xlink:to="lab_ibp_TwoThousandTwentyTwoAcquisitionsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_TermLoanAgreementMember_3a3c9df2-4be3-4a59-8b79-a6958b70bb1e_terseLabel_en-US" xlink:label="lab_ibp_TermLoanAgreementMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Term Loan Agreement</link:label>
    <link:label id="lab_ibp_TermLoanAgreementMember_label_en-US" xlink:label="lab_ibp_TermLoanAgreementMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Term Loan Agreement [Member]</link:label>
    <link:label id="lab_ibp_TermLoanAgreementMember_documentation_en-US" xlink:label="lab_ibp_TermLoanAgreementMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Term loan agreement.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_TermLoanAgreementMember" xlink:href="ibp-20221231.xsd#ibp_TermLoanAgreementMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_TermLoanAgreementMember" xlink:to="lab_ibp_TermLoanAgreementMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentAnnualReport_fa599182-5156-4258-b482-15b9fb873c5e_terseLabel_en-US" xlink:label="lab_dei_DocumentAnnualReport" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Annual Report</link:label>
    <link:label id="lab_dei_DocumentAnnualReport_label_en-US" xlink:label="lab_dei_DocumentAnnualReport" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Annual Report</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentAnnualReport" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentAnnualReport"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentAnnualReport" xlink:to="lab_dei_DocumentAnnualReport" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries_ac48f7a5-0adb-4a92-bdc4-4cdca24e029f_terseLabel_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Recoveries collected and additions</link:label>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries_label_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss, Recovery</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries" xlink:to="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_AdjustedGrossProfitPercentage_68b7c873-a7d8-4e3b-a544-c51aa7122d96_terseLabel_en-US" xlink:label="lab_ibp_AdjustedGrossProfitPercentage" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segment gross profit percentage</link:label>
    <link:label id="lab_ibp_AdjustedGrossProfitPercentage_label_en-US" xlink:label="lab_ibp_AdjustedGrossProfitPercentage" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Adjusted Gross Profit, Percentage</link:label>
    <link:label id="lab_ibp_AdjustedGrossProfitPercentage_documentation_en-US" xlink:label="lab_ibp_AdjustedGrossProfitPercentage" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Adjusted Gross Profit, Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_AdjustedGrossProfitPercentage" xlink:href="ibp-20221231.xsd#ibp_AdjustedGrossProfitPercentage"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_AdjustedGrossProfitPercentage" xlink:to="lab_ibp_AdjustedGrossProfitPercentage" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnEarnoutLiability_ff9ab585-2378-478e-afcc-0cef9782d7f1_terseLabel_en-US" xlink:label="lab_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnEarnoutLiability" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Earnout not being paid</link:label>
    <link:label id="lab_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnEarnoutLiability_label_en-US" xlink:label="lab_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnEarnoutLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability, Gain (Loss) On Earnout Liability</link:label>
    <link:label id="lab_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnEarnoutLiability_documentation_en-US" xlink:label="lab_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnEarnoutLiability" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability, Gain (Loss) On Earnout Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnEarnoutLiability" xlink:href="ibp-20221231.xsd#ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnEarnoutLiability"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnEarnoutLiability" xlink:to="lab_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnEarnoutLiability" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_759ddadc-d2eb-4c1c-bc3c-0166c1480ad3_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Cash and Equivalents</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_OtherLiabilitiesPolicyTextBlock_930480b8-c9e0-4dad-9be0-601fdc6ad32a_terseLabel_en-US" xlink:label="lab_ibp_OtherLiabilitiesPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Liabilities</link:label>
    <link:label id="lab_ibp_OtherLiabilitiesPolicyTextBlock_label_en-US" xlink:label="lab_ibp_OtherLiabilitiesPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Liabilities [Policy Text Block]</link:label>
    <link:label id="lab_ibp_OtherLiabilitiesPolicyTextBlock_documentation_en-US" xlink:label="lab_ibp_OtherLiabilitiesPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Liabilities Policy.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_OtherLiabilitiesPolicyTextBlock" xlink:href="ibp-20221231.xsd#ibp_OtherLiabilitiesPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_OtherLiabilitiesPolicyTextBlock" xlink:to="lab_ibp_OtherLiabilitiesPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTextBlock_f89b4644-bc70-447c-8934-e014db6f27c0_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Property and Equipment</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTextBlock_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_07d2021d-98ac-4f72-a9e7-ec13e0e7fe30_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPostretirementHealthCoverageMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Medical IBNR Included in Accrued Compensation</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_dccc12e5-6859-4535-ab7f-976800cb0ae9_verboseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPostretirementHealthCoverageMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Health &amp; welfare plans</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPostretirementHealthCoverageMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Postretirement Health Coverage [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPostretirementHealthCoverageMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember" xlink:to="lab_us-gaap_DefinedBenefitPostretirementHealthCoverageMember" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_OtherBuildingProductsMember_0fd411d4-f6de-47c1-be58-3ffc3ae9c615_terseLabel_en-US" xlink:label="lab_ibp_OtherBuildingProductsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other building products</link:label>
    <link:label id="lab_ibp_OtherBuildingProductsMember_label_en-US" xlink:label="lab_ibp_OtherBuildingProductsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Building Products [Member]</link:label>
    <link:label id="lab_ibp_OtherBuildingProductsMember_documentation_en-US" xlink:label="lab_ibp_OtherBuildingProductsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other building products.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_OtherBuildingProductsMember" xlink:href="ibp-20221231.xsd#ibp_OtherBuildingProductsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_OtherBuildingProductsMember" xlink:to="lab_ibp_OtherBuildingProductsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PreferredStockSharesIssued_76927f56-d25d-431f-b217-e66ef9d75d8a_terseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred stock, shares issued (in shares)</link:label>
    <link:label id="lab_us-gaap_PreferredStockSharesIssued_label_en-US" xlink:label="lab_us-gaap_PreferredStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred Stock, Shares Issued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesIssued" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesIssued"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockSharesIssued" xlink:to="lab_us-gaap_PreferredStockSharesIssued" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_c73962b6-29f6-4a28-9806-7e21ad06f396_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Awards</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskBenchmarkDomain_2b780857-334c-4973-af43-0a890f173593_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskBenchmarkDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Benchmark [Domain]</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskBenchmarkDomain_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskBenchmarkDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Benchmark [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="lab_us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_OperatingLeaseMember_224e01e5-17a4-42ad-9b1f-f302970231e1_terseLabel_en-US" xlink:label="lab_ibp_OperatingLeaseMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease</link:label>
    <link:label id="lab_ibp_OperatingLeaseMember_label_en-US" xlink:label="lab_ibp_OperatingLeaseMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease [Member]</link:label>
    <link:label id="lab_ibp_OperatingLeaseMember_documentation_en-US" xlink:label="lab_ibp_OperatingLeaseMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_OperatingLeaseMember" xlink:href="ibp-20221231.xsd#ibp_OperatingLeaseMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_OperatingLeaseMember" xlink:to="lab_ibp_OperatingLeaseMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementBusinessSegmentsAxis_074860e3-8ff9-4446-9e25-0ecbf09eb0f5_terseLabel_en-US" xlink:label="lab_us-gaap_StatementBusinessSegmentsAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segments [Axis]</link:label>
    <link:label id="lab_us-gaap_StatementBusinessSegmentsAxis_label_en-US" xlink:label="lab_us-gaap_StatementBusinessSegmentsAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segments [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis" xlink:to="lab_us-gaap_StatementBusinessSegmentsAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CompensationAndEmployeeBenefitPlansTextBlock_c80cc379-9b1d-42bb-84d3-f32a6bc9b4ed_terseLabel_en-US" xlink:label="lab_us-gaap_CompensationAndEmployeeBenefitPlansTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Employee Benefits</link:label>
    <link:label id="lab_us-gaap_CompensationAndEmployeeBenefitPlansTextBlock_label_en-US" xlink:label="lab_us-gaap_CompensationAndEmployeeBenefitPlansTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Compensation and Employee Benefit Plans [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CompensationAndEmployeeBenefitPlansTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CompensationAndEmployeeBenefitPlansTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CompensationAndEmployeeBenefitPlansTextBlock" xlink:to="lab_us-gaap_CompensationAndEmployeeBenefitPlansTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ProductsAndServicesDomain_60995f75-a0e5-4430-a58c-f7ced67fc305_terseLabel_en-US" xlink:label="lab_srt_ProductsAndServicesDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product and Service [Domain]</link:label>
    <link:label id="lab_srt_ProductsAndServicesDomain_label_en-US" xlink:label="lab_srt_ProductsAndServicesDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product and Service [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductsAndServicesDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ProductsAndServicesDomain" xlink:to="lab_srt_ProductsAndServicesDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityShellCompany_6e2382c6-0195-4d41-9722-b1707b2ce4c2_terseLabel_en-US" xlink:label="lab_dei_EntityShellCompany" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Shell Company</link:label>
    <link:label id="lab_dei_EntityShellCompany_label_en-US" xlink:label="lab_dei_EntityShellCompany" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Shell Company</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityShellCompany" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityShellCompany"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityShellCompany" xlink:to="lab_dei_EntityShellCompany" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_204d3c3f-d000-4968-8856-6a4d7e2a3e41_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2023</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year One</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_CommitmentsAndContingenciesDisclosureTable_db18ec6c-c6e8-4691-addb-6fda10605962_terseLabel_en-US" xlink:label="lab_ibp_CommitmentsAndContingenciesDisclosureTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commitments And Contingencies Disclosure [Table]</link:label>
    <link:label id="lab_ibp_CommitmentsAndContingenciesDisclosureTable_label_en-US" xlink:label="lab_ibp_CommitmentsAndContingenciesDisclosureTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commitments And Contingencies Disclosure [Table]</link:label>
    <link:label id="lab_ibp_CommitmentsAndContingenciesDisclosureTable_documentation_en-US" xlink:label="lab_ibp_CommitmentsAndContingenciesDisclosureTable" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commitments And Contingencies Disclosure [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CommitmentsAndContingenciesDisclosureTable" xlink:href="ibp-20221231.xsd#ibp_CommitmentsAndContingenciesDisclosureTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_CommitmentsAndContingenciesDisclosureTable" xlink:to="lab_ibp_CommitmentsAndContingenciesDisclosureTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsReceivableRelatedPartiesCurrent_0c90ceba-1bda-4c20-b375-10da0acc339e_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsReceivableRelatedPartiesCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts receivable, related parties</link:label>
    <link:label id="lab_us-gaap_AccountsReceivableRelatedPartiesCurrent_label_en-US" xlink:label="lab_us-gaap_AccountsReceivableRelatedPartiesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable, Related Parties, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableRelatedPartiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableRelatedPartiesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsReceivableRelatedPartiesCurrent" xlink:to="lab_us-gaap_AccountsReceivableRelatedPartiesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_MediumTermNotesMember_3fcb93b1-f849-490d-9457-55c41dc2bf22_terseLabel_en-US" xlink:label="lab_us-gaap_MediumTermNotesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Medium-term Notes</link:label>
    <link:label id="lab_us-gaap_MediumTermNotesMember_label_en-US" xlink:label="lab_us-gaap_MediumTermNotesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Medium-term Notes [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MediumTermNotesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MediumTermNotesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MediumTermNotesMember" xlink:to="lab_us-gaap_MediumTermNotesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_ba87d19d-b24c-4ecd-911b-c537d81ae4fa_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2025</link:label>
    <link:label id="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_label_en-US" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Term Debt, Maturity, Year Three</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:to="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_VehiclesMember_01968fe7-d3f8-4dc4-a6cd-ae3ccbc30430_terseLabel_en-US" xlink:label="lab_us-gaap_VehiclesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vehicles</link:label>
    <link:label id="lab_us-gaap_VehiclesMember_label_en-US" xlink:label="lab_us-gaap_VehiclesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vehicles [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VehiclesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VehiclesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_VehiclesMember" xlink:to="lab_us-gaap_VehiclesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_AffiliatedEntityMember_9fc90a5c-5e49-463e-992f-cc53be0341c8_terseLabel_en-US" xlink:label="lab_srt_AffiliatedEntityMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Affiliated Entity</link:label>
    <link:label id="lab_srt_AffiliatedEntityMember_label_en-US" xlink:label="lab_srt_AffiliatedEntityMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Affiliated Entity [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_AffiliatedEntityMember" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_AffiliatedEntityMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_AffiliatedEntityMember" xlink:to="lab_srt_AffiliatedEntityMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventMember_9dfeaf46-942e-47e0-862a-cb03b41931ec_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event</link:label>
    <link:label id="lab_us-gaap_SubsequentEventMember_label_en-US" xlink:label="lab_us-gaap_SubsequentEventMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventMember" xlink:to="lab_us-gaap_SubsequentEventMember" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ConsolidationItemsDomain_c6893245-ea6a-4b52-814d-0d1b5a1701fc_terseLabel_en-US" xlink:label="lab_srt_ConsolidationItemsDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Consolidation Items [Domain]</link:label>
    <link:label id="lab_srt_ConsolidationItemsDomain_label_en-US" xlink:label="lab_srt_ConsolidationItemsDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Consolidation Items [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ConsolidationItemsDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ConsolidationItemsDomain" xlink:to="lab_srt_ConsolidationItemsDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedPaymentArrangementNonemployeeMember_ae15a22e-d926-4f1a-a92a-ff18ad4cf239_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedPaymentArrangementNonemployeeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Non-Employee Common Stock Awards</link:label>
    <link:label id="lab_us-gaap_ShareBasedPaymentArrangementNonemployeeMember_label_en-US" xlink:label="lab_us-gaap_ShareBasedPaymentArrangementNonemployeeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement, Nonemployee [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedPaymentArrangementNonemployeeMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedPaymentArrangementNonemployeeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedPaymentArrangementNonemployeeMember" xlink:to="lab_us-gaap_ShareBasedPaymentArrangementNonemployeeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentPeriodEndDate_71404650-4446-4ffc-a118-20270e96992e_terseLabel_en-US" xlink:label="lab_dei_DocumentPeriodEndDate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Period End Date</link:label>
    <link:label id="lab_dei_DocumentPeriodEndDate_label_en-US" xlink:label="lab_dei_DocumentPeriodEndDate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Period End Date</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentPeriodEndDate" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentPeriodEndDate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentPeriodEndDate" xlink:to="lab_dei_DocumentPeriodEndDate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationSeparatelyRecognizedTransactionsRevenuesAndGainsRecognized_ad7f53f7-f429-46af-b3be-f4f807ddccea_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationSeparatelyRecognizedTransactionsRevenuesAndGainsRecognized" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gain on acquisition earnout</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationSeparatelyRecognizedTransactionsRevenuesAndGainsRecognized_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationSeparatelyRecognizedTransactionsRevenuesAndGainsRecognized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Separately Recognized Transactions, Revenues and Gains Recognized</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationSeparatelyRecognizedTransactionsRevenuesAndGainsRecognized" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationSeparatelyRecognizedTransactionsRevenuesAndGainsRecognized"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationSeparatelyRecognizedTransactionsRevenuesAndGainsRecognized" xlink:to="lab_us-gaap_BusinessCombinationSeparatelyRecognizedTransactionsRevenuesAndGainsRecognized" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_Assets_34c2c234-97b0-47b3-9208-1ef0652673f7_totalLabel_en-US" xlink:label="lab_us-gaap_Assets" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total assets</link:label>
    <link:label id="lab_us-gaap_Assets_label_en-US" xlink:label="lab_us-gaap_Assets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Assets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Assets" xlink:to="lab_us-gaap_Assets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareAbstract_b2497755-784a-46f8-ba72-f6eb7638e8ae_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Earnings Per Share:</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareAbstract_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Earnings Per Share [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareAbstract" xlink:to="lab_us-gaap_EarningsPerShareAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InterestRateSwapMember_da626391-9638-4288-b6f3-b897e3a3de4a_terseLabel_en-US" xlink:label="lab_us-gaap_InterestRateSwapMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest Rate Swap</link:label>
    <link:label id="lab_us-gaap_InterestRateSwapMember_label_en-US" xlink:label="lab_us-gaap_InterestRateSwapMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest Rate Swap [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestRateSwapMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestRateSwapMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InterestRateSwapMember" xlink:to="lab_us-gaap_InterestRateSwapMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_b19d8262-34a6-4255-aad8-519c9ecc5936_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2027</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year Five</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermDebtFairValue_ec4e4c6b-dbd6-426c-9c99-e7873a1c5f8e_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Senior Notes</link:label>
    <link:label id="lab_us-gaap_LongTermDebtFairValue_label_en-US" xlink:label="lab_us-gaap_LongTermDebtFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Term Debt, Fair Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtFairValue" xlink:to="lab_us-gaap_LongTermDebtFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockRepurchaseProgramAuthorizedAmount1_fbe4f99f-428d-4aa1-87c4-fb2966da07c4_terseLabel_en-US" xlink:label="lab_us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock repurchase program, authorized</link:label>
    <link:label id="lab_us-gaap_StockRepurchaseProgramAuthorizedAmount1_label_en-US" xlink:label="lab_us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Repurchase Program, Authorized Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockRepurchaseProgramAuthorizedAmount1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:to="lab_us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent_cb42183b-3376-4333-b5b6-54d25ff81b17_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued compensation</link:label>
    <link:label id="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent_label_en-US" xlink:label="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Employee-related Liabilities, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:to="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_58900360-3bb3-4248-b818-9a5020697e35_totalLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income before income taxes</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_label_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SegmentDomain_92c420e4-64bd-47a1-9b91-ad5cd9b43546_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segments [Domain]</link:label>
    <link:label id="lab_us-gaap_SegmentDomain_label_en-US" xlink:label="lab_us-gaap_SegmentDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segments [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentDomain" xlink:to="lab_us-gaap_SegmentDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredIncomeTaxesAndTaxCredits_ac25a5b1-b8f7-4747-b0b2-da4e12c93281_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxesAndTaxCredits" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred income taxes</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxesAndTaxCredits_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxesAndTaxCredits" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Income Taxes and Tax Credits</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxesAndTaxCredits" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxesAndTaxCredits"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxesAndTaxCredits" xlink:to="lab_us-gaap_DeferredIncomeTaxesAndTaxCredits" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfGoodwillTable_194779f3-12b9-4655-9325-2ed0fa9875a1_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfGoodwillTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Goodwill [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfGoodwillTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfGoodwillTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Goodwill [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfGoodwillTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfGoodwillTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable" xlink:to="lab_us-gaap_ScheduleOfGoodwillTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AmortizationOfFinancingCostsAndDiscounts_e8277598-f296-47e5-af3b-5ebfdff870c8_terseLabel_en-US" xlink:label="lab_us-gaap_AmortizationOfFinancingCostsAndDiscounts" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization of deferred financing costs and debt discount</link:label>
    <link:label id="lab_us-gaap_AmortizationOfFinancingCostsAndDiscounts_label_en-US" xlink:label="lab_us-gaap_AmortizationOfFinancingCostsAndDiscounts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization of Debt Issuance Costs and Discounts</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfFinancingCostsAndDiscounts" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfFinancingCostsAndDiscounts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AmortizationOfFinancingCostsAndDiscounts" xlink:to="lab_us-gaap_AmortizationOfFinancingCostsAndDiscounts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareTextBlock_8d18ba46-da94-4f9e-990b-1a5f0b0f5b06_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Per Common Share</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareTextBlock_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Earnings Per Share [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareTextBlock" xlink:to="lab_us-gaap_EarningsPerShareTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesOther_e3dbb85c-219e-4929-bdad-d94b50143ce9_negatedLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesOther" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other</link:label>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesOther_label_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesOther" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Liabilities, Other</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesOther" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesOther"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesOther" xlink:to="lab_us-gaap_DeferredTaxLiabilitiesOther" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillGross_908fe6d6-ba19-4b6b-b5d3-463a56f89712_periodStartLabel_en-US" xlink:label="lab_us-gaap_GoodwillGross" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill (Gross), beginning balance</link:label>
    <link:label id="lab_us-gaap_GoodwillGross_53ec763b-9629-4dae-b327-2c452a0d43f4_periodEndLabel_en-US" xlink:label="lab_us-gaap_GoodwillGross" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill (Gross), ending balance</link:label>
    <link:label id="lab_us-gaap_GoodwillGross_label_en-US" xlink:label="lab_us-gaap_GoodwillGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillGross" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillGross" xlink:to="lab_us-gaap_GoodwillGross" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_FixedChargeCoverageRatio_79c59987-03d5-40f5-aeea-873d861338bc_terseLabel_en-US" xlink:label="lab_ibp_FixedChargeCoverageRatio" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fixed charge coverage ratio</link:label>
    <link:label id="lab_ibp_FixedChargeCoverageRatio_label_en-US" xlink:label="lab_ibp_FixedChargeCoverageRatio" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fixed charge coverage ratio</link:label>
    <link:label id="lab_ibp_FixedChargeCoverageRatio_documentation_en-US" xlink:label="lab_ibp_FixedChargeCoverageRatio" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fixed charge coverage ratio.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FixedChargeCoverageRatio" xlink:href="ibp-20221231.xsd#ibp_FixedChargeCoverageRatio"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_FixedChargeCoverageRatio" xlink:to="lab_ibp_FixedChargeCoverageRatio" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsPolicyTextBlock_32b71591-b45b-4e47-999f-2e2239541aea_terseLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash and Cash Equivalents</link:label>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash and Cash Equivalents, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:to="lab_us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_9c60766d-1fe8-41b2-8619-9bae5cd01e68_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Award Type [Domain]</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Award Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GranteeStatusAxis_fec4ae15-dc72-4a82-a6f8-2341659f3971_terseLabel_en-US" xlink:label="lab_us-gaap_GranteeStatusAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Grantee Status [Axis]</link:label>
    <link:label id="lab_us-gaap_GranteeStatusAxis_label_en-US" xlink:label="lab_us-gaap_GranteeStatusAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Grantee Status [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GranteeStatusAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GranteeStatusAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GranteeStatusAxis" xlink:to="lab_us-gaap_GranteeStatusAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInIncomeTaxes_8b4179b3-2828-4da0-8deb-21a4e0b22e99_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInIncomeTaxes" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income taxes receivable/payable</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInIncomeTaxes_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInIncomeTaxes" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Income Taxes</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInIncomeTaxes" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInIncomeTaxes"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInIncomeTaxes" xlink:to="lab_us-gaap_IncreaseDecreaseInIncomeTaxes" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ReceivablesPolicyTextBlock_ab155020-7c7d-4714-b882-14e5969d3b8a_terseLabel_en-US" xlink:label="lab_us-gaap_ReceivablesPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable</link:label>
    <link:label id="lab_us-gaap_ReceivablesPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_ReceivablesPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Receivable [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReceivablesPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReceivablesPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ReceivablesPolicyTextBlock" xlink:to="lab_us-gaap_ReceivablesPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfMultiemployerPlansTableTextBlock_0dd5a540-ccbb-45b2-a13f-6b1fd16899a4_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfMultiemployerPlansTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contributions to Multiemployer Pensions and Health and Welfare Benefit Plans</link:label>
    <link:label id="lab_us-gaap_ScheduleOfMultiemployerPlansTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfMultiemployerPlansTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Multiemployer Plan [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfMultiemployerPlansTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfMultiemployerPlansTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfMultiemployerPlansTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfMultiemployerPlansTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ReceivablesLongTermContractsOrPrograms_375ce570-8f03-42e4-b3ee-251ec0a6a71c_totalLabel_en-US" xlink:label="lab_us-gaap_ReceivablesLongTermContractsOrPrograms" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total</link:label>
    <link:label id="lab_us-gaap_ReceivablesLongTermContractsOrPrograms_label_en-US" xlink:label="lab_us-gaap_ReceivablesLongTermContractsOrPrograms" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Receivables, Long-Term Contracts or Programs</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReceivablesLongTermContractsOrPrograms" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReceivablesLongTermContractsOrPrograms"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ReceivablesLongTermContractsOrPrograms" xlink:to="lab_us-gaap_ReceivablesLongTermContractsOrPrograms" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeAxis_3f7853cb-bfb5-46eb-84a1-cb6a27bd9fbc_terseLabel_en-US" xlink:label="lab_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Guaranteed Insurance Contract, Type of Guarantee [Axis]</link:label>
    <link:label id="lab_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeAxis_label_en-US" xlink:label="lab_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Guaranteed Insurance Contract, Type of Guarantee [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeAxis" xlink:to="lab_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy_2867cdbe-fc1f-4267-9919-4255409d89a6_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill</link:label>
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy_label_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill and Intangible Assets, Goodwill, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink:to="lab_us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_16a705e3-7e0c-42f1-bed7-b2ea6eeec476_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventories</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Inventory</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CustomerRelationshipsMember_e13faba8-0d84-4398-908e-0cd045edb5f2_terseLabel_en-US" xlink:label="lab_us-gaap_CustomerRelationshipsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer relationships</link:label>
    <link:label id="lab_us-gaap_CustomerRelationshipsMember_label_en-US" xlink:label="lab_us-gaap_CustomerRelationshipsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer Relationships [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerRelationshipsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerRelationshipsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CustomerRelationshipsMember" xlink:to="lab_us-gaap_CustomerRelationshipsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressCityOrTown_ee0f01fd-4a14-49fc-a07f-7f8277c6fcc6_terseLabel_en-US" xlink:label="lab_dei_EntityAddressCityOrTown" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, City or Town</link:label>
    <link:label id="lab_dei_EntityAddressCityOrTown_label_en-US" xlink:label="lab_dei_EntityAddressCityOrTown" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, City or Town</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressCityOrTown" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressCityOrTown"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressCityOrTown" xlink:to="lab_dei_EntityAddressCityOrTown" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember_ff027fec-5224-4c9d-97b5-d3f10ca7e58a_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Gain (Loss), Net, Cash Flow Hedge, Parent</link:label>
    <link:label id="lab_us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember_label_en-US" xlink:label="lab_us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Gain (Loss), Net, Cash Flow Hedge, Parent [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember" xlink:to="lab_us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingExpensesAbstract_aab56715-d8c6-421d-a793-b94914bc912a_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingExpensesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating expenses</link:label>
    <link:label id="lab_us-gaap_OperatingExpensesAbstract_label_en-US" xlink:label="lab_us-gaap_OperatingExpensesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Expenses [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingExpensesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingExpensesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingExpensesAbstract" xlink:to="lab_us-gaap_OperatingExpensesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures_9df20e88-7ac7-40ad-bf81-10375adc7172_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Issuance of awards previously classified as liability awards</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Issued During Period, Value, Restricted Stock Award, Net of Forfeitures</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" xlink:to="lab_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IntersegmentEliminationMember_eaa6a582-4e12-4f1a-a86c-22f87bb1e062_terseLabel_en-US" xlink:label="lab_us-gaap_IntersegmentEliminationMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Eliminations</link:label>
    <link:label id="lab_us-gaap_IntersegmentEliminationMember_label_en-US" xlink:label="lab_us-gaap_IntersegmentEliminationMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Intersegment Eliminations [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntersegmentEliminationMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IntersegmentEliminationMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IntersegmentEliminationMember" xlink:to="lab_us-gaap_IntersegmentEliminationMember" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_IWMember_1ed18250-91be-405e-9e3c-b50cfc8a8975_terseLabel_en-US" xlink:label="lab_ibp_IWMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">IWI</link:label>
    <link:label id="lab_ibp_IWMember_label_en-US" xlink:label="lab_ibp_IWMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">I.W. [Member]</link:label>
    <link:label id="lab_ibp_IWMember_documentation_en-US" xlink:label="lab_ibp_IWMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">I.W.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_IWMember" xlink:href="ibp-20221231.xsd#ibp_IWMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_IWMember" xlink:to="lab_ibp_IWMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementOfFinancialPositionAbstract_587fdf78-4612-49ad-a0a2-025dee37966b_terseLabel_en-US" xlink:label="lab_us-gaap_StatementOfFinancialPositionAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Financial Position [Abstract]</link:label>
    <link:label id="lab_us-gaap_StatementOfFinancialPositionAbstract_label_en-US" xlink:label="lab_us-gaap_StatementOfFinancialPositionAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Financial Position [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract" xlink:to="lab_us-gaap_StatementOfFinancialPositionAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_InterestRateSwapThreeEffectiveDecember312021Member_c8e1e10e-b693-4bfb-808e-c7410ea4b4ae_terseLabel_en-US" xlink:label="lab_ibp_InterestRateSwapThreeEffectiveDecember312021Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest Rate Swap Three, Effective December 31, 2021</link:label>
    <link:label id="lab_ibp_InterestRateSwapThreeEffectiveDecember312021Member_label_en-US" xlink:label="lab_ibp_InterestRateSwapThreeEffectiveDecember312021Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest Rate Swap Three, Effective December 31, 2021 [Member]</link:label>
    <link:label id="lab_ibp_InterestRateSwapThreeEffectiveDecember312021Member_documentation_en-US" xlink:label="lab_ibp_InterestRateSwapThreeEffectiveDecember312021Member" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest Rate Swap Three, Effective December 31, 2021</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_InterestRateSwapThreeEffectiveDecember312021Member" xlink:href="ibp-20221231.xsd#ibp_InterestRateSwapThreeEffectiveDecember312021Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_InterestRateSwapThreeEffectiveDecember312021Member" xlink:to="lab_ibp_InterestRateSwapThreeEffectiveDecember312021Member" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_UnrealizedGainLossOnDerivatives_0b9efaf0-750b-47f8-a736-804c464bf785_terseLabel_en-US" xlink:label="lab_us-gaap_UnrealizedGainLossOnDerivatives" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unrealized gain (loss) on derivatives</link:label>
    <link:label id="lab_us-gaap_UnrealizedGainLossOnDerivatives_label_en-US" xlink:label="lab_us-gaap_UnrealizedGainLossOnDerivatives" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unrealized Gain (Loss) on Derivatives</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrealizedGainLossOnDerivatives" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrealizedGainLossOnDerivatives"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrealizedGainLossOnDerivatives" xlink:to="lab_us-gaap_UnrealizedGainLossOnDerivatives" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredFinanceCostsNet_1cc6bb68-0bf9-43f2-aa9c-a025292485fc_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredFinanceCostsNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred financing costs</link:label>
    <link:label id="lab_us-gaap_DeferredFinanceCostsNet_216a2757-71a0-476b-b5b9-e85c48a88e43_verboseLabel_en-US" xlink:label="lab_us-gaap_DeferredFinanceCostsNet" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred financing costs and debt issuance costs, net</link:label>
    <link:label id="lab_us-gaap_DeferredFinanceCostsNet_label_en-US" xlink:label="lab_us-gaap_DeferredFinanceCostsNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Issuance Costs, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredFinanceCostsNet" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredFinanceCostsNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredFinanceCostsNet" xlink:to="lab_us-gaap_DeferredFinanceCostsNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_932e65be-c9b9-4a7e-ae7e-61aba4c3a9a5_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Segment Reporting Information, by Segment [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Segment Reporting Information, by Segment [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_AuditorName_796c1015-85dd-4a77-a5bc-8e1e9c7075e7_terseLabel_en-US" xlink:label="lab_dei_AuditorName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Auditor Name</link:label>
    <link:label id="lab_dei_AuditorName_label_en-US" xlink:label="lab_dei_AuditorName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Auditor Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AuditorName" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AuditorName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_AuditorName" xlink:to="lab_dei_AuditorName" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PensionPlansDefinedBenefitMember_e42aaafc-d50d-40c2-aad2-00e7016911b9_terseLabel_en-US" xlink:label="lab_us-gaap_PensionPlansDefinedBenefitMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Pension plans</link:label>
    <link:label id="lab_us-gaap_PensionPlansDefinedBenefitMember_label_en-US" xlink:label="lab_us-gaap_PensionPlansDefinedBenefitMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Pension Plan [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionPlansDefinedBenefitMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PensionPlansDefinedBenefitMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PensionPlansDefinedBenefitMember" xlink:to="lab_us-gaap_PensionPlansDefinedBenefitMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_7db142cc-c2d7-47f8-9e2f-3ce87d277ba5_terseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Adjustments for New Accounting Pronouncements [Axis]</link:label>
    <link:label id="lab_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_label_en-US" xlink:label="lab_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounting Standards Update [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="lab_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract_96331938-f946-477f-bb58-1ee24a3f3da4_verboseLabel_en-US" xlink:label="lab_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">AOCI Including Portion Attributable to Noncontrolling Interest, Net of Tax [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract_label_en-US" xlink:label="lab_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">AOCI Including Portion Attributable to Noncontrolling Interest, Net of Tax [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract" xlink:to="lab_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WorkersCompensationInsuranceMember_f1dd1129-1a98-451b-81fd-f5998c24e7e3_terseLabel_en-US" xlink:label="lab_us-gaap_WorkersCompensationInsuranceMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Workers' Compensation Insurance</link:label>
    <link:label id="lab_us-gaap_WorkersCompensationInsuranceMember_label_en-US" xlink:label="lab_us-gaap_WorkersCompensationInsuranceMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Workers' Compensation Insurance [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WorkersCompensationInsuranceMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WorkersCompensationInsuranceMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WorkersCompensationInsuranceMember" xlink:to="lab_us-gaap_WorkersCompensationInsuranceMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TreasuryStockCommonShares_7b7b2d7b-073b-4974-91e5-ed6e683c0439_terseLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockCommonShares" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Treasury Stock (in shares)</link:label>
    <link:label id="lab_us-gaap_TreasuryStockCommonShares_64cec09f-38e2-4ad4-b910-83d6bf8ad7f6_negatedPeriodStartLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockCommonShares" xlink:role="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">BALANCE, Treasury Stock, Shares</link:label>
    <link:label id="lab_us-gaap_TreasuryStockCommonShares_886ae33f-e554-4afe-963f-7692a6ed7b50_negatedPeriodEndLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockCommonShares" xlink:role="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">BALANCE, Treasury Stock, Shares</link:label>
    <link:label id="lab_us-gaap_TreasuryStockCommonShares_label_en-US" xlink:label="lab_us-gaap_TreasuryStockCommonShares" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Treasury Stock, Common, Shares</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockCommonShares" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockCommonShares"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockCommonShares" xlink:to="lab_us-gaap_TreasuryStockCommonShares" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesDeferredExpenseReservesAndAccruals_92e3db0a-7289-4094-941a-bc02a3befb55_negatedLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesDeferredExpenseReservesAndAccruals" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued liabilities and allowances</link:label>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesDeferredExpenseReservesAndAccruals_label_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesDeferredExpenseReservesAndAccruals" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Liabilities, Deferred Expense, Reserves and Accruals</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesDeferredExpenseReservesAndAccruals" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesDeferredExpenseReservesAndAccruals"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesDeferredExpenseReservesAndAccruals" xlink:to="lab_us-gaap_DeferredTaxLiabilitiesDeferredExpenseReservesAndAccruals" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_IncomeTaxLineItems_ea571173-5174-4da9-9b68-a6e322ca1ceb_terseLabel_en-US" xlink:label="lab_ibp_IncomeTaxLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax [Line Items]</link:label>
    <link:label id="lab_ibp_IncomeTaxLineItems_label_en-US" xlink:label="lab_ibp_IncomeTaxLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax [Line Items]</link:label>
    <link:label id="lab_ibp_IncomeTaxLineItems_documentation_en-US" xlink:label="lab_ibp_IncomeTaxLineItems" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_IncomeTaxLineItems" xlink:href="ibp-20221231.xsd#ibp_IncomeTaxLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_IncomeTaxLineItems" xlink:to="lab_ibp_IncomeTaxLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AllowanceForCreditLossesTextBlock_5c7aabe5-247a-476e-9881-7e5e874d88ad_terseLabel_en-US" xlink:label="lab_us-gaap_AllowanceForCreditLossesTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Credit Losses</link:label>
    <link:label id="lab_us-gaap_AllowanceForCreditLossesTextBlock_label_en-US" xlink:label="lab_us-gaap_AllowanceForCreditLossesTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Allowance for Credit Losses [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForCreditLossesTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForCreditLossesTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllowanceForCreditLossesTextBlock" xlink:to="lab_us-gaap_AllowanceForCreditLossesTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentPeriodicPaymentPrincipal_905c5937-c4a6-4861-a37c-74f0729b8191_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentPeriodicPaymentPrincipal" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Quarterly principal payments</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentPeriodicPaymentPrincipal_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentPeriodicPaymentPrincipal" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Periodic Payment, Principal</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentPeriodicPaymentPrincipal" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentPeriodicPaymentPrincipal"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentPeriodicPaymentPrincipal" xlink:to="lab_us-gaap_DebtInstrumentPeriodicPaymentPrincipal" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfMalpracticeInsuranceTypeAndTierIdentifierAxis_df50b2e5-d72a-429e-88f6-139f16d4a43b_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfMalpracticeInsuranceTypeAndTierIdentifierAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Insurance Type and Tier Identifier [Axis]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfMalpracticeInsuranceTypeAndTierIdentifierAxis_label_en-US" xlink:label="lab_us-gaap_ScheduleOfMalpracticeInsuranceTypeAndTierIdentifierAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Insurance Type and Tier Identifier [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfMalpracticeInsuranceTypeAndTierIdentifierAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfMalpracticeInsuranceTypeAndTierIdentifierAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfMalpracticeInsuranceTypeAndTierIdentifierAxis" xlink:to="lab_us-gaap_ScheduleOfMalpracticeInsuranceTypeAndTierIdentifierAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OciCashFlowHedgeReclassificationForDiscontinuanceStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration_c4368b6a-094a-48ee-98cd-ba077f52ed6f_terseLabel_en-US" xlink:label="lab_us-gaap_OciCashFlowHedgeReclassificationForDiscontinuanceStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">OCI, Cash Flow Hedge, Reclassification for Discontinuance, Statement of Income or Comprehensive Income [Extensible Enumeration]</link:label>
    <link:label id="lab_us-gaap_OciCashFlowHedgeReclassificationForDiscontinuanceStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration_label_en-US" xlink:label="lab_us-gaap_OciCashFlowHedgeReclassificationForDiscontinuanceStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">OCI, Cash Flow Hedge, Reclassification for Discontinuance, Statement of Income or Comprehensive Income [Extensible Enumeration]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OciCashFlowHedgeReclassificationForDiscontinuanceStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OciCashFlowHedgeReclassificationForDiscontinuanceStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OciCashFlowHedgeReclassificationForDiscontinuanceStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration" xlink:to="lab_us-gaap_OciCashFlowHedgeReclassificationForDiscontinuanceStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_da1af5dc-f867-4848-b38b-56d694101091_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative Instruments and Hedging Activities Disclosures [Table]</link:label>
    <link:label id="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative Instruments and Hedging Activities Disclosures [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable" xlink:to="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsFairValueDisclosure_fde72eac-d5a3-4326-ab2a-ead89a0dcab3_terseLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsFairValueDisclosure" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash equivalents</link:label>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsFairValueDisclosure_label_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsFairValueDisclosure" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash and Cash Equivalents, Fair Value Disclosure</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsFairValueDisclosure" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsFairValueDisclosure"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsFairValueDisclosure" xlink:to="lab_us-gaap_CashAndCashEquivalentsFairValueDisclosure" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccruedInsuranceCurrent_86412d05-2434-401c-9fe3-98b2b1b3188f_terseLabel_en-US" xlink:label="lab_us-gaap_AccruedInsuranceCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Included in other current liabilities</link:label>
    <link:label id="lab_us-gaap_AccruedInsuranceCurrent_label_en-US" xlink:label="lab_us-gaap_AccruedInsuranceCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued Insurance, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedInsuranceCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedInsuranceCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedInsuranceCurrent" xlink:to="lab_us-gaap_AccruedInsuranceCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LondonInterbankOfferedRateLIBORMember_b2d007b0-0922-4a8f-95a1-34a984d23891_terseLabel_en-US" xlink:label="lab_us-gaap_LondonInterbankOfferedRateLIBORMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">LIBOR</link:label>
    <link:label id="lab_us-gaap_LondonInterbankOfferedRateLIBORMember_label_en-US" xlink:label="lab_us-gaap_LondonInterbankOfferedRateLIBORMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">London Interbank Offered Rate (LIBOR) [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LondonInterbankOfferedRateLIBORMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LondonInterbankOfferedRateLIBORMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LondonInterbankOfferedRateLIBORMember" xlink:to="lab_us-gaap_LondonInterbankOfferedRateLIBORMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventsAbstract_label_en-US" xlink:label="lab_us-gaap_SubsequentEventsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Events [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventsAbstract" xlink:to="lab_us-gaap_SubsequentEventsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax_48479dbf-d2f5-45d2-97e3-52f38759da3e_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net change in cash flow hedges, net of tax</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), after Reclassification and Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock_02ef8102-a9c9-4cd6-b5bc-ded96b9314ea_terseLabel_en-US" xlink:label="lab_us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash and Cash Equivalents</link:label>
    <link:label id="lab_us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Investments in Debt and Marketable Equity Securities (and Certain Trading Assets) Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock" xlink:to="lab_us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_SwapOffMarketTermsCapitalized_1f41adff-00ef-4af1-acd2-f33031c20976_terseLabel_en-US" xlink:label="lab_ibp_SwapOffMarketTermsCapitalized" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Capitalized off-market terms</link:label>
    <link:label id="lab_ibp_SwapOffMarketTermsCapitalized_label_en-US" xlink:label="lab_ibp_SwapOffMarketTermsCapitalized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Swap Off-Market Terms Capitalized</link:label>
    <link:label id="lab_ibp_SwapOffMarketTermsCapitalized_documentation_en-US" xlink:label="lab_ibp_SwapOffMarketTermsCapitalized" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Swap Off-Market Terms Capitalized</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_SwapOffMarketTermsCapitalized" xlink:href="ibp-20221231.xsd#ibp_SwapOffMarketTermsCapitalized"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_SwapOffMarketTermsCapitalized" xlink:to="lab_ibp_SwapOffMarketTermsCapitalized" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_35296c62-7e7c-440d-b4fb-92393ed947a3_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">State</link:label>
    <link:label id="lab_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_label_en-US" xlink:label="lab_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred State and Local Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:to="lab_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AmortizationOfIntangibleAssets_10987a71-5144-4113-a5aa-9c92d28be781_terseLabel_en-US" xlink:label="lab_us-gaap_AmortizationOfIntangibleAssets" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization</link:label>
    <link:label id="lab_us-gaap_AmortizationOfIntangibleAssets_f3202dda-ba4c-4561-8c2c-3d32eef1a644_verboseLabel_en-US" xlink:label="lab_us-gaap_AmortizationOfIntangibleAssets" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization of intangibles</link:label>
    <link:label id="lab_us-gaap_AmortizationOfIntangibleAssets_label_en-US" xlink:label="lab_us-gaap_AmortizationOfIntangibleAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization of Intangible Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfIntangibleAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AmortizationOfIntangibleAssets" xlink:to="lab_us-gaap_AmortizationOfIntangibleAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_SeniorSecuredCreditAgreementMember_812a0be4-2611-4f1e-b8b6-1369ffaac04c_terseLabel_en-US" xlink:label="lab_ibp_SeniorSecuredCreditAgreementMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Senior Secured Credit Agreement</link:label>
    <link:label id="lab_ibp_SeniorSecuredCreditAgreementMember_label_en-US" xlink:label="lab_ibp_SeniorSecuredCreditAgreementMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Senior Secured Credit Agreement [Member]</link:label>
    <link:label id="lab_ibp_SeniorSecuredCreditAgreementMember_documentation_en-US" xlink:label="lab_ibp_SeniorSecuredCreditAgreementMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Senior Secured Credit Agreement [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_SeniorSecuredCreditAgreementMember" xlink:href="ibp-20221231.xsd#ibp_SeniorSecuredCreditAgreementMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_SeniorSecuredCreditAgreementMember" xlink:to="lab_ibp_SeniorSecuredCreditAgreementMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfGoodwillTextBlock_4d02840f-cf04-457d-be47-9f6ac2a5e0da_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfGoodwillTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary of Change in Carrying Amount of Goodwill</link:label>
    <link:label id="lab_us-gaap_ScheduleOfGoodwillTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfGoodwillTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Goodwill [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfGoodwillTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfGoodwillTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfGoodwillTextBlock" xlink:to="lab_us-gaap_ScheduleOfGoodwillTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InterestPaidNet_47806b08-004c-436a-ab20-356ebf75af46_terseLabel_en-US" xlink:label="lab_us-gaap_InterestPaidNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest</link:label>
    <link:label id="lab_us-gaap_InterestPaidNet_label_en-US" xlink:label="lab_us-gaap_InterestPaidNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest Paid, Excluding Capitalized Interest, Operating Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestPaidNet" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestPaidNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InterestPaidNet" xlink:to="lab_us-gaap_InterestPaidNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_29bcd2a3-c430-4fe4-a093-ae560172cc4b_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2025</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year Three</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryPolicyTextBlock_efb0980d-2ff2-487f-ae92-87f58c502514_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventories</link:label>
    <link:label id="lab_us-gaap_InventoryPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_InventoryPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryPolicyTextBlock" xlink:to="lab_us-gaap_InventoryPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SellingExpense_d1d7e3da-cb13-4923-9534-54d1e7b91b9e_terseLabel_en-US" xlink:label="lab_us-gaap_SellingExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Selling</link:label>
    <link:label id="lab_us-gaap_SellingExpense_label_en-US" xlink:label="lab_us-gaap_SellingExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Selling Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SellingExpense" xlink:to="lab_us-gaap_SellingExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskTypeDomain_dfdfdc62-7a90-46ea-a830-1264abbd46a3_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Type [Domain]</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskTypeDomain_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain" xlink:to="lab_us-gaap_ConcentrationRiskTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TreasuryStockMember_3be96ae6-8e8d-4adf-b262-194fad55edc2_terseLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Treasury Stock</link:label>
    <link:label id="lab_us-gaap_TreasuryStockMember_label_en-US" xlink:label="lab_us-gaap_TreasuryStockMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Treasury Stock [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockMember" xlink:to="lab_us-gaap_TreasuryStockMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockholdersEquity_c621c416-79ab-48b3-b188-0402d0fb9914_totalLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total stockholders&#8217; equity</link:label>
    <link:label id="lab_us-gaap_StockholdersEquity_9139ab53-fa7c-421f-b215-445fc2dea69a_periodStartLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated loss at beginning of period</link:label>
    <link:label id="lab_us-gaap_StockholdersEquity_0fd8a6e1-4a01-4e19-aae3-de2544272ade_periodEndLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated gain (loss) at end of period</link:label>
    <link:label id="lab_us-gaap_StockholdersEquity_78812ef5-a11d-4c83-b28b-8b8f97ffff67_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stockholders' equity</link:label>
    <link:label id="lab_us-gaap_StockholdersEquity_label_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stockholders' Equity Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquity" xlink:to="lab_us-gaap_StockholdersEquity" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_1cdf8024-1f44-417b-a050-502649d99f09_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivatives and Hedging Activities</link:label>
    <link:label id="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative Instruments and Hedging Activities Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xlink:to="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_DirectorMember_677e9040-c63e-45c7-9bfe-6332923a4929_verboseLabel_en-US" xlink:label="lab_srt_DirectorMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Directors</link:label>
    <link:label id="lab_srt_DirectorMember_label_en-US" xlink:label="lab_srt_DirectorMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Director [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_DirectorMember" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_DirectorMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_DirectorMember" xlink:to="lab_srt_DirectorMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_68a6f451-3e9e-410e-9a12-3ffd6d17779a_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Forfeited/Cancelled (in USD per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeitures, Weighted Average Grant Date Fair Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_VestingDomain_9671a39e-778e-4835-b56f-4909b805c5b4_terseLabel_en-US" xlink:label="lab_us-gaap_VestingDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vesting [Domain]</link:label>
    <link:label id="lab_us-gaap_VestingDomain_label_en-US" xlink:label="lab_us-gaap_VestingDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vesting [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VestingDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VestingDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_VestingDomain" xlink:to="lab_us-gaap_VestingDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsOther_fcae2db1-6a4b-4589-98de-1681a91b4166_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsOther" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsOther_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsOther" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Other</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsOther" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOther"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsOther" xlink:to="lab_us-gaap_DeferredTaxAssetsOther" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_PerformanceBasedStockUnitsMember_1781b8f0-0e70-4ad5-882a-ec1d547c981f_terseLabel_en-US" xlink:label="lab_ibp_PerformanceBasedStockUnitsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Performance-Based Restricted Stock Units</link:label>
    <link:label id="lab_ibp_PerformanceBasedStockUnitsMember_label_en-US" xlink:label="lab_ibp_PerformanceBasedStockUnitsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Performance Based Stock Units [Member]</link:label>
    <link:label id="lab_ibp_PerformanceBasedStockUnitsMember_documentation_en-US" xlink:label="lab_ibp_PerformanceBasedStockUnitsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Performance Based Stock Units [Member].</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_PerformanceBasedStockUnitsMember" xlink:href="ibp-20221231.xsd#ibp_PerformanceBasedStockUnitsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_PerformanceBasedStockUnitsMember" xlink:to="lab_ibp_PerformanceBasedStockUnitsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_55034506-fed9-4470-ac81-09e4011b8fd8_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Amortization</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets, Accumulated Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_SwingLineLoansMember_321fae5b-3844-469e-8ee1-a96d755562a4_terseLabel_en-US" xlink:label="lab_ibp_SwingLineLoansMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Swing Line Loans</link:label>
    <link:label id="lab_ibp_SwingLineLoansMember_label_en-US" xlink:label="lab_ibp_SwingLineLoansMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Swing Line Loans [Member]</link:label>
    <link:label id="lab_ibp_SwingLineLoansMember_documentation_en-US" xlink:label="lab_ibp_SwingLineLoansMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Swing Line Loans.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_SwingLineLoansMember" xlink:href="ibp-20221231.xsd#ibp_SwingLineLoansMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_SwingLineLoansMember" xlink:to="lab_ibp_SwingLineLoansMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_59e942ae-534d-414c-8505-8d380b975582_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2025</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, Year Three</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock_7e5f9210-3995-4e80-aa22-9ff52bcc8537_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Change in Fair Value of the Contingent Consideration</link:label>
    <link:label id="lab_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock_label_en-US" xlink:label="lab_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" xlink:to="lab_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive_a0a55b54-d3ed-4a3a-bf2b-3d17be1997ff_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2027</link:label>
    <link:label id="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive_label_en-US" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Term Debt, Maturity, Year Five</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:to="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsOfDividends_b717e16d-903c-46c7-8f2e-c8054c55fd3c_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_PaymentsOfDividends" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Dividends paid</link:label>
    <link:label id="lab_us-gaap_PaymentsOfDividends_a2801ea8-3d28-4016-9597-19cc3573f96e_terseLabel_en-US" xlink:label="lab_us-gaap_PaymentsOfDividends" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Dividends paid</link:label>
    <link:label id="lab_us-gaap_PaymentsOfDividends_label_en-US" xlink:label="lab_us-gaap_PaymentsOfDividends" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments of Dividends</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfDividends" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfDividends"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsOfDividends" xlink:to="lab_us-gaap_PaymentsOfDividends" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RetainedEarningsMember_defb3101-ddd3-4d24-a155-49b19b83734a_terseLabel_en-US" xlink:label="lab_us-gaap_RetainedEarningsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retained Earnings</link:label>
    <link:label id="lab_us-gaap_RetainedEarningsMember_label_en-US" xlink:label="lab_us-gaap_RetainedEarningsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retained Earnings [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetainedEarningsMember" xlink:to="lab_us-gaap_RetainedEarningsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SegmentReportingInformationLineItems_966e61a4-8bad-4e09-a402-7f90a7588be6_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentReportingInformationLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segment Reporting Information [Line Items]</link:label>
    <link:label id="lab_us-gaap_SegmentReportingInformationLineItems_label_en-US" xlink:label="lab_us-gaap_SegmentReportingInformationLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segment Reporting Information [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingInformationLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems" xlink:to="lab_us-gaap_SegmentReportingInformationLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DividendsCommonStockCash_e8bcb73c-9e4f-4120-83d1-17e2c2159d24_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DividendsCommonStockCash" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Dividends Declared ($2.16 per share)</link:label>
    <link:label id="lab_us-gaap_DividendsCommonStockCash_f6eb1864-d4e4-449b-9e2b-5c6863513461_terseLabel_en-US" xlink:label="lab_us-gaap_DividendsCommonStockCash" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amount Declared</link:label>
    <link:label id="lab_us-gaap_DividendsCommonStockCash_label_en-US" xlink:label="lab_us-gaap_DividendsCommonStockCash" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Dividends, Common Stock, Cash</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsCommonStockCash" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DividendsCommonStockCash"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DividendsCommonStockCash" xlink:to="lab_us-gaap_DividendsCommonStockCash" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_SurrenderOfCommonStockAwardsByEmployees_bfc04c0f-ca80-433a-9e08-424de490f553_negatedLabel_en-US" xlink:label="lab_ibp_SurrenderOfCommonStockAwardsByEmployees" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Surrender of common stock awards by employees</link:label>
    <link:label id="lab_ibp_SurrenderOfCommonStockAwardsByEmployees_label_en-US" xlink:label="lab_ibp_SurrenderOfCommonStockAwardsByEmployees" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Surrender Of Common Stock Awards By Employees</link:label>
    <link:label id="lab_ibp_SurrenderOfCommonStockAwardsByEmployees_documentation_en-US" xlink:label="lab_ibp_SurrenderOfCommonStockAwardsByEmployees" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Surrender of common stock awards by employees.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_SurrenderOfCommonStockAwardsByEmployees" xlink:href="ibp-20221231.xsd#ibp_SurrenderOfCommonStockAwardsByEmployees"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_SurrenderOfCommonStockAwardsByEmployees" xlink:to="lab_ibp_SurrenderOfCommonStockAwardsByEmployees" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeaseCost_ff2f531f-2384-4a55-9d09-06b05967f66f_totalLabel_en-US" xlink:label="lab_us-gaap_LeaseCost" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total lease costs</link:label>
    <link:label id="lab_us-gaap_LeaseCost_label_en-US" xlink:label="lab_us-gaap_LeaseCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lease, Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCost" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeaseCost" xlink:to="lab_us-gaap_LeaseCost" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockMember_8b6e031d-a0ee-47bf-8843-fae21eb42fc5_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock</link:label>
    <link:label id="lab_us-gaap_CommonStockMember_label_en-US" xlink:label="lab_us-gaap_CommonStockMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockMember" xlink:to="lab_us-gaap_CommonStockMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_MoneyMarketFundsAtCarryingValue_55209b3a-c8ee-424a-a0d7-c993268a334b_terseLabel_en-US" xlink:label="lab_us-gaap_MoneyMarketFundsAtCarryingValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash and cash equivalents</link:label>
    <link:label id="lab_us-gaap_MoneyMarketFundsAtCarryingValue_label_en-US" xlink:label="lab_us-gaap_MoneyMarketFundsAtCarryingValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Money Market Funds, at Carrying Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MoneyMarketFundsAtCarryingValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MoneyMarketFundsAtCarryingValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MoneyMarketFundsAtCarryingValue" xlink:to="lab_us-gaap_MoneyMarketFundsAtCarryingValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NumberOfReportableSegments_14e2f9b2-40ee-4f4b-905c-d6ce77263164_terseLabel_en-US" xlink:label="lab_us-gaap_NumberOfReportableSegments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of reportable segment</link:label>
    <link:label id="lab_us-gaap_NumberOfReportableSegments_label_en-US" xlink:label="lab_us-gaap_NumberOfReportableSegments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of Reportable Segments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfReportableSegments" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NumberOfReportableSegments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NumberOfReportableSegments" xlink:to="lab_us-gaap_NumberOfReportableSegments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeaseCostTableTextBlock_1c5ff11e-43e8-4c79-9a79-1764ef1e59d6_terseLabel_en-US" xlink:label="lab_us-gaap_LeaseCostTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Lease Costs for Finance and Operating Leases</link:label>
    <link:label id="lab_us-gaap_LeaseCostTableTextBlock_label_en-US" xlink:label="lab_us-gaap_LeaseCostTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lease, Cost [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCostTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseCostTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeaseCostTableTextBlock" xlink:to="lab_us-gaap_LeaseCostTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_fecef137-ac74-431c-a898-ed9f7b2d163f_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock shares available for issuance (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Available for Grant</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationContingentConsiderationLiability_bcad9cc9-d7df-4ee0-8fc6-49146d5a5749_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationContingentConsiderationLiability" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contingent consideration</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationContingentConsiderationLiability_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationContingentConsiderationLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Contingent Consideration, Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationLiability" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationContingentConsiderationLiability"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationContingentConsiderationLiability" xlink:to="lab_us-gaap_BusinessCombinationContingentConsiderationLiability" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_AccountingPoliciesAndGeneralInformationLineItems_f0164022-8f03-43ad-bea9-1a7c35fbd751_terseLabel_en-US" xlink:label="lab_ibp_AccountingPoliciesAndGeneralInformationLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounting Policies and General Information [Line Items]</link:label>
    <link:label id="lab_ibp_AccountingPoliciesAndGeneralInformationLineItems_label_en-US" xlink:label="lab_ibp_AccountingPoliciesAndGeneralInformationLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounting Policies and General Information [Line Items]</link:label>
    <link:label id="lab_ibp_AccountingPoliciesAndGeneralInformationLineItems_documentation_en-US" xlink:label="lab_ibp_AccountingPoliciesAndGeneralInformationLineItems" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounting Policies and General Information [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems" xlink:href="ibp-20221231.xsd#ibp_AccountingPoliciesAndGeneralInformationLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems" xlink:to="lab_ibp_AccountingPoliciesAndGeneralInformationLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementTable_131b1e18-ae15-4e6b-8344-b5c90a23a97d_terseLabel_en-US" xlink:label="lab_us-gaap_StatementTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement [Table]</link:label>
    <link:label id="lab_us-gaap_StatementTable_label_en-US" xlink:label="lab_us-gaap_StatementTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementTable" xlink:to="lab_us-gaap_StatementTable" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_DebtInstrumentMaximumCashProceeds_baa7d0c4-e54e-4d9d-95bc-7edef7c8d694_terseLabel_en-US" xlink:label="lab_ibp_DebtInstrumentMaximumCashProceeds" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Maximum cash proceeds</link:label>
    <link:label id="lab_ibp_DebtInstrumentMaximumCashProceeds_label_en-US" xlink:label="lab_ibp_DebtInstrumentMaximumCashProceeds" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Maximum Cash Proceeds</link:label>
    <link:label id="lab_ibp_DebtInstrumentMaximumCashProceeds_documentation_en-US" xlink:label="lab_ibp_DebtInstrumentMaximumCashProceeds" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Maximum Cash Proceeds</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DebtInstrumentMaximumCashProceeds" xlink:href="ibp-20221231.xsd#ibp_DebtInstrumentMaximumCashProceeds"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_DebtInstrumentMaximumCashProceeds" xlink:to="lab_ibp_DebtInstrumentMaximumCashProceeds" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_7cf7ef4b-22d5-41d2-8871-b9979c6911b8_verboseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vested (in USD per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Weighted Average Grant Date Fair Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesInvestments_011172d3-df18-42f5-9d97-02574d26cd5f_negatedLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesInvestments" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Investment in partnership</link:label>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesInvestments_label_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesInvestments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Liabilities, Investments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesInvestments" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesInvestments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesInvestments" xlink:to="lab_us-gaap_DeferredTaxLiabilitiesInvestments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LetterOfCreditMember_416bb075-1494-4566-a3af-d43ea059f281_terseLabel_en-US" xlink:label="lab_us-gaap_LetterOfCreditMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Letter of Credit</link:label>
    <link:label id="lab_us-gaap_LetterOfCreditMember_label_en-US" xlink:label="lab_us-gaap_LetterOfCreditMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Letter of Credit [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LetterOfCreditMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LetterOfCreditMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LetterOfCreditMember" xlink:to="lab_us-gaap_LetterOfCreditMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FurnitureAndFixturesMember_f072f911-05bd-4193-9611-f814cd090a61_terseLabel_en-US" xlink:label="lab_us-gaap_FurnitureAndFixturesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Furniture, fixtures and equipment</link:label>
    <link:label id="lab_us-gaap_FurnitureAndFixturesMember_label_en-US" xlink:label="lab_us-gaap_FurnitureAndFixturesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Furniture and Fixtures [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FurnitureAndFixturesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FurnitureAndFixturesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FurnitureAndFixturesMember" xlink:to="lab_us-gaap_FurnitureAndFixturesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_1488d171-7755-44ca-bca9-07cbd35e0c65_verboseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease obligations</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_b51bc3c3-fd32-44bc-8f11-1cdeb9c5c256_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term lease obligations</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Liability, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:to="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_RangeAxis_7509fe53-7af3-4bb2-8853-b5048a232bc9_terseLabel_en-US" xlink:label="lab_srt_RangeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Range [Axis]</link:label>
    <link:label id="lab_srt_RangeAxis_label_en-US" xlink:label="lab_srt_RangeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statistical Measurement [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RangeAxis" xlink:to="lab_srt_RangeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TreasuryStockSharesAcquired_799c7c33-1f42-4f43-afad-36871830b0f2_negatedLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockSharesAcquired" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock repurchase (in shares)</link:label>
    <link:label id="lab_us-gaap_TreasuryStockSharesAcquired_88ce51af-002f-404d-8c0e-e8649f97085a_terseLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockSharesAcquired" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock repurchase (in shares)</link:label>
    <link:label id="lab_us-gaap_TreasuryStockSharesAcquired_label_en-US" xlink:label="lab_us-gaap_TreasuryStockSharesAcquired" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Treasury Stock, Shares, Acquired</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockSharesAcquired" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockSharesAcquired"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockSharesAcquired" xlink:to="lab_us-gaap_TreasuryStockSharesAcquired" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeaseholdImprovementsMember_231bbb45-b3d1-4faa-8846-28c788ffe8a0_terseLabel_en-US" xlink:label="lab_us-gaap_LeaseholdImprovementsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leasehold improvements</link:label>
    <link:label id="lab_us-gaap_LeaseholdImprovementsMember_label_en-US" xlink:label="lab_us-gaap_LeaseholdImprovementsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leasehold Improvements [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseholdImprovementsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseholdImprovementsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeaseholdImprovementsMember" xlink:to="lab_us-gaap_LeaseholdImprovementsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GranteeStatusDomain_985e111a-5321-497c-9696-f4b6cfc72f5e_terseLabel_en-US" xlink:label="lab_us-gaap_GranteeStatusDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Grantee Status [Domain]</link:label>
    <link:label id="lab_us-gaap_GranteeStatusDomain_label_en-US" xlink:label="lab_us-gaap_GranteeStatusDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Grantee Status [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GranteeStatusDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GranteeStatusDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GranteeStatusDomain" xlink:to="lab_us-gaap_GranteeStatusDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsReceivableNetCurrent_20c6294a-1cae-445a-8fd4-bb51fb0bf5a4_verboseLabel_en-US" xlink:label="lab_us-gaap_AccountsReceivableNetCurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts receivable (less allowance for credit losses of $9,549 and $8,717 at December&#160;31, 2022 and 2021, respectively)</link:label>
    <link:label id="lab_us-gaap_AccountsReceivableNetCurrent_label_en-US" xlink:label="lab_us-gaap_AccountsReceivableNetCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable, after Allowance for Credit Loss, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsReceivableNetCurrent" xlink:to="lab_us-gaap_AccountsReceivableNetCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_FinanceLeaseExecutoryCosts_63c0752f-f12d-450e-99e1-e3142e3c3a47_negatedTerseLabel_en-US" xlink:label="lab_ibp_FinanceLeaseExecutoryCosts" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Less: Amounts representing executory costs</link:label>
    <link:label id="lab_ibp_FinanceLeaseExecutoryCosts_label_en-US" xlink:label="lab_ibp_FinanceLeaseExecutoryCosts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease Executory Costs</link:label>
    <link:label id="lab_ibp_FinanceLeaseExecutoryCosts_documentation_en-US" xlink:label="lab_ibp_FinanceLeaseExecutoryCosts" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Represents executory costs of finance leases.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FinanceLeaseExecutoryCosts" xlink:href="ibp-20221231.xsd#ibp_FinanceLeaseExecutoryCosts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_FinanceLeaseExecutoryCosts" xlink:to="lab_ibp_FinanceLeaseExecutoryCosts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementEquityComponentsAxis_5584b194-f834-4619-87ef-b414e0ce10f6_terseLabel_en-US" xlink:label="lab_us-gaap_StatementEquityComponentsAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity Components [Axis]</link:label>
    <link:label id="lab_us-gaap_StatementEquityComponentsAxis_label_en-US" xlink:label="lab_us-gaap_StatementEquityComponentsAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity Components [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementEquityComponentsAxis" xlink:to="lab_us-gaap_StatementEquityComponentsAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_RepairAndRemodelMember_4ba41ade-ebae-4f01-9a4b-968c22bb1481_terseLabel_en-US" xlink:label="lab_ibp_RepairAndRemodelMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Repair and remodel</link:label>
    <link:label id="lab_ibp_RepairAndRemodelMember_label_en-US" xlink:label="lab_ibp_RepairAndRemodelMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Repair and Remodel[Member]</link:label>
    <link:label id="lab_ibp_RepairAndRemodelMember_documentation_en-US" xlink:label="lab_ibp_RepairAndRemodelMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Repair and remodel.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_RepairAndRemodelMember" xlink:href="ibp-20221231.xsd#ibp_RepairAndRemodelMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_RepairAndRemodelMember" xlink:to="lab_ibp_RepairAndRemodelMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DividendsPayableTable_5dc9656b-e8c9-42ad-a6be-992a08fbce66_terseLabel_en-US" xlink:label="lab_us-gaap_DividendsPayableTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Dividends Payable [Table]</link:label>
    <link:label id="lab_us-gaap_DividendsPayableTable_label_en-US" xlink:label="lab_us-gaap_DividendsPayableTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Dividends Payable [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsPayableTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DividendsPayableTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DividendsPayableTable" xlink:to="lab_us-gaap_DividendsPayableTable" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_RestatementDomain_95e47c94-4b47-4271-936c-d9f51003bffa_terseLabel_en-US" xlink:label="lab_srt_RestatementDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revision of Prior Period [Domain]</link:label>
    <link:label id="lab_srt_RestatementDomain_label_en-US" xlink:label="lab_srt_RestatementDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revision of Prior Period [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementDomain" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RestatementDomain" xlink:to="lab_srt_RestatementDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_AMDMember_46ba065b-172b-46dd-9dcb-d9f7c2a515f8_terseLabel_en-US" xlink:label="lab_ibp_AMDMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">AMD</link:label>
    <link:label id="lab_ibp_AMDMember_label_en-US" xlink:label="lab_ibp_AMDMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">AMD [Member]</link:label>
    <link:label id="lab_ibp_AMDMember_documentation_en-US" xlink:label="lab_ibp_AMDMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">AMD</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_AMDMember" xlink:href="ibp-20221231.xsd#ibp_AMDMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_AMDMember" xlink:to="lab_ibp_AMDMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementLineItems_9fd2e6f9-6f3d-4203-ad2c-087c0baf84fe_terseLabel_en-US" xlink:label="lab_us-gaap_StatementLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement [Line Items]</link:label>
    <link:label id="lab_us-gaap_StatementLineItems_label_en-US" xlink:label="lab_us-gaap_StatementLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementLineItems" xlink:to="lab_us-gaap_StatementLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_OtherPartyOperatingLeasesMember_5669db7e-a801-4795-969a-a26a87e3cf84_terseLabel_en-US" xlink:label="lab_ibp_OtherPartyOperatingLeasesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other</link:label>
    <link:label id="lab_ibp_OtherPartyOperatingLeasesMember_label_en-US" xlink:label="lab_ibp_OtherPartyOperatingLeasesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Party Operating Leases [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_OtherPartyOperatingLeasesMember" xlink:href="ibp-20221231.xsd#ibp_OtherPartyOperatingLeasesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_OtherPartyOperatingLeasesMember" xlink:to="lab_ibp_OtherPartyOperatingLeasesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_2a0312bb-ec14-4b13-a7ae-29b25b6f3b1c_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Nonvested performance-based stock awards/units, Beginning balance (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_b88037a9-9c0c-42c6-aa13-f3b3fa00d6e5_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Nonvested performance-based stock awards/units, Ending balance (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_e78be870-ee7c-438f-ae6c-6472d4f0eef3_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]</link:label>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_label_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:to="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_VariableRateDomain_0fbba086-8027-4737-a793-fb5b3ff2eae6_terseLabel_en-US" xlink:label="lab_us-gaap_VariableRateDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Variable Rate [Domain]</link:label>
    <link:label id="lab_us-gaap_VariableRateDomain_label_en-US" xlink:label="lab_us-gaap_VariableRateDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Variable Rate [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_VariableRateDomain" xlink:to="lab_us-gaap_VariableRateDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsGross_abbbb971-40d4-4361-a646-07e41ae12353_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsGross" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gross Carrying Amount</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsGross_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsGross" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsGross" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_968f7a15-709b-4bbb-a528-4ead010a69b1_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gains on acquisition earnouts</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Contingent Consideration Arrangements, Change in Amount of Contingent Consideration, Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" xlink:to="lab_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseRightOfUseAsset_db7be610-def8-4978-b3ac-2ff77849ad5e_verboseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease right-of-use assets</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseRightOfUseAsset_373f9ece-3928-48ee-a9c0-c8cc72d296c0_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseRightOfUseAsset_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Right-of-Use Asset</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseRightOfUseAsset" xlink:to="lab_us-gaap_OperatingLeaseRightOfUseAsset" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember_0bc3cb1a-6325-412c-93f1-63d8a4f1b4fb_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Other Comprehensive (Loss) Income</link:label>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember_label_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">AOCI Attributable to Parent [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_AuditorFirmId_bf6d649f-6f9f-4c9d-a6cc-38baeb97a805_terseLabel_en-US" xlink:label="lab_dei_AuditorFirmId" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Auditor Firm ID</link:label>
    <link:label id="lab_dei_AuditorFirmId_label_en-US" xlink:label="lab_dei_AuditorFirmId" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Auditor Firm ID</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AuditorFirmId" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AuditorFirmId"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_AuditorFirmId" xlink:to="lab_dei_AuditorFirmId" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_DeferredIncomeTaxLiabilitiesNetMember_23919a64-e048-4279-98e8-6cb47f74b802_terseLabel_en-US" xlink:label="lab_ibp_DeferredIncomeTaxLiabilitiesNetMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term deferred income tax liabilities</link:label>
    <link:label id="lab_ibp_DeferredIncomeTaxLiabilitiesNetMember_label_en-US" xlink:label="lab_ibp_DeferredIncomeTaxLiabilitiesNetMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Income Tax Liabilities, Net [Member]</link:label>
    <link:label id="lab_ibp_DeferredIncomeTaxLiabilitiesNetMember_documentation_en-US" xlink:label="lab_ibp_DeferredIncomeTaxLiabilitiesNetMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Income Tax Liabilities, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DeferredIncomeTaxLiabilitiesNetMember" xlink:href="ibp-20221231.xsd#ibp_DeferredIncomeTaxLiabilitiesNetMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_DeferredIncomeTaxLiabilitiesNetMember" xlink:to="lab_ibp_DeferredIncomeTaxLiabilitiesNetMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentTransitionReport_80cda286-c869-4983-a572-aa6ea28f712e_terseLabel_en-US" xlink:label="lab_dei_DocumentTransitionReport" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Transition Report</link:label>
    <link:label id="lab_dei_DocumentTransitionReport_label_en-US" xlink:label="lab_dei_DocumentTransitionReport" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Transition Report</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentTransitionReport" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentTransitionReport"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentTransitionReport" xlink:to="lab_dei_DocumentTransitionReport" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_LocalPhoneNumber_68dfa729-7022-4ae5-b06b-98f2cb43b0ab_terseLabel_en-US" xlink:label="lab_dei_LocalPhoneNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Local Phone Number</link:label>
    <link:label id="lab_dei_LocalPhoneNumber_label_en-US" xlink:label="lab_dei_LocalPhoneNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Local Phone Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LocalPhoneNumber" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LocalPhoneNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_LocalPhoneNumber" xlink:to="lab_dei_LocalPhoneNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_AggregateCapWorkersCompensationLiability_b9225344-5a2d-4d9c-9093-e65edbcbb974_terseLabel_en-US" xlink:label="lab_ibp_AggregateCapWorkersCompensationLiability" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Aggregate cap of insurance cost of claims</link:label>
    <link:label id="lab_ibp_AggregateCapWorkersCompensationLiability_label_en-US" xlink:label="lab_ibp_AggregateCapWorkersCompensationLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Aggregate Cap Workers' Compensation Liability</link:label>
    <link:label id="lab_ibp_AggregateCapWorkersCompensationLiability_documentation_en-US" xlink:label="lab_ibp_AggregateCapWorkersCompensationLiability" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Aggregate cap carrying value of obligations and payables pertaining to claims incurred of a workers compensation nature.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_AggregateCapWorkersCompensationLiability" xlink:href="ibp-20221231.xsd#ibp_AggregateCapWorkersCompensationLiability"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_AggregateCapWorkersCompensationLiability" xlink:to="lab_ibp_AggregateCapWorkersCompensationLiability" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingIncomeLoss_9a4e59f1-e9aa-4f38-8fcc-c376abf4a45f_totalLabel_en-US" xlink:label="lab_us-gaap_OperatingIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating income</link:label>
    <link:label id="lab_us-gaap_OperatingIncomeLoss_label_en-US" xlink:label="lab_us-gaap_OperatingIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Income (Loss)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingIncomeLoss" xlink:to="lab_us-gaap_OperatingIncomeLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsInventory_e3157a3c-a175-499e-9b8b-6322449ae059_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsInventory" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventories</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsInventory_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsInventory" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Inventory</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsInventory" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsInventory"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsInventory" xlink:to="lab_us-gaap_DeferredTaxAssetsInventory" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems_628fbaa9-e509-40b4-a8b2-dc0cc8674fb0_terseLabel_en-US" xlink:label="lab_us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Financing Receivable, Allowance for Credit Loss [Line Items]</link:label>
    <link:label id="lab_us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems_label_en-US" xlink:label="lab_us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Financing Receivable, Allowance for Credit Loss [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems" xlink:to="lab_us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_47aa8652-9526-4e8c-b6b2-ad76bdf2f8a7_terseLabel_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Recently Adopted Accounting Pronouncements</link:label>
    <link:label id="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">New Accounting Pronouncements, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:to="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_FireproofingAndFirestoppingMember_72397533-74a2-4d44-9044-14d77f37b82e_terseLabel_en-US" xlink:label="lab_ibp_FireproofingAndFirestoppingMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fireproofing/firestopping</link:label>
    <link:label id="lab_ibp_FireproofingAndFirestoppingMember_label_en-US" xlink:label="lab_ibp_FireproofingAndFirestoppingMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fireproofing And Firestopping [Member]</link:label>
    <link:label id="lab_ibp_FireproofingAndFirestoppingMember_documentation_en-US" xlink:label="lab_ibp_FireproofingAndFirestoppingMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fireproofing And Firestopping</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FireproofingAndFirestoppingMember" xlink:href="ibp-20221231.xsd#ibp_FireproofingAndFirestoppingMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_FireproofingAndFirestoppingMember" xlink:to="lab_ibp_FireproofingAndFirestoppingMember" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances_9e101b80-bc09-4f1d-ac9b-09eb546fa6e9_terseLabel_en-US" xlink:label="lab_ibp_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued liabilities and allowances</link:label>
    <link:label id="lab_ibp_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances_label_en-US" xlink:label="lab_ibp_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets Tax Deferred Expense Reserves And Accruals Allowances</link:label>
    <link:label id="lab_ibp_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances_documentation_en-US" xlink:label="lab_ibp_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred tax assets tax deferred expense reserves and accruals allowances.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances" xlink:href="ibp-20221231.xsd#ibp_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances" xlink:to="lab_ibp_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesFairValueDisclosure_b15b44c7-01ff-4aca-8a98-36331cbb2afe_totalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesFairValueDisclosure" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total financial liabilities</link:label>
    <link:label id="lab_us-gaap_LiabilitiesFairValueDisclosure_label_en-US" xlink:label="lab_us-gaap_LiabilitiesFairValueDisclosure" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities, Fair Value Disclosure</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesFairValueDisclosure" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesFairValueDisclosure"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesFairValueDisclosure" xlink:to="lab_us-gaap_LiabilitiesFairValueDisclosure" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_RealEstateAndAccumulatedDepreciationNameOfPropertyDomain_8f4cce65-9b89-44ca-bbbc-7291d1f3218a_terseLabel_en-US" xlink:label="lab_srt_RealEstateAndAccumulatedDepreciationNameOfPropertyDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Name of Property [Domain]</link:label>
    <link:label id="lab_srt_RealEstateAndAccumulatedDepreciationNameOfPropertyDomain_label_en-US" xlink:label="lab_srt_RealEstateAndAccumulatedDepreciationNameOfPropertyDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Name of Property [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RealEstateAndAccumulatedDepreciationNameOfPropertyDomain" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RealEstateAndAccumulatedDepreciationNameOfPropertyDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RealEstateAndAccumulatedDepreciationNameOfPropertyDomain" xlink:to="lab_srt_RealEstateAndAccumulatedDepreciationNameOfPropertyDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_911cd0cb-0c78-4a7e-bd3a-f0e43c12a12c_terseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Adjustments to reconcile net income to net cash provided by operating activities</link:label>
    <link:label id="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_label_en-US" xlink:label="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_4215f0a6-2de3-4ffa-9505-f8145b066790_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill and Intangibles</link:label>
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill and Intangible Assets Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:to="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList_0b9f33af-be26-474c-89b4-a812541d6083_terseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Right-of-Use Asset, Statement of Financial Position [Extensible List]</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Right-of-Use Asset, Statement of Financial Position [Extensible Enumeration]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xlink:to="lab_us-gaap_FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_cb32c468-d585-411e-9e34-4a66755c9d17_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property and Equipment</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PreferredStockParOrStatedValuePerShare_e869a90f-5a7e-4b54-a6ab-6f0e8b695dbc_terseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockParOrStatedValuePerShare" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred stock, par value in USD per share)</link:label>
    <link:label id="lab_us-gaap_PreferredStockParOrStatedValuePerShare_label_en-US" xlink:label="lab_us-gaap_PreferredStockParOrStatedValuePerShare" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred Stock, Par or Stated Value Per Share</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockParOrStatedValuePerShare" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockParOrStatedValuePerShare"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockParOrStatedValuePerShare" xlink:to="lab_us-gaap_PreferredStockParOrStatedValuePerShare" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_3efe16b7-d7b8-47cf-ad08-f16153c2e88f_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2026</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year Four</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeStatementAbstract_e79b52d9-cf62-4d63-9591-29646cc47dea_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement [Abstract]</link:label>
    <link:label id="lab_us-gaap_IncomeStatementAbstract_label_en-US" xlink:label="lab_us-gaap_IncomeStatementAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementAbstract" xlink:to="lab_us-gaap_IncomeStatementAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_d4d7f5b2-1147-46e9-a1ed-31d213886e48_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Granted (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CreditLossAbstract_label_en-US" xlink:label="lab_us-gaap_CreditLossAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Credit Loss [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditLossAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditLossAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CreditLossAbstract" xlink:to="lab_us-gaap_CreditLossAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredFederalIncomeTaxExpenseBenefit_3ced4011-d638-4730-8844-34d7c2a3d231_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Federal</link:label>
    <link:label id="lab_us-gaap_DeferredFederalIncomeTaxExpenseBenefit_label_en-US" xlink:label="lab_us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Federal Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredFederalIncomeTaxExpenseBenefit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:to="lab_us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_28b2bf8c-0959-4cd9-80ce-f7942d8b1100_terseLabel_en-US" xlink:label="lab_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Impairment of long-lived assets</link:label>
    <link:label id="lab_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_label_en-US" xlink:label="lab_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Impairment, Long-Lived Asset, Held-for-Use</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOfLongLivedAssetsHeldForUse"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse" xlink:to="lab_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalMember_48423855-a403-421d-8ced-7af7670ca3c5_terseLabel_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Additional Paid In Capital&#160;</link:label>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalMember_label_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Additional Paid-in Capital [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapitalMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdditionalPaidInCapitalMember" xlink:to="lab_us-gaap_AdditionalPaidInCapitalMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentFiscalPeriodFocus_5431aba3-7e32-4c51-b086-b62729f8e259_terseLabel_en-US" xlink:label="lab_dei_DocumentFiscalPeriodFocus" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Fiscal Period Focus</link:label>
    <link:label id="lab_dei_DocumentFiscalPeriodFocus_label_en-US" xlink:label="lab_dei_DocumentFiscalPeriodFocus" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Fiscal Period Focus</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalPeriodFocus" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentFiscalPeriodFocus"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentFiscalPeriodFocus" xlink:to="lab_dei_DocumentFiscalPeriodFocus" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_DebtInstrumentCovenantMarketCapitalizationThreshold_c2fc436f-8672-4439-bd33-f1fd3f4667b0_terseLabel_en-US" xlink:label="lab_ibp_DebtInstrumentCovenantMarketCapitalizationThreshold" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Market capitalization (as percent)</link:label>
    <link:label id="lab_ibp_DebtInstrumentCovenantMarketCapitalizationThreshold_label_en-US" xlink:label="lab_ibp_DebtInstrumentCovenantMarketCapitalizationThreshold" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Covenant, Market Capitalization Threshold</link:label>
    <link:label id="lab_ibp_DebtInstrumentCovenantMarketCapitalizationThreshold_documentation_en-US" xlink:label="lab_ibp_DebtInstrumentCovenantMarketCapitalizationThreshold" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Covenant, Market Capitalization Threshold</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DebtInstrumentCovenantMarketCapitalizationThreshold" xlink:href="ibp-20221231.xsd#ibp_DebtInstrumentCovenantMarketCapitalizationThreshold"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_DebtInstrumentCovenantMarketCapitalizationThreshold" xlink:to="lab_ibp_DebtInstrumentCovenantMarketCapitalizationThreshold" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_cb57fb31-7892-4903-aa39-fa4d8b7f27e2_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Diluted (in shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Diluted</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_f320ce28-6ee1-411e-a5da-45d264335584_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Recently Adopted and Recently Issued Accounting Pronouncements</link:label>
    <link:label id="lab_us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounting Standards Update and Change in Accounting Principle [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:to="lab_us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems_7db37ea9-5d83-47cf-8d59-7f65f0553045_terseLabel_en-US" xlink:label="lab_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Pension Plans, Postretirement and Other Employee Benefits [Line Items]</link:label>
    <link:label id="lab_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems_label_en-US" xlink:label="lab_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Pension Plans, Postretirement and Other Employee Benefits [Line Items]</link:label>
    <link:label id="lab_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems_documentation_en-US" xlink:label="lab_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Pension plans, postretirement and other employee benefits.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems" xlink:href="ibp-20221231.xsd#ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems" xlink:to="lab_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_IcfrAuditorAttestationFlag_efcdc8e7-baea-4252-bfe3-0a0996999f3b_terseLabel_en-US" xlink:label="lab_dei_IcfrAuditorAttestationFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">ICFR Auditor Attestation Flag</link:label>
    <link:label id="lab_dei_IcfrAuditorAttestationFlag_label_en-US" xlink:label="lab_dei_IcfrAuditorAttestationFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">ICFR Auditor Attestation Flag</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_IcfrAuditorAttestationFlag" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_IcfrAuditorAttestationFlag"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_IcfrAuditorAttestationFlag" xlink:to="lab_dei_IcfrAuditorAttestationFlag" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BaseRateMember_e053b774-a0aa-4e6a-a79c-9c052fb1babe_terseLabel_en-US" xlink:label="lab_us-gaap_BaseRateMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Base Rate</link:label>
    <link:label id="lab_us-gaap_BaseRateMember_label_en-US" xlink:label="lab_us-gaap_BaseRateMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Base Rate [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BaseRateMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BaseRateMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BaseRateMember" xlink:to="lab_us-gaap_BaseRateMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CarryingReportedAmountFairValueDisclosureMember_2592f909-89f8-44e6-8786-9d92fb383cd7_terseLabel_en-US" xlink:label="lab_us-gaap_CarryingReportedAmountFairValueDisclosureMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Carrying Value</link:label>
    <link:label id="lab_us-gaap_CarryingReportedAmountFairValueDisclosureMember_label_en-US" xlink:label="lab_us-gaap_CarryingReportedAmountFairValueDisclosureMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reported Value Measurement [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CarryingReportedAmountFairValueDisclosureMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CarryingReportedAmountFairValueDisclosureMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CarryingReportedAmountFairValueDisclosureMember" xlink:to="lab_us-gaap_CarryingReportedAmountFairValueDisclosureMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_93156329-471d-4e6a-9c92-965e72e32545_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Granted (in USD per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">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:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_3256e5db-025e-4b30-94db-cde3eefd1871_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Fair Values of Financial Assets and Liabilities</link:label>
    <link:label id="lab_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingSegmentsMember_4be6754c-0c38-48cc-a000-2dbeb5ecd02d_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingSegmentsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating segments</link:label>
    <link:label id="lab_us-gaap_OperatingSegmentsMember_label_en-US" xlink:label="lab_us-gaap_OperatingSegmentsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Segments [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingSegmentsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingSegmentsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingSegmentsMember" xlink:to="lab_us-gaap_OperatingSegmentsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShortTermLeaseCost_4893e3ab-07f4-4f2e-a77d-78688783d28c_terseLabel_en-US" xlink:label="lab_us-gaap_ShortTermLeaseCost" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Short-term lease costs</link:label>
    <link:label id="lab_us-gaap_ShortTermLeaseCost_label_en-US" xlink:label="lab_us-gaap_ShortTermLeaseCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Short-Term Lease, Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermLeaseCost" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShortTermLeaseCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShortTermLeaseCost" xlink:to="lab_us-gaap_ShortTermLeaseCost" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PreferredStockSharesAuthorized_62528046-a939-482c-8fd6-87363e7dbd42_terseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred stock, shares authorized (in shares)</link:label>
    <link:label id="lab_us-gaap_PreferredStockSharesAuthorized_label_en-US" xlink:label="lab_us-gaap_PreferredStockSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred Stock, Shares Authorized</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesAuthorized" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesAuthorized"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockSharesAuthorized" xlink:to="lab_us-gaap_PreferredStockSharesAuthorized" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherNonoperatingExpense_aa4110e7-d5be-4404-b243-59e1adedf6c7_terseLabel_en-US" xlink:label="lab_us-gaap_OtherNonoperatingExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Nonoperating Expense</link:label>
    <link:label id="lab_us-gaap_OtherNonoperatingExpense_label_en-US" xlink:label="lab_us-gaap_OtherNonoperatingExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Nonoperating Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNonoperatingExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherNonoperatingExpense" xlink:to="lab_us-gaap_OtherNonoperatingExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ImpairmentOfIntangibleAssetsFinitelived_6dcbf0fc-a179-49a4-bead-f0988367927e_terseLabel_en-US" xlink:label="lab_us-gaap_ImpairmentOfIntangibleAssetsFinitelived" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Intangible asset impairment</link:label>
    <link:label id="lab_us-gaap_ImpairmentOfIntangibleAssetsFinitelived_label_en-US" xlink:label="lab_us-gaap_ImpairmentOfIntangibleAssetsFinitelived" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Impairment of Intangible Assets, Finite-Lived</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentOfIntangibleAssetsFinitelived" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOfIntangibleAssetsFinitelived"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ImpairmentOfIntangibleAssetsFinitelived" xlink:to="lab_us-gaap_ImpairmentOfIntangibleAssetsFinitelived" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProductConcentrationRiskMember_2a20ac72-9d00-4d4b-916a-87720d1d6db6_terseLabel_en-US" xlink:label="lab_us-gaap_ProductConcentrationRiskMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product Concentration Risk</link:label>
    <link:label id="lab_us-gaap_ProductConcentrationRiskMember_label_en-US" xlink:label="lab_us-gaap_ProductConcentrationRiskMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product Concentration Risk [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductConcentrationRiskMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductConcentrationRiskMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductConcentrationRiskMember" xlink:to="lab_us-gaap_ProductConcentrationRiskMember" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_WeightedAverageRemainingLeaseTermOfOperatingFinanceLeasesAbstract_c10e0713-db93-4f58-b122-e45492544d05_verboseLabel_en-US" xlink:label="lab_ibp_WeightedAverageRemainingLeaseTermOfOperatingFinanceLeasesAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted-average remaining lease term</link:label>
    <link:label id="lab_ibp_WeightedAverageRemainingLeaseTermOfOperatingFinanceLeasesAbstract_label_en-US" xlink:label="lab_ibp_WeightedAverageRemainingLeaseTermOfOperatingFinanceLeasesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Remaining Lease Term Of Operating Finance Leases [Abstract]</link:label>
    <link:label id="lab_ibp_WeightedAverageRemainingLeaseTermOfOperatingFinanceLeasesAbstract_documentation_en-US" xlink:label="lab_ibp_WeightedAverageRemainingLeaseTermOfOperatingFinanceLeasesAbstract" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Represents weighted average remaining lease term of operating finance leases abstract.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_WeightedAverageRemainingLeaseTermOfOperatingFinanceLeasesAbstract" xlink:href="ibp-20221231.xsd#ibp_WeightedAverageRemainingLeaseTermOfOperatingFinanceLeasesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_WeightedAverageRemainingLeaseTermOfOperatingFinanceLeasesAbstract" xlink:to="lab_ibp_WeightedAverageRemainingLeaseTermOfOperatingFinanceLeasesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_4d8d35f8-935a-4806-810d-94b30d170ba2_terseLabel_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commitments and Contingencies</link:label>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commitments and Contingencies Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:to="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillImpairedAccumulatedImpairmentLoss_05d36374-a794-4b6e-9ca9-70cfe760714c_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_GoodwillImpairedAccumulatedImpairmentLoss" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated impairment losses</link:label>
    <link:label id="lab_us-gaap_GoodwillImpairedAccumulatedImpairmentLoss_label_en-US" xlink:label="lab_us-gaap_GoodwillImpairedAccumulatedImpairmentLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill, Impaired, Accumulated Impairment Loss</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillImpairedAccumulatedImpairmentLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillImpairedAccumulatedImpairmentLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillImpairedAccumulatedImpairmentLoss" xlink:to="lab_us-gaap_GoodwillImpairedAccumulatedImpairmentLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockSharesIssued_17f42f31-342a-4e5a-b529-1dd674406e13_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock, shares issued (in shares)</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesIssued_4ffd26b6-135c-472e-8393-5f42937de3a5_periodStartLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">BALANCE, Shares</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesIssued_545daee5-9607-4de2-80b6-1d2ddbc94586_periodEndLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">BALANCE, Shares</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesIssued_label_en-US" xlink:label="lab_us-gaap_CommonStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock, Shares, Issued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesIssued" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesIssued"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesIssued" xlink:to="lab_us-gaap_CommonStockSharesIssued" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax_4f3778cd-79de-4ca4-a7d9-eba63b3e4f20_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unrealized loss on cash flow hedge, net of tax benefit</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), after Reclassification, Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_CustomerInstallationMember_293cc087-831c-48f6-9ec7-566ae3954f6f_terseLabel_en-US" xlink:label="lab_ibp_CustomerInstallationMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net revenue, Installation</link:label>
    <link:label id="lab_ibp_CustomerInstallationMember_label_en-US" xlink:label="lab_ibp_CustomerInstallationMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer Installation [Member]</link:label>
    <link:label id="lab_ibp_CustomerInstallationMember_documentation_en-US" xlink:label="lab_ibp_CustomerInstallationMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer Installation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CustomerInstallationMember" xlink:href="ibp-20221231.xsd#ibp_CustomerInstallationMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_CustomerInstallationMember" xlink:to="lab_ibp_CustomerInstallationMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CapitalExpendituresIncurredButNotYetPaid_fc01960c-f641-4d29-acda-e91a5afea7b8_terseLabel_en-US" xlink:label="lab_us-gaap_CapitalExpendituresIncurredButNotYetPaid" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unpaid purchases of property and equipment included in accounts payable</link:label>
    <link:label id="lab_us-gaap_CapitalExpendituresIncurredButNotYetPaid_label_en-US" xlink:label="lab_us-gaap_CapitalExpendituresIncurredButNotYetPaid" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Capital Expenditures Incurred but Not yet Paid</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalExpendituresIncurredButNotYetPaid" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CapitalExpendituresIncurredButNotYetPaid"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CapitalExpendituresIncurredButNotYetPaid" xlink:to="lab_us-gaap_CapitalExpendituresIncurredButNotYetPaid" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_TwoThousandTwentyOneAcquisitionsMember_020cfa85-4da9-4ab3-8128-964b0965b5b0_terseLabel_en-US" xlink:label="lab_ibp_TwoThousandTwentyOneAcquisitionsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2021 Acquisitions</link:label>
    <link:label id="lab_ibp_TwoThousandTwentyOneAcquisitionsMember_label_en-US" xlink:label="lab_ibp_TwoThousandTwentyOneAcquisitionsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">TwoThousandTwentyOneAcquisitions [Member]</link:label>
    <link:label id="lab_ibp_TwoThousandTwentyOneAcquisitionsMember_documentation_en-US" xlink:label="lab_ibp_TwoThousandTwentyOneAcquisitionsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">TwoThousandTwentyOneAcquisitions</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_TwoThousandTwentyOneAcquisitionsMember" xlink:href="ibp-20221231.xsd#ibp_TwoThousandTwentyOneAcquisitionsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_TwoThousandTwentyOneAcquisitionsMember" xlink:to="lab_ibp_TwoThousandTwentyOneAcquisitionsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationAcquisitionRelatedCosts_b2030b74-2fc0-46f5-b4be-f0bbf1ef797d_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationAcquisitionRelatedCosts" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Acquisition-related costs</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationAcquisitionRelatedCosts_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationAcquisitionRelatedCosts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Acquisition Related Costs</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationAcquisitionRelatedCosts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts" xlink:to="lab_us-gaap_BusinessCombinationAcquisitionRelatedCosts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashFlowHedgingMember_e9788bb6-b3ad-40a5-a569-c4ad23fa1fa8_terseLabel_en-US" xlink:label="lab_us-gaap_CashFlowHedgingMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash Flow Hedging</link:label>
    <link:label id="lab_us-gaap_CashFlowHedgingMember_label_en-US" xlink:label="lab_us-gaap_CashFlowHedgingMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash Flow Hedging [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashFlowHedgingMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashFlowHedgingMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashFlowHedgingMember" xlink:to="lab_us-gaap_CashFlowHedgingMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityCurrent_2eb1721c-527f-40b4-bdc1-64afe83f3b4b_terseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current maturities of finance lease obligations</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityCurrent_6a1a653b-18ae-447c-94a2-70476138b9db_verboseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Financing</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityCurrent_8d86378b-06b0-42aa-a4f3-d1f0d28683bf_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Less: Current obligation under leases</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityCurrent_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Liability, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseLiabilityCurrent" xlink:to="lab_us-gaap_FinanceLeaseLiabilityCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_083b7166-4279-485c-96ae-0b87cf83040b_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</link:label>
    <link:label id="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_label_en-US" xlink:label="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities_1f480a1c-5b2c-4304-87bd-e25217e7ac3e_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net cash used in investing activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Investing Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentFaceAmount_276a7b98-248c-44ba-8fbf-fe252dccc270_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentFaceAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt instrument, face amount</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentFaceAmount_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentFaceAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Face Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentFaceAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentFaceAmount" xlink:to="lab_us-gaap_DebtInstrumentFaceAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConstructionContractorReceivableRetainage_8227a043-4e8d-4673-a2b7-5f353f80f6df_terseLabel_en-US" xlink:label="lab_us-gaap_ConstructionContractorReceivableRetainage" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retainage receivables</link:label>
    <link:label id="lab_us-gaap_ConstructionContractorReceivableRetainage_label_en-US" xlink:label="lab_us-gaap_ConstructionContractorReceivableRetainage" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Construction Contractor, Receivable, Retainage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConstructionContractorReceivableRetainage" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConstructionContractorReceivableRetainage"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConstructionContractorReceivableRetainage" xlink:to="lab_us-gaap_ConstructionContractorReceivableRetainage" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityAbstract_eadadfa2-6ed6-4061-bf76-b914718a9fe7_terseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance&#160;Leases</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityAbstract_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Liability [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseLiabilityAbstract" xlink:to="lab_us-gaap_FinanceLeaseLiabilityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ComprehensiveIncomeNetOfTax_29278fd9-88cf-46cd-964b-cfd158a94082_totalLabel_en-US" xlink:label="lab_us-gaap_ComprehensiveIncomeNetOfTax" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Comprehensive income</link:label>
    <link:label id="lab_us-gaap_ComprehensiveIncomeNetOfTax_label_en-US" xlink:label="lab_us-gaap_ComprehensiveIncomeNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Comprehensive Income (Loss), Net of Tax, Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="lab_us-gaap_ComprehensiveIncomeNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WorkersCompensationLiabilityCurrentAndNoncurrent_99b2ae55-08ed-425e-bfbd-32a221464cff_terseLabel_en-US" xlink:label="lab_us-gaap_WorkersCompensationLiabilityCurrentAndNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Insurance cost of claims</link:label>
    <link:label id="lab_us-gaap_WorkersCompensationLiabilityCurrentAndNoncurrent_94c1b3e4-8ce5-4c2b-b45e-aef3bc1b78de_totalLabel_en-US" xlink:label="lab_us-gaap_WorkersCompensationLiabilityCurrentAndNoncurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Workers' compensation liability</link:label>
    <link:label id="lab_us-gaap_WorkersCompensationLiabilityCurrentAndNoncurrent_label_en-US" xlink:label="lab_us-gaap_WorkersCompensationLiabilityCurrentAndNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Workers' Compensation Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WorkersCompensationLiabilityCurrentAndNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WorkersCompensationLiabilityCurrentAndNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WorkersCompensationLiabilityCurrentAndNoncurrent" xlink:to="lab_us-gaap_WorkersCompensationLiabilityCurrentAndNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_5dd1fe41-5a72-45fe-a5d9-911a7c0f92c2_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Segment Information</link:label>
    <link:label id="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Segment Reporting Information, by Segment [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:to="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityCurrentReportingStatus_742ca14a-72fc-458c-b5f5-08a6ab88a6b7_terseLabel_en-US" xlink:label="lab_dei_EntityCurrentReportingStatus" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Current Reporting Status</link:label>
    <link:label id="lab_dei_EntityCurrentReportingStatus_label_en-US" xlink:label="lab_dei_EntityCurrentReportingStatus" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Current Reporting Status</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCurrentReportingStatus" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCurrentReportingStatus"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCurrentReportingStatus" xlink:to="lab_dei_EntityCurrentReportingStatus" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherLiabilitiesCurrent_3dabd57c-f699-437c-a50a-650d4f324434_verboseLabel_en-US" xlink:label="lab_us-gaap_OtherLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other current liabilities</link:label>
    <link:label id="lab_us-gaap_OtherLiabilitiesCurrent_label_en-US" xlink:label="lab_us-gaap_OtherLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Liabilities, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherLiabilitiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherLiabilitiesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherLiabilitiesCurrent" xlink:to="lab_us-gaap_OtherLiabilitiesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty_881eb1fa-07fe-416e-8e64-f799c1618d3a_terseLabel_en-US" xlink:label="lab_us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Purchases</link:label>
    <link:label id="lab_us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty_label_en-US" xlink:label="lab_us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Related Party Transaction, Purchases from Related Party</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty" xlink:to="lab_us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths_6ad7df78-d510-4151-b06b-1723fd621aa1_terseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2023</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Liability, to be Paid, Year One</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:to="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTable_7bb65ea8-2cde-435f-a724-ab44ced055d6_terseLabel_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disaggregation of Revenue [Table]</link:label>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTable_label_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disaggregation of Revenue [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable" xlink:to="lab_us-gaap_DisaggregationOfRevenueTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_3e8066d9-9be6-4199-a18c-605c0056559c_verboseLabel_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income tax at federal statutory rate</link:label>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_label_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_GarageDoorsMember_624aa003-8ef2-41cb-85fa-b44ba6537717_terseLabel_en-US" xlink:label="lab_ibp_GarageDoorsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Garage doors</link:label>
    <link:label id="lab_ibp_GarageDoorsMember_label_en-US" xlink:label="lab_ibp_GarageDoorsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Garage Doors [Member]</link:label>
    <link:label id="lab_ibp_GarageDoorsMember_documentation_en-US" xlink:label="lab_ibp_GarageDoorsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Garage doors.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_GarageDoorsMember" xlink:href="ibp-20221231.xsd#ibp_GarageDoorsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_GarageDoorsMember" xlink:to="lab_ibp_GarageDoorsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DividendsPayableAmountPerShare_17ba499f-10cf-4999-8857-42fca5e3d0b8_terseLabel_en-US" xlink:label="lab_us-gaap_DividendsPayableAmountPerShare" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">First quarterly dividends payable (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_DividendsPayableAmountPerShare_label_en-US" xlink:label="lab_us-gaap_DividendsPayableAmountPerShare" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Dividends Payable, Amount Per Share</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsPayableAmountPerShare" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DividendsPayableAmountPerShare"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DividendsPayableAmountPerShare" xlink:to="lab_us-gaap_DividendsPayableAmountPerShare" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_08bb259a-fa66-4d19-a8c6-5319f2ff75a2_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary of Estimated Fair Value of Assets Acquired and Liabilities Assumed</link:label>
    <link:label id="lab_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Recognized Identified Assets Acquired and Liabilities Assumed [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_FiveStarMember_15a4a887-d71e-4c3c-a4b2-609e7fb83928_terseLabel_en-US" xlink:label="lab_ibp_FiveStarMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Five Star</link:label>
    <link:label id="lab_ibp_FiveStarMember_label_en-US" xlink:label="lab_ibp_FiveStarMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Five Star [Member]</link:label>
    <link:label id="lab_ibp_FiveStarMember_documentation_en-US" xlink:label="lab_ibp_FiveStarMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Five Star</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FiveStarMember" xlink:href="ibp-20221231.xsd#ibp_FiveStarMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_FiveStarMember" xlink:to="lab_ibp_FiveStarMember" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_ScheduleOfEmployeeRelatedLiabilitiesTableTextBlock_3535999f-6e8d-47d0-994b-5ea545c6f888_terseLabel_en-US" xlink:label="lab_ibp_ScheduleOfEmployeeRelatedLiabilitiesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary of Workers' Compensation Known Claims and IBNR Reserves</link:label>
    <link:label id="lab_ibp_ScheduleOfEmployeeRelatedLiabilitiesTableTextBlock_label_en-US" xlink:label="lab_ibp_ScheduleOfEmployeeRelatedLiabilitiesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule Of Employee Related Liabilities [Table Text Block]</link:label>
    <link:label id="lab_ibp_ScheduleOfEmployeeRelatedLiabilitiesTableTextBlock_documentation_en-US" xlink:label="lab_ibp_ScheduleOfEmployeeRelatedLiabilitiesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of employee related liabilities.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_ScheduleOfEmployeeRelatedLiabilitiesTableTextBlock" xlink:href="ibp-20221231.xsd#ibp_ScheduleOfEmployeeRelatedLiabilitiesTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_ScheduleOfEmployeeRelatedLiabilitiesTableTextBlock" xlink:to="lab_ibp_ScheduleOfEmployeeRelatedLiabilitiesTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost_451bcb72-eccf-4996-bbfb-79a8e13e44ca_terseLabel_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock compensation</link:label>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost_label_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Nondeductible Expense, Share-Based Payment Arrangement, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_RevenueFromContractWithCustomerPaymentTerms_8fafdc48-a3d3-4af1-91ed-04a63adca8a6_terseLabel_en-US" xlink:label="lab_ibp_RevenueFromContractWithCustomerPaymentTerms" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payment terms (in days)</link:label>
    <link:label id="lab_ibp_RevenueFromContractWithCustomerPaymentTerms_label_en-US" xlink:label="lab_ibp_RevenueFromContractWithCustomerPaymentTerms" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue From Contract With Customer, Payment Terms</link:label>
    <link:label id="lab_ibp_RevenueFromContractWithCustomerPaymentTerms_documentation_en-US" xlink:label="lab_ibp_RevenueFromContractWithCustomerPaymentTerms" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue From Contract With Customer, Payment Terms</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_RevenueFromContractWithCustomerPaymentTerms" xlink:href="ibp-20221231.xsd#ibp_RevenueFromContractWithCustomerPaymentTerms"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_RevenueFromContractWithCustomerPaymentTerms" xlink:to="lab_ibp_RevenueFromContractWithCustomerPaymentTerms" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_100919fa-11fb-47eb-8bab-d3938d87b3c5_terseLabel_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">State income taxes, net of federal benefit</link:label>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_label_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo_f53f1e93-d6c0-4a9e-ab61-14769a3da72e_terseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2024</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Liability, to be Paid, Year Two</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:to="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BasisOfAccountingPolicyPolicyTextBlock_86a53afb-f3ec-4850-b145-33bedd4a0e6c_terseLabel_en-US" xlink:label="lab_us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Basis of Presentation</link:label>
    <link:label id="lab_us-gaap_BasisOfAccountingPolicyPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Basis of Accounting, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BasisOfAccountingPolicyPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:to="lab_us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_InsuranceReceivableClaimsTableTextBlock_465eb559-6df2-49f8-a1ed-f4e30b896298_terseLabel_en-US" xlink:label="lab_ibp_InsuranceReceivableClaimsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Insurance Receivable for Claims</link:label>
    <link:label id="lab_ibp_InsuranceReceivableClaimsTableTextBlock_label_en-US" xlink:label="lab_ibp_InsuranceReceivableClaimsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Insurance Receivable Claims [Table Text Block]</link:label>
    <link:label id="lab_ibp_InsuranceReceivableClaimsTableTextBlock_documentation_en-US" xlink:label="lab_ibp_InsuranceReceivableClaimsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary of amount of insurance receivables, booked to offset an equal general insurance liability. The probability of receiving the amount booked as a receivable is high upon the event of owing any amounts associated with the liability.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_InsuranceReceivableClaimsTableTextBlock" xlink:href="ibp-20221231.xsd#ibp_InsuranceReceivableClaimsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_InsuranceReceivableClaimsTableTextBlock" xlink:to="lab_ibp_InsuranceReceivableClaimsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_d23e4723-f0d7-4242-8583-a17867da52de_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Estimated Aggregate Annual Amortization</link:label>
    <link:label id="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:to="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings_58845952-ba62-42e4-85f1-a648db0ae72a_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair value adjustments</link:label>
    <link:label id="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings_label_en-US" xlink:label="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability, Gain (Loss) Included in Earnings</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings" xlink:to="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsPeriodIncreaseDecrease_657799bb-b8e1-4b86-90f3-d26598d468f0_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsPeriodIncreaseDecrease" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase in gross carrying amount of intangibles</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsPeriodIncreaseDecrease_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsPeriodIncreaseDecrease" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets, Period Increase (Decrease)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsPeriodIncreaseDecrease" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsPeriodIncreaseDecrease"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsPeriodIncreaseDecrease" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsPeriodIncreaseDecrease" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SellingAndMarketingExpenseMember_3bf6c1ba-27b9-41fe-a375-da415ac76146_terseLabel_en-US" xlink:label="lab_us-gaap_SellingAndMarketingExpenseMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Selling</link:label>
    <link:label id="lab_us-gaap_SellingAndMarketingExpenseMember_label_en-US" xlink:label="lab_us-gaap_SellingAndMarketingExpenseMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Selling and Marketing Expense [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingAndMarketingExpenseMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingAndMarketingExpenseMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SellingAndMarketingExpenseMember" xlink:to="lab_us-gaap_SellingAndMarketingExpenseMember" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_TitleOfIndividualWithRelationshipToEntityDomain_73d0d71a-765d-4bf8-b91d-79820176f07f_terseLabel_en-US" xlink:label="lab_srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Relationship to Entity [Domain]</link:label>
    <link:label id="lab_srt_TitleOfIndividualWithRelationshipToEntityDomain_label_en-US" xlink:label="lab_srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Title of Individual [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="lab_srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds2_e0fd4c0e-cb89-4e1c-bfe6-711e7064d496_terseLabel_en-US" xlink:label="lab_ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Step down percentage and its subsidiaries (as a percent)</link:label>
    <link:label id="lab_ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds2_label_en-US" xlink:label="lab_ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Prepayments, Step Down Percentage Of Net Cash Proceeds 2</link:label>
    <link:label id="lab_ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds2_documentation_en-US" xlink:label="lab_ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds2" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Prepayments, Step Down Percentage Of Net Cash Proceeds 2</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds2" xlink:href="ibp-20221231.xsd#ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds2"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds2" xlink:to="lab_ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds2" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NotesPayableOtherPayablesMember_c0756230-e3ea-4c6b-8948-e058373fc509_terseLabel_en-US" xlink:label="lab_us-gaap_NotesPayableOtherPayablesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Notes Payable</link:label>
    <link:label id="lab_us-gaap_NotesPayableOtherPayablesMember_label_en-US" xlink:label="lab_us-gaap_NotesPayableOtherPayablesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Notes Payable, Other Payables [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NotesPayableOtherPayablesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NotesPayableOtherPayablesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NotesPayableOtherPayablesMember" xlink:to="lab_us-gaap_NotesPayableOtherPayablesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_MasterLoanAgreementMember_6da671f6-2786-4355-ba82-79af704583af_terseLabel_en-US" xlink:label="lab_ibp_MasterLoanAgreementMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Master Loan Agreements</link:label>
    <link:label id="lab_ibp_MasterLoanAgreementMember_label_en-US" xlink:label="lab_ibp_MasterLoanAgreementMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Master Loan Agreement [Member]</link:label>
    <link:label id="lab_ibp_MasterLoanAgreementMember_documentation_en-US" xlink:label="lab_ibp_MasterLoanAgreementMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Master Loan Agreement [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_MasterLoanAgreementMember" xlink:href="ibp-20221231.xsd#ibp_MasterLoanAgreementMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_MasterLoanAgreementMember" xlink:to="lab_ibp_MasterLoanAgreementMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_128d2ec2-00f9-435a-b787-e15b9f891f22_negatedLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Forfeited/Cancelled (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeited in Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermDebt_38734412-13c9-4274-b52e-e1d0eb19b984_totalLabel_en-US" xlink:label="lab_us-gaap_LongTermDebt" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total long term debt</link:label>
    <link:label id="lab_us-gaap_LongTermDebt_label_en-US" xlink:label="lab_us-gaap_LongTermDebt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Term Debt</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebt" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebt" xlink:to="lab_us-gaap_LongTermDebt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherNonoperatingIncomeExpense_1fc06953-13a0-40e8-b04d-7afdef1931f6_negatedLabel_en-US" xlink:label="lab_us-gaap_OtherNonoperatingIncomeExpense" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other expense (income)</link:label>
    <link:label id="lab_us-gaap_OtherNonoperatingIncomeExpense_label_en-US" xlink:label="lab_us-gaap_OtherNonoperatingIncomeExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Nonoperating Income (Expense)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNonoperatingIncomeExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherNonoperatingIncomeExpense" xlink:to="lab_us-gaap_OtherNonoperatingIncomeExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BalanceSheetLocationAxis_e44b13b4-f971-4318-82e1-b9fdd35b6eae_terseLabel_en-US" xlink:label="lab_us-gaap_BalanceSheetLocationAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance Sheet Location [Axis]</link:label>
    <link:label id="lab_us-gaap_BalanceSheetLocationAxis_label_en-US" xlink:label="lab_us-gaap_BalanceSheetLocationAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance Sheet Location [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BalanceSheetLocationAxis" xlink:to="lab_us-gaap_BalanceSheetLocationAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_ca670e16-0eef-400c-8d73-69dd49e2a867_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Related Party Transactions, by Related Party [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Related Party Transactions, by Related Party [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:to="lab_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_dea3c49e-c115-4b88-b27c-425d6f7cbfe1_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative Instruments and Hedging Activities Disclosures [Line Items]</link:label>
    <link:label id="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative Instruments and Hedging Activities Disclosures [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems" xlink:to="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_d7d9cee3-fe28-4b9c-bf6e-7e7ff075a272_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated other comprehensive income (loss)</link:label>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_label_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss), Net of Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_UnrecognizedTaxBenefitsIncreaseResultingFromLapseOfApplicableStatuteOfLimitations_01f75f41-62c9-4e47-820f-f8fe037a2bbb_terseLabel_en-US" xlink:label="lab_ibp_UnrecognizedTaxBenefitsIncreaseResultingFromLapseOfApplicableStatuteOfLimitations" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase as a result of expiring statutes</link:label>
    <link:label id="lab_ibp_UnrecognizedTaxBenefitsIncreaseResultingFromLapseOfApplicableStatuteOfLimitations_label_en-US" xlink:label="lab_ibp_UnrecognizedTaxBenefitsIncreaseResultingFromLapseOfApplicableStatuteOfLimitations" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unrecognized Tax Benefits, Increase Resulting From Lapse Of Applicable Statute Of Limitations</link:label>
    <link:label id="lab_ibp_UnrecognizedTaxBenefitsIncreaseResultingFromLapseOfApplicableStatuteOfLimitations_documentation_en-US" xlink:label="lab_ibp_UnrecognizedTaxBenefitsIncreaseResultingFromLapseOfApplicableStatuteOfLimitations" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unrecognized Tax Benefits, Increase Resulting From Lapse Of Applicable Statute Of Limitations</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_UnrecognizedTaxBenefitsIncreaseResultingFromLapseOfApplicableStatuteOfLimitations" xlink:href="ibp-20221231.xsd#ibp_UnrecognizedTaxBenefitsIncreaseResultingFromLapseOfApplicableStatuteOfLimitations"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_UnrecognizedTaxBenefitsIncreaseResultingFromLapseOfApplicableStatuteOfLimitations" xlink:to="lab_ibp_UnrecognizedTaxBenefitsIncreaseResultingFromLapseOfApplicableStatuteOfLimitations" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross_99bd406f-d878-467b-9adc-144426c1d037_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Issuance of common stock awards to employees (in shares)</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Shares Issued, Shares, Share-Based Payment Arrangement, before Forfeiture</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsCurrent_f660b235-890b-4593-a804-2abae1f84ee1_totalLabel_en-US" xlink:label="lab_us-gaap_AssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total current assets</link:label>
    <link:label id="lab_us-gaap_AssetsCurrent_label_en-US" xlink:label="lab_us-gaap_AssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsCurrent" xlink:to="lab_us-gaap_AssetsCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxesPaidNet_20a5a9ba-ed92-48c5-ad3d-6cdb71404381_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxesPaidNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income taxes, net of refunds</link:label>
    <link:label id="lab_us-gaap_IncomeTaxesPaidNet_label_en-US" xlink:label="lab_us-gaap_IncomeTaxesPaidNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Taxes Paid, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxesPaidNet" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxesPaidNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxesPaidNet" xlink:to="lab_us-gaap_IncomeTaxesPaidNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ContractWithCustomerLiabilityRevenueRecognized_67dd836f-1190-4b26-bd61-27b7856ebd71_terseLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract liability revenue recognized</link:label>
    <link:label id="lab_us-gaap_ContractWithCustomerLiabilityRevenueRecognized_label_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract with Customer, Liability, Revenue Recognized</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerLiabilityRevenueRecognized"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:to="lab_us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntitySmallBusiness_f5257739-b92e-41c9-8008-4fa5447c2667_terseLabel_en-US" xlink:label="lab_dei_EntitySmallBusiness" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Small Business</link:label>
    <link:label id="lab_dei_EntitySmallBusiness_label_en-US" xlink:label="lab_dei_EntitySmallBusiness" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Small Business</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntitySmallBusiness" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntitySmallBusiness"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntitySmallBusiness" xlink:to="lab_dei_EntitySmallBusiness" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueByMeasurementBasisAxis_fa07f065-c31e-47df-bb75-542247750817_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueByMeasurementBasisAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Measurement Basis [Axis]</link:label>
    <link:label id="lab_us-gaap_FairValueByMeasurementBasisAxis_label_en-US" xlink:label="lab_us-gaap_FairValueByMeasurementBasisAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Measurement Basis [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByMeasurementBasisAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueByMeasurementBasisAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueByMeasurementBasisAxis" xlink:to="lab_us-gaap_FairValueByMeasurementBasisAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NumberOfReportingUnits_8fafcf24-795b-4b7a-8efe-1a14ec711b56_terseLabel_en-US" xlink:label="lab_us-gaap_NumberOfReportingUnits" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of Reporting Units</link:label>
    <link:label id="lab_us-gaap_NumberOfReportingUnits_label_en-US" xlink:label="lab_us-gaap_NumberOfReportingUnits" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of Reporting Units</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfReportingUnits" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NumberOfReportingUnits"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NumberOfReportingUnits" xlink:to="lab_us-gaap_NumberOfReportingUnits" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense_276da012-7622-4776-8fbc-b09f8fa98011_verboseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization of operating lease right-of-use assets</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Right-of-Use Asset, Amortization Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense" xlink:to="lab_us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockDividendsPerShareDeclared_9ff68154-bd8c-4799-91fa-67484ff1068e_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockDividendsPerShareDeclared" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash dividends declared per share (in USD per share)</link:label>
    <link:label id="lab_us-gaap_CommonStockDividendsPerShareDeclared_label_en-US" xlink:label="lab_us-gaap_CommonStockDividendsPerShareDeclared" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock, Dividends, Per Share, Declared</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockDividendsPerShareDeclared" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockDividendsPerShareDeclared"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockDividendsPerShareDeclared" xlink:to="lab_us-gaap_CommonStockDividendsPerShareDeclared" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsNet_74ee79fc-8633-4e9a-bbe6-786b156475a6_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Intangible assets</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsNet_2d184d7d-909e-40ce-a5f6-cea38872ac83_totalLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Book Value</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsNet_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_CentralAluminumMember_d49c6734-91f4-431c-97c6-72012bcc4787_terseLabel_en-US" xlink:label="lab_ibp_CentralAluminumMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">CAS</link:label>
    <link:label id="lab_ibp_CentralAluminumMember_label_en-US" xlink:label="lab_ibp_CentralAluminumMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Central Aluminum [Member]</link:label>
    <link:label id="lab_ibp_CentralAluminumMember_documentation_en-US" xlink:label="lab_ibp_CentralAluminumMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Central Aluminum</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CentralAluminumMember" xlink:href="ibp-20221231.xsd#ibp_CentralAluminumMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_CentralAluminumMember" xlink:to="lab_ibp_CentralAluminumMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_370f2eb3-ee3e-4720-960b-89949538d637_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Expected time of revenue recognition</link:label>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_label_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:to="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SignificantAccountingPoliciesTextBlock_3537833a-1c6b-4d5e-8d8a-f18619d59502_terseLabel_en-US" xlink:label="lab_us-gaap_SignificantAccountingPoliciesTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Significant Accounting Policies</link:label>
    <link:label id="lab_us-gaap_SignificantAccountingPoliciesTextBlock_label_en-US" xlink:label="lab_us-gaap_SignificantAccountingPoliciesTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Significant Accounting Policies [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SignificantAccountingPoliciesTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SignificantAccountingPoliciesTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SignificantAccountingPoliciesTextBlock" xlink:to="lab_us-gaap_SignificantAccountingPoliciesTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_81f911bd-b9d2-4c4b-95d8-3e28c006ba71_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unrecognized Compensation Expense on Unvested Awards</link:label>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_label_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_4fb3ec8e-f0dc-4638-81e0-80925f6525d7_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property and Equipment</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain_d6228d2b-c6d6-483e-80a0-d0c1eeeeea76_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment, Type [Domain]</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Lived Tangible Asset [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_NumberOfLocationsInOperation_e692f269-4863-463c-9fe3-b5e6744eddbf_terseLabel_en-US" xlink:label="lab_ibp_NumberOfLocationsInOperation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of locations the company operates</link:label>
    <link:label id="lab_ibp_NumberOfLocationsInOperation_label_en-US" xlink:label="lab_ibp_NumberOfLocationsInOperation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number Of Locations In Operation</link:label>
    <link:label id="lab_ibp_NumberOfLocationsInOperation_documentation_en-US" xlink:label="lab_ibp_NumberOfLocationsInOperation" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number Of Locations In Operation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_NumberOfLocationsInOperation" xlink:href="ibp-20221231.xsd#ibp_NumberOfLocationsInOperation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_NumberOfLocationsInOperation" xlink:to="lab_ibp_NumberOfLocationsInOperation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentLineItems_7478d6dc-93c2-4732-97b9-a98723ad706e_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument [Line Items]</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentLineItems_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentLineItems" xlink:to="lab_us-gaap_DebtInstrumentLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CapitalizedContractCostImpairmentLoss_52008ffd-29ca-4dec-907e-e14ab3da4a84_terseLabel_en-US" xlink:label="lab_us-gaap_CapitalizedContractCostImpairmentLoss" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Impairment losses on receivables and contract assets</link:label>
    <link:label id="lab_us-gaap_CapitalizedContractCostImpairmentLoss_label_en-US" xlink:label="lab_us-gaap_CapitalizedContractCostImpairmentLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Capitalized Contract Cost, Impairment Loss</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalizedContractCostImpairmentLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CapitalizedContractCostImpairmentLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CapitalizedContractCostImpairmentLoss" xlink:to="lab_us-gaap_CapitalizedContractCostImpairmentLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_OtherAcquisitionMember_93570d62-2bc4-4fe6-9865-296b2ed9c33c_terseLabel_en-US" xlink:label="lab_ibp_OtherAcquisitionMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other</link:label>
    <link:label id="lab_ibp_OtherAcquisitionMember_c2cbbc39-bedc-43a9-8151-af4393dc982f_verboseLabel_en-US" xlink:label="lab_ibp_OtherAcquisitionMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other</link:label>
    <link:label id="lab_ibp_OtherAcquisitionMember_label_en-US" xlink:label="lab_ibp_OtherAcquisitionMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Acquisition [Member]</link:label>
    <link:label id="lab_ibp_OtherAcquisitionMember_documentation_en-US" xlink:label="lab_ibp_OtherAcquisitionMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Acquisition [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_OtherAcquisitionMember" xlink:href="ibp-20221231.xsd#ibp_OtherAcquisitionMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_OtherAcquisitionMember" xlink:to="lab_ibp_OtherAcquisitionMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_2d253eb3-6004-487c-9852-0c65403bcee0_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based compensation issued to directors (in shares)</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Shares Issued, Shares, Share-Based Payment Arrangement, after Forfeiture</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsOfDebtIssuanceCosts_86d87082-aae5-4d6f-8ef8-ae06338adbc1_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsOfDebtIssuanceCosts" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt issuance costs</link:label>
    <link:label id="lab_us-gaap_PaymentsOfDebtIssuanceCosts_label_en-US" xlink:label="lab_us-gaap_PaymentsOfDebtIssuanceCosts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments of Debt Issuance Costs</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfDebtIssuanceCosts" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfDebtIssuanceCosts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsOfDebtIssuanceCosts" xlink:to="lab_us-gaap_PaymentsOfDebtIssuanceCosts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLiability_faa7ff55-7d96-4475-b5ac-418688dd30d3_totalLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Present value of future minimum lease payments</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiability_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiability" xlink:to="lab_us-gaap_OperatingLeaseLiability" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_PerformanceBasedAwardsMember_9bcd6ca2-9737-412c-ba37-ed634935d313_terseLabel_en-US" xlink:label="lab_ibp_PerformanceBasedAwardsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Performance-Based Stock Awards</link:label>
    <link:label id="lab_ibp_PerformanceBasedAwardsMember_label_en-US" xlink:label="lab_ibp_PerformanceBasedAwardsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Performance Based Awards [Member]</link:label>
    <link:label id="lab_ibp_PerformanceBasedAwardsMember_documentation_en-US" xlink:label="lab_ibp_PerformanceBasedAwardsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Performance based awards.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_PerformanceBasedAwardsMember" xlink:href="ibp-20221231.xsd#ibp_PerformanceBasedAwardsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_PerformanceBasedAwardsMember" xlink:to="lab_ibp_PerformanceBasedAwardsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_5128e7c5-7c45-458b-98df-18cc96feb1cb_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:to="lab_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_InterestRateSwapOneEffectiveJuly202021Member_f826f5fc-a25e-4ab9-91a5-96c63dbf91db_verboseLabel_en-US" xlink:label="lab_ibp_InterestRateSwapOneEffectiveJuly202021Member" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest Rate Swap One, Effective July 20, 2021</link:label>
    <link:label id="lab_ibp_InterestRateSwapOneEffectiveJuly202021Member_label_en-US" xlink:label="lab_ibp_InterestRateSwapOneEffectiveJuly202021Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest Rate Swap One, Effective July 20, 2021 [Member]</link:label>
    <link:label id="lab_ibp_InterestRateSwapOneEffectiveJuly202021Member_documentation_en-US" xlink:label="lab_ibp_InterestRateSwapOneEffectiveJuly202021Member" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest Rate Swap One, Effective July 20, 2021</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_InterestRateSwapOneEffectiveJuly202021Member" xlink:href="ibp-20221231.xsd#ibp_InterestRateSwapOneEffectiveJuly202021Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_InterestRateSwapOneEffectiveJuly202021Member" xlink:to="lab_ibp_InterestRateSwapOneEffectiveJuly202021Member" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityPaymentsDue_ecd72146-a08c-4848-8a30-de5b681165a6_totalLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total minimum lease payments</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityPaymentsDue_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Liability, to be Paid</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:to="lab_us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_WeightedAverageDiscountRateOfOperatingFinanceLeasesAbstract_fc15b6cb-ab23-4bee-a9d7-10c11971fdfc_verboseLabel_en-US" xlink:label="lab_ibp_WeightedAverageDiscountRateOfOperatingFinanceLeasesAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted-average discount rate</link:label>
    <link:label id="lab_ibp_WeightedAverageDiscountRateOfOperatingFinanceLeasesAbstract_label_en-US" xlink:label="lab_ibp_WeightedAverageDiscountRateOfOperatingFinanceLeasesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Discount rate Of Operating Finance Leases [Abstract]</link:label>
    <link:label id="lab_ibp_WeightedAverageDiscountRateOfOperatingFinanceLeasesAbstract_documentation_en-US" xlink:label="lab_ibp_WeightedAverageDiscountRateOfOperatingFinanceLeasesAbstract" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Represents weighted average discount rate of operating finance leases abstract.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_WeightedAverageDiscountRateOfOperatingFinanceLeasesAbstract" xlink:href="ibp-20221231.xsd#ibp_WeightedAverageDiscountRateOfOperatingFinanceLeasesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_WeightedAverageDiscountRateOfOperatingFinanceLeasesAbstract" xlink:to="lab_ibp_WeightedAverageDiscountRateOfOperatingFinanceLeasesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock_915bf56d-7020-4547-a2cc-d85620ca16d9_terseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Undiscounted Cash Flows Finance Lease Obligations</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Liability, Fiscal Year Maturity [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock" xlink:to="lab_us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract_1d1f2b0d-7902-478c-a8ce-f4eaa396dc52_terseLabel_en-US" xlink:label="lab_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Investments, Debt and Equity Securities [Abstract]</link:label>
    <link:label id="lab_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract_label_en-US" xlink:label="lab_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Investments, Debt and Equity Securities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract" xlink:to="lab_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_f5106aa7-22b2-4b6e-aa09-6ee6f7c66863_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2024</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, Year Two</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_VehiclesAndEquipmentMember_72fd5d12-a69c-46d2-8b44-5881a14f1472_terseLabel_en-US" xlink:label="lab_ibp_VehiclesAndEquipmentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vehicles and equipment</link:label>
    <link:label id="lab_ibp_VehiclesAndEquipmentMember_label_en-US" xlink:label="lab_ibp_VehiclesAndEquipmentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vehicles And Equipment [Member]</link:label>
    <link:label id="lab_ibp_VehiclesAndEquipmentMember_documentation_en-US" xlink:label="lab_ibp_VehiclesAndEquipmentMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vehicles And Equipment [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_VehiclesAndEquipmentMember" xlink:href="ibp-20221231.xsd#ibp_VehiclesAndEquipmentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_VehiclesAndEquipmentMember" xlink:to="lab_ibp_VehiclesAndEquipmentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsNetAbstract_8dbe559d-38e2-4813-b037-bdad84e362d7_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsNetAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsNetAbstract_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsNetAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Net [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsNetAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsNetAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsNetAbstract" xlink:to="lab_us-gaap_DeferredTaxAssetsNetAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ComprehensiveIncomeNetOfTaxAbstract_816a96c1-d594-4ac9-9ef5-eb7d5bb104f1_terseLabel_en-US" xlink:label="lab_us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other comprehensive gain (loss), net of tax:</link:label>
    <link:label id="lab_us-gaap_ComprehensiveIncomeNetOfTaxAbstract_label_en-US" xlink:label="lab_us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Comprehensive Income (Loss), Net of Tax, Attributable to Parent [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ComprehensiveIncomeNetOfTaxAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:to="lab_us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOtherOperatingAssets_8f684edc-c912-4ddb-aa7d-38789a4948ed_negatedLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other assets</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOtherOperatingAssets_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Other Operating Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:to="lab_us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_HedgingRelationshipDomain_2fd5bd21-7871-424c-b069-3cb0db269f01_terseLabel_en-US" xlink:label="lab_us-gaap_HedgingRelationshipDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Hedging Relationship [Domain]</link:label>
    <link:label id="lab_us-gaap_HedgingRelationshipDomain_label_en-US" xlink:label="lab_us-gaap_HedgingRelationshipDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Hedging Relationship [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingRelationshipDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_HedgingRelationshipDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_HedgingRelationshipDomain" xlink:to="lab_us-gaap_HedgingRelationshipDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_0a6d6189-ecb4-48a2-922f-36bb1eeb937f_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2026</link:label>
    <link:label id="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_label_en-US" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Term Debt, Maturity, Year Four</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:to="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_HedgingDesignationAxis_7f39757e-8218-4706-8588-6f63ac68674c_terseLabel_en-US" xlink:label="lab_us-gaap_HedgingDesignationAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Hedging Designation [Axis]</link:label>
    <link:label id="lab_us-gaap_HedgingDesignationAxis_label_en-US" xlink:label="lab_us-gaap_HedgingDesignationAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Hedging Designation [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_HedgingDesignationAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_HedgingDesignationAxis" xlink:to="lab_us-gaap_HedgingDesignationAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_AuditorLocation_4258ac14-4cee-49eb-9581-d1be4d830f81_terseLabel_en-US" xlink:label="lab_dei_AuditorLocation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Auditor Location</link:label>
    <link:label id="lab_dei_AuditorLocation_label_en-US" xlink:label="lab_dei_AuditorLocation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Auditor Location</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AuditorLocation" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AuditorLocation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_AuditorLocation" xlink:to="lab_dei_AuditorLocation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WriteOffOfDeferredDebtIssuanceCost_0029d016-80ee-470c-a6f2-4f2bd0c52bf8_terseLabel_en-US" xlink:label="lab_us-gaap_WriteOffOfDeferredDebtIssuanceCost" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Write-off of debt issuance costs</link:label>
    <link:label id="lab_us-gaap_WriteOffOfDeferredDebtIssuanceCost_78de43dd-8611-4a39-9013-28f10db66a66_verboseLabel_en-US" xlink:label="lab_us-gaap_WriteOffOfDeferredDebtIssuanceCost" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Write-off of debt issuance costs, included in interest expense</link:label>
    <link:label id="lab_us-gaap_WriteOffOfDeferredDebtIssuanceCost_label_en-US" xlink:label="lab_us-gaap_WriteOffOfDeferredDebtIssuanceCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Write off of Deferred Debt Issuance Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WriteOffOfDeferredDebtIssuanceCost" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WriteOffOfDeferredDebtIssuanceCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WriteOffOfDeferredDebtIssuanceCost" xlink:to="lab_us-gaap_WriteOffOfDeferredDebtIssuanceCost" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityFilerCategory_582153ba-6051-441e-876c-13018aa851a8_terseLabel_en-US" xlink:label="lab_dei_EntityFilerCategory" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Filer Category</link:label>
    <link:label id="lab_dei_EntityFilerCategory_label_en-US" xlink:label="lab_dei_EntityFilerCategory" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Filer Category</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFilerCategory" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityFilerCategory"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityFilerCategory" xlink:to="lab_dei_EntityFilerCategory" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CurrentFederalTaxExpenseBenefit_689de360-bfc5-4583-b10c-b2f5e10fff5e_terseLabel_en-US" xlink:label="lab_us-gaap_CurrentFederalTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Federal</link:label>
    <link:label id="lab_us-gaap_CurrentFederalTaxExpenseBenefit_label_en-US" xlink:label="lab_us-gaap_CurrentFederalTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current Federal Tax Expense (Benefit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentFederalTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentFederalTaxExpenseBenefit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CurrentFederalTaxExpenseBenefit" xlink:to="lab_us-gaap_CurrentFederalTaxExpenseBenefit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual_6f723731-e31b-45e9-b89f-2a266b457f97_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Income (Loss)</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Pro Forma Information, Earnings or Loss of Acquiree since Acquisition Date, Actual</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual" xlink:to="lab_us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock_29a155db-b812-430c-887f-8cff8493fa50_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unrecognized Share-Based Compensation Expense Related to Unvested Awards</link:label>
    <link:label id="lab_us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement, Nonvested Award, Cost [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_IntangibleAssetsExcludingCustomerRelationshipsMember_baa0d506-28e8-4181-ba96-14fb6c99405f_terseLabel_en-US" xlink:label="lab_ibp_IntangibleAssetsExcludingCustomerRelationshipsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other intangibles, net</link:label>
    <link:label id="lab_ibp_IntangibleAssetsExcludingCustomerRelationshipsMember_label_en-US" xlink:label="lab_ibp_IntangibleAssetsExcludingCustomerRelationshipsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Intangible Assets Excluding Customer Relationships [Member]</link:label>
    <link:label id="lab_ibp_IntangibleAssetsExcludingCustomerRelationshipsMember_documentation_en-US" xlink:label="lab_ibp_IntangibleAssetsExcludingCustomerRelationshipsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Intangible Assets Excluding Customer Relationships</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_IntangibleAssetsExcludingCustomerRelationshipsMember" xlink:href="ibp-20221231.xsd#ibp_IntangibleAssetsExcludingCustomerRelationshipsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_IntangibleAssetsExcludingCustomerRelationshipsMember" xlink:to="lab_ibp_IntangibleAssetsExcludingCustomerRelationshipsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RepaymentsOfMediumTermNotes_656e33e4-47d2-4994-80cd-004b27e07890_negatedLabel_en-US" xlink:label="lab_us-gaap_RepaymentsOfMediumTermNotes" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments on term loan (Note 8)</link:label>
    <link:label id="lab_us-gaap_RepaymentsOfMediumTermNotes_label_en-US" xlink:label="lab_us-gaap_RepaymentsOfMediumTermNotes" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Repayments of Medium-term Notes</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfMediumTermNotes" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RepaymentsOfMediumTermNotes"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RepaymentsOfMediumTermNotes" xlink:to="lab_us-gaap_RepaymentsOfMediumTermNotes" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesFairValueDisclosureAbstract_cb1b2a07-13d9-47ba-8824-e33c7aec254c_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesFairValueDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Financial liabilities:</link:label>
    <link:label id="lab_us-gaap_LiabilitiesFairValueDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_LiabilitiesFairValueDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities, Fair Value Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesFairValueDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract" xlink:to="lab_us-gaap_LiabilitiesFairValueDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AllocatedShareBasedCompensationExpense_95f3f998-056c-46ca-95e5-4dd657e9a4b6_terseLabel_en-US" xlink:label="lab_us-gaap_AllocatedShareBasedCompensationExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based compensation expense</link:label>
    <link:label id="lab_us-gaap_AllocatedShareBasedCompensationExpense_bc160a05-1e8f-4385-9bb2-b23a3e33099b_verboseLabel_en-US" xlink:label="lab_us-gaap_AllocatedShareBasedCompensationExpense" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock compensation expense</link:label>
    <link:label id="lab_us-gaap_AllocatedShareBasedCompensationExpense_label_en-US" xlink:label="lab_us-gaap_AllocatedShareBasedCompensationExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement, Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllocatedShareBasedCompensationExpense" xlink:to="lab_us-gaap_AllocatedShareBasedCompensationExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NoncashInvestingAndFinancingItemsAbstract_5820d09a-d632-483d-bd51-98588e117fab_verboseLabel_en-US" xlink:label="lab_us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Supplemental disclosure of noncash activities</link:label>
    <link:label id="lab_us-gaap_NoncashInvestingAndFinancingItemsAbstract_label_en-US" xlink:label="lab_us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Noncash Investing and Financing Items [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncashInvestingAndFinancingItemsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:to="lab_us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommitmentsAndContingencies_254b0637-d927-4908-8156-aff94c276b83_verboseLabel_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingencies" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commitments and contingencies (Note 17)</link:label>
    <link:label id="lab_us-gaap_CommitmentsAndContingencies_label_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingencies" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commitments and Contingencies</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingencies" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingencies"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingencies" xlink:to="lab_us-gaap_CommitmentsAndContingencies" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_SecurityExchangeName_8960424f-6965-4825-8137-2317ce46150c_terseLabel_en-US" xlink:label="lab_dei_SecurityExchangeName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Security Exchange Name</link:label>
    <link:label id="lab_dei_SecurityExchangeName_label_en-US" xlink:label="lab_dei_SecurityExchangeName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Security Exchange Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_SecurityExchangeName" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_SecurityExchangeName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_SecurityExchangeName" xlink:to="lab_dei_SecurityExchangeName" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_a8b7a45f-72ad-4239-8420-7f6cd7919bbc_terseLabel_en-US" xlink:label="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Estimated Useful Life (yrs)</link:label>
    <link:label id="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_label_en-US" xlink:label="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Acquired Finite-Lived Intangible Assets, Weighted Average Useful Life</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:to="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_1ae03576-9384-4534-a547-2d550b025abe_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]</link:label>
    <link:label id="lab_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_label_en-US" xlink:label="lab_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems" xlink:to="lab_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_ecbeba01-282c-4984-b785-3c8a0fc2bbc5_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other long-term liabilities</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Noncurrent Liabilities, Other</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_7a1d9a85-05fa-4733-96fe-d9f96f6d35fa_verboseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net revenue</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_6e78ab15-9444-4e4e-842f-5464130e5797_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue from Contract with Customer, Excluding Assessed Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_OtherSegmentMember_4c71265b-279f-49dc-9a9e-e25cae20fd72_terseLabel_en-US" xlink:label="lab_ibp_OtherSegmentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other</link:label>
    <link:label id="lab_ibp_OtherSegmentMember_label_en-US" xlink:label="lab_ibp_OtherSegmentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Segment [Member]</link:label>
    <link:label id="lab_ibp_OtherSegmentMember_documentation_en-US" xlink:label="lab_ibp_OtherSegmentMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Segment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_OtherSegmentMember" xlink:href="ibp-20221231.xsd#ibp_OtherSegmentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_OtherSegmentMember" xlink:to="lab_ibp_OtherSegmentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DividendsDomain_0f357f4d-52fa-4b03-bd9e-6d0562de21f2_terseLabel_en-US" xlink:label="lab_us-gaap_DividendsDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Dividends [Domain]</link:label>
    <link:label id="lab_us-gaap_DividendsDomain_label_en-US" xlink:label="lab_us-gaap_DividendsDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Dividends [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DividendsDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DividendsDomain" xlink:to="lab_us-gaap_DividendsDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_CoverAbstract_d3d8847e-3f4e-4d4c-a9a4-92a9c1e1174c_terseLabel_en-US" xlink:label="lab_dei_CoverAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cover [Abstract]</link:label>
    <link:label id="lab_dei_CoverAbstract_label_en-US" xlink:label="lab_dei_CoverAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cover [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CoverAbstract" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CoverAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CoverAbstract" xlink:to="lab_dei_CoverAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_ScheduleOfInsuranceLossReservesForInsuredObligationsTableTextBlock_4ce5b2a5-0f12-488d-83e6-4eabda3d0ed4_terseLabel_en-US" xlink:label="lab_ibp_ScheduleOfInsuranceLossReservesForInsuredObligationsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Insurance Receivable for Claims</link:label>
    <link:label id="lab_ibp_ScheduleOfInsuranceLossReservesForInsuredObligationsTableTextBlock_label_en-US" xlink:label="lab_ibp_ScheduleOfInsuranceLossReservesForInsuredObligationsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule Of Insurance Loss Reserves For Insured Obligations [Table Text Block]</link:label>
    <link:label id="lab_ibp_ScheduleOfInsuranceLossReservesForInsuredObligationsTableTextBlock_documentation_en-US" xlink:label="lab_ibp_ScheduleOfInsuranceLossReservesForInsuredObligationsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of insurance loss reserves for insured obligations.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_ScheduleOfInsuranceLossReservesForInsuredObligationsTableTextBlock" xlink:href="ibp-20221231.xsd#ibp_ScheduleOfInsuranceLossReservesForInsuredObligationsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_ScheduleOfInsuranceLossReservesForInsuredObligationsTableTextBlock" xlink:to="lab_ibp_ScheduleOfInsuranceLossReservesForInsuredObligationsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityVoluntaryFilers_0b442db0-2f83-4230-9007-c306b5a2fa25_terseLabel_en-US" xlink:label="lab_dei_EntityVoluntaryFilers" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Voluntary Filers</link:label>
    <link:label id="lab_dei_EntityVoluntaryFilers_label_en-US" xlink:label="lab_dei_EntityVoluntaryFilers" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Voluntary Filers</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityVoluntaryFilers" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityVoluntaryFilers"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityVoluntaryFilers" xlink:to="lab_dei_EntityVoluntaryFilers" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillImpairmentLoss_f8421acd-2c2b-4a00-9d6d-c05589d4709c_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillImpairmentLoss" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill impairment</link:label>
    <link:label id="lab_us-gaap_GoodwillImpairmentLoss_label_en-US" xlink:label="lab_us-gaap_GoodwillImpairmentLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill, Impairment Loss</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillImpairmentLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillImpairmentLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillImpairmentLoss" xlink:to="lab_us-gaap_GoodwillImpairmentLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DepreciationAndAmortization_975d64f1-dce0-40f9-b4e8-e5f33332c1fa_verboseLabel_en-US" xlink:label="lab_us-gaap_DepreciationAndAmortization" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Depreciation and amortization of property and equipment</link:label>
    <link:label id="lab_us-gaap_DepreciationAndAmortization_a447c4a9-18be-405b-8433-a5779389230a_terseLabel_en-US" xlink:label="lab_us-gaap_DepreciationAndAmortization" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Depreciation and amortization expense</link:label>
    <link:label id="lab_us-gaap_DepreciationAndAmortization_label_en-US" xlink:label="lab_us-gaap_DepreciationAndAmortization" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Depreciation, Depletion and Amortization, Nonproduction</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationAndAmortization" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DepreciationAndAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DepreciationAndAmortization" xlink:to="lab_us-gaap_DepreciationAndAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent_7f87c9e0-c915-46d7-b59e-f80a314d88c5_terseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance leases (as percent)</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Weighted Average Discount Rate, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent" xlink:to="lab_us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerTextBlock_27c84c61-b939-4bf5-afdf-f94b37ce3d4b_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue Recognition</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerTextBlock_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue from Contract with Customer [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SegmentReportingAbstract_label_en-US" xlink:label="lab_us-gaap_SegmentReportingAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segment Reporting [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingAbstract" xlink:to="lab_us-gaap_SegmentReportingAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashAcquiredFromAcquisition_2b06fd5d-49dd-4c82-8fde-edca0f1b9629_terseLabel_en-US" xlink:label="lab_us-gaap_CashAcquiredFromAcquisition" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash acquired, net</link:label>
    <link:label id="lab_us-gaap_CashAcquiredFromAcquisition_label_en-US" xlink:label="lab_us-gaap_CashAcquiredFromAcquisition" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash Acquired from Acquisition</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAcquiredFromAcquisition" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAcquiredFromAcquisition"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAcquiredFromAcquisition" xlink:to="lab_us-gaap_CashAcquiredFromAcquisition" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_FinanceLeaseMember_001b6180-060d-41cc-bfd4-1ebe842cd3e4_terseLabel_en-US" xlink:label="lab_ibp_FinanceLeaseMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease</link:label>
    <link:label id="lab_ibp_FinanceLeaseMember_label_en-US" xlink:label="lab_ibp_FinanceLeaseMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease [Member]</link:label>
    <link:label id="lab_ibp_FinanceLeaseMember_documentation_en-US" xlink:label="lab_ibp_FinanceLeaseMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FinanceLeaseMember" xlink:href="ibp-20221231.xsd#ibp_FinanceLeaseMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_FinanceLeaseMember" xlink:to="lab_ibp_FinanceLeaseMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_ab3f8f81-fed4-4c9c-807e-299d1de66d1c_periodStartLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Nonvested common stock awards, Beginning balance (in USD per share)</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_65c43e0c-d21a-46cc-925c-50fdaf1a53b2_periodEndLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Nonvested common stock awards, Ending balance (in USD per share)</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Option, Nonvested, Weighted Average Exercise Price</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ScenarioForecastMember_676f97b7-a402-40a6-a730-d218a52f4d8f_terseLabel_en-US" xlink:label="lab_srt_ScenarioForecastMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Forecast</link:label>
    <link:label id="lab_srt_ScenarioForecastMember_label_en-US" xlink:label="lab_srt_ScenarioForecastMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Forecast [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioForecastMember" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioForecastMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ScenarioForecastMember" xlink:to="lab_srt_ScenarioForecastMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentsIncorporatedByReferenceTextBlock_04fb78ee-44f2-476f-99fc-5668681e667f_terseLabel_en-US" xlink:label="lab_dei_DocumentsIncorporatedByReferenceTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Documents Incorporated by Reference</link:label>
    <link:label id="lab_dei_DocumentsIncorporatedByReferenceTextBlock_label_en-US" xlink:label="lab_dei_DocumentsIncorporatedByReferenceTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Documents Incorporated by Reference [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentsIncorporatedByReferenceTextBlock" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentsIncorporatedByReferenceTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentsIncorporatedByReferenceTextBlock" xlink:to="lab_dei_DocumentsIncorporatedByReferenceTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquity_4cd67cbf-5450-4623-9f7d-6542cc2e1623_totalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total liabilities and stockholders&#8217; equity</link:label>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquity_label_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities and Equity</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="lab_us-gaap_LiabilitiesAndStockholdersEquity" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AmortizationOfFinancingCosts_7e04c4dd-572a-48d7-98fd-6a905ebc414a_terseLabel_en-US" xlink:label="lab_us-gaap_AmortizationOfFinancingCosts" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization expense related to financing costs</link:label>
    <link:label id="lab_us-gaap_AmortizationOfFinancingCosts_label_en-US" xlink:label="lab_us-gaap_AmortizationOfFinancingCosts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization of Debt Issuance Costs</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfFinancingCosts" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfFinancingCosts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AmortizationOfFinancingCosts" xlink:to="lab_us-gaap_AmortizationOfFinancingCosts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongtermDebtTypeAxis_b833473b-5ff2-4ad5-bcdd-44ce2b507908_terseLabel_en-US" xlink:label="lab_us-gaap_LongtermDebtTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term Debt, Type [Axis]</link:label>
    <link:label id="lab_us-gaap_LongtermDebtTypeAxis_label_en-US" xlink:label="lab_us-gaap_LongtermDebtTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Term Debt, Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongtermDebtTypeAxis" xlink:to="lab_us-gaap_LongtermDebtTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_ResidentialNewConstructionMember_a524c5b0-15d8-4437-9f5d-9ac7a152ab7e_terseLabel_en-US" xlink:label="lab_ibp_ResidentialNewConstructionMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Residential new construction</link:label>
    <link:label id="lab_ibp_ResidentialNewConstructionMember_label_en-US" xlink:label="lab_ibp_ResidentialNewConstructionMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Residential New Construction [Member]</link:label>
    <link:label id="lab_ibp_ResidentialNewConstructionMember_documentation_en-US" xlink:label="lab_ibp_ResidentialNewConstructionMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Residential new construction.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_ResidentialNewConstructionMember" xlink:href="ibp-20221231.xsd#ibp_ResidentialNewConstructionMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_ResidentialNewConstructionMember" xlink:to="lab_ibp_ResidentialNewConstructionMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1_5b1b95ac-0aa3-4381-925d-58b519e7734e_terseLabel_en-US" xlink:label="lab_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock repurchase program, remaining authorized repurchase amount</link:label>
    <link:label id="lab_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1_label_en-US" xlink:label="lab_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Repurchase Program, Remaining Authorized Repurchase Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:to="lab_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets_08ff9256-03df-40ee-a123-52ad3b1d9bd5_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Intangibles</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Goodwill and Intangible Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets" xlink:to="lab_us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsGross_f4d55714-248c-4e38-a38d-95fc99cc24fd_totalLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsGross" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term deferred tax assets</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsGross_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsGross" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsGross" xlink:to="lab_us-gaap_DeferredTaxAssetsGross" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsToAcquireInvestments_a41d78fd-039d-4909-82a0-584d7227ed4e_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireInvestments" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Purchases of investments</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquireInvestments_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireInvestments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments to Acquire Investments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireInvestments" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireInvestments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquireInvestments" xlink:to="lab_us-gaap_PaymentsToAcquireInvestments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_ff6fef55-0244-44a7-abf8-9b7dfe9719d9_terseLabel_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Uncertain tax positions, interest expense and penalties accrued</link:label>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_label_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unrecognized Tax Benefits, Income Tax Penalties and Interest Accrued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xlink:to="lab_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_dca809da-5b86-4d33-bf59-a82ec2c1a289_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Less: Amounts representing interest</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, Undiscounted Excess Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_VestingAxis_48e73856-a3f3-4576-a0ae-ba4e19a8b4a0_terseLabel_en-US" xlink:label="lab_us-gaap_VestingAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vesting [Axis]</link:label>
    <link:label id="lab_us-gaap_VestingAxis_label_en-US" xlink:label="lab_us-gaap_VestingAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vesting [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VestingAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VestingAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_VestingAxis" xlink:to="lab_us-gaap_VestingAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareDiluted_792235de-fba9-4712-ab5b-80009b02e119_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareDiluted" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Diluted (in USD per share)</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareDiluted_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareDiluted" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Earnings Per Share, Diluted</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDiluted" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareDiluted"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareDiluted" xlink:to="lab_us-gaap_EarningsPerShareDiluted" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_44162a66-c83f-4add-a627-3b5da2ef859d_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from sale of property and equipment</link:label>
    <link:label id="lab_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_label_en-US" xlink:label="lab_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from Sale of Property, Plant, and Equipment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:to="lab_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TrademarksAndTradeNamesMember_b81ea2d8-8f86-476b-b8de-b3c382a2e995_terseLabel_en-US" xlink:label="lab_us-gaap_TrademarksAndTradeNamesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Trademarks and tradenames</link:label>
    <link:label id="lab_us-gaap_TrademarksAndTradeNamesMember_label_en-US" xlink:label="lab_us-gaap_TrademarksAndTradeNamesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Trademarks and Trade Names [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TrademarksAndTradeNamesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrademarksAndTradeNamesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TrademarksAndTradeNamesMember" xlink:to="lab_us-gaap_TrademarksAndTradeNamesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_d214361d-8f27-4581-9e16-a6a625a2e942_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vesting period (in years)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsLineItems_0fed6bc1-3c3a-45f3-8379-430e24fd697d_terseLabel_en-US" xlink:label="lab_ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Future Minimum Payments Under Non Cancelable Operating Leases With Initial Or Remaining Lease Terms In Excess Of One Year And Future Minimum Capital Lease Payments [Line Items]</link:label>
    <link:label id="lab_ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsLineItems_label_en-US" xlink:label="lab_ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Future Minimum Payments Under Non Cancelable Operating Leases With Initial Or Remaining Lease Terms In Excess Of One Year And Future Minimum Capital Lease Payments [Line Items]</link:label>
    <link:label id="lab_ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsLineItems_documentation_en-US" xlink:label="lab_ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsLineItems" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Future Minimum Payments Under Non Cancelable Operating Leases With Initial Or Remaining Lease Terms In Excess Of One Year And Future Minimum Capital Lease Payments [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsLineItems" xlink:href="ibp-20221231.xsd#ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsLineItems" xlink:to="lab_ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountingStandardsUpdate201613Member_e32dbca3-d9f9-480f-95b5-a8fe1ae37584_terseLabel_en-US" xlink:label="lab_us-gaap_AccountingStandardsUpdate201613Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounting Standards Update 2016-13</link:label>
    <link:label id="lab_us-gaap_AccountingStandardsUpdate201613Member_label_en-US" xlink:label="lab_us-gaap_AccountingStandardsUpdate201613Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounting Standards Update 2016-13 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingStandardsUpdate201613Member" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingStandardsUpdate201613Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountingStandardsUpdate201613Member" xlink:to="lab_us-gaap_AccountingStandardsUpdate201613Member" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ConsolidationItemsAxis_d4066cec-843f-43be-891b-842b02378ed5_terseLabel_en-US" xlink:label="lab_srt_ConsolidationItemsAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Consolidation Items [Axis]</link:label>
    <link:label id="lab_srt_ConsolidationItemsAxis_label_en-US" xlink:label="lab_srt_ConsolidationItemsAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Consolidation Items [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ConsolidationItemsAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ConsolidationItemsAxis" xlink:to="lab_srt_ConsolidationItemsAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_InterestRateSwapTwoEffectiveDecember312021Member_15ab6169-9309-48e6-8f41-a4125c457997_terseLabel_en-US" xlink:label="lab_ibp_InterestRateSwapTwoEffectiveDecember312021Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest Rate Swap Two, Effective December 31, 2021</link:label>
    <link:label id="lab_ibp_InterestRateSwapTwoEffectiveDecember312021Member_label_en-US" xlink:label="lab_ibp_InterestRateSwapTwoEffectiveDecember312021Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest Rate Swap Two, Effective December 31, 2021 [Member]</link:label>
    <link:label id="lab_ibp_InterestRateSwapTwoEffectiveDecember312021Member_documentation_en-US" xlink:label="lab_ibp_InterestRateSwapTwoEffectiveDecember312021Member" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest Rate Swap Two, Effective December 31, 2021</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_InterestRateSwapTwoEffectiveDecember312021Member" xlink:href="ibp-20221231.xsd#ibp_InterestRateSwapTwoEffectiveDecember312021Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_InterestRateSwapTwoEffectiveDecember312021Member" xlink:to="lab_ibp_InterestRateSwapTwoEffectiveDecember312021Member" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares_4c9989a2-943a-4f2e-adc6-31843e3388e1_negatedLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vested (in shares)</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested, Number of Shares</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_bc8e3620-30ec-4871-bc38-a6dc1bb3edfb_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2024</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year Two</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_AccountingPoliciesAndGeneralInformationTable_3b362674-24ee-4108-9d00-dde64cb377dd_terseLabel_en-US" xlink:label="lab_ibp_AccountingPoliciesAndGeneralInformationTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounting Policies And General Information [Table]</link:label>
    <link:label id="lab_ibp_AccountingPoliciesAndGeneralInformationTable_label_en-US" xlink:label="lab_ibp_AccountingPoliciesAndGeneralInformationTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounting Policies And General Information [Table]</link:label>
    <link:label id="lab_ibp_AccountingPoliciesAndGeneralInformationTable_documentation_en-US" xlink:label="lab_ibp_AccountingPoliciesAndGeneralInformationTable" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounting Policies And General Information [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_AccountingPoliciesAndGeneralInformationTable" xlink:href="ibp-20221231.xsd#ibp_AccountingPoliciesAndGeneralInformationTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationTable" xlink:to="lab_ibp_AccountingPoliciesAndGeneralInformationTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefits_ad2714b9-3028-4e11-bb1f-dcb577c50cf2_periodStartLabel_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefits" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unrecognized tax benefit beginning balance</link:label>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefits_1f9f68cf-623e-4e6b-9de3-c22b9f5ff50d_periodEndLabel_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefits" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unrecognized tax benefit ending balance</link:label>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefits_label_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefits" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unrecognized Tax Benefits</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecognizedTaxBenefits" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefits"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecognizedTaxBenefits" xlink:to="lab_us-gaap_UnrecognizedTaxBenefits" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsNet_03245f68-425e-45b9-9622-95cc409eb48e_totalLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsNet" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net deferred tax assets</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsNet_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Net of Valuation Allowance</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsNet" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsNet" xlink:to="lab_us-gaap_DeferredTaxAssetsNet" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_a399ec18-0b95-4fd2-b5eb-df1ca7240364_terseLabel_en-US" xlink:label="lab_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cumulative Effect, Period of Adoption, Adjustment</link:label>
    <link:label id="lab_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_label_en-US" xlink:label="lab_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cumulative Effect, Period of Adoption, Adjustment [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember" xlink:to="lab_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock_b8f141ae-f29f-419e-83b2-aa040bfc57e6_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule Of Changes In Allowance For Credit Losses</link:label>
    <link:label id="lab_us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock_label_en-US" xlink:label="lab_us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock" xlink:to="lab_us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_52803f62-4c6b-4cbd-acf0-a9d2ef0534a9_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Undiscounted Cash Flows Operating Lease Obligations</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, Maturity [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressAddressLine2_216971db-c4fd-46fe-b4b5-740b6787ac8c_terseLabel_en-US" xlink:label="lab_dei_EntityAddressAddressLine2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, Address Line Two</link:label>
    <link:label id="lab_dei_EntityAddressAddressLine2_label_en-US" xlink:label="lab_dei_EntityAddressAddressLine2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, Address Line Two</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressAddressLine2" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressAddressLine2"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressAddressLine2" xlink:to="lab_dei_EntityAddressAddressLine2" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressAddressLine1_2ecca56e-b7f5-42e5-8a4e-42f31b2d8f48_terseLabel_en-US" xlink:label="lab_dei_EntityAddressAddressLine1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, Address Line One</link:label>
    <link:label id="lab_dei_EntityAddressAddressLine1_label_en-US" xlink:label="lab_dei_EntityAddressAddressLine1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, Address Line One</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressAddressLine1" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressAddressLine1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressAddressLine1" xlink:to="lab_dei_EntityAddressAddressLine1" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember_6deec636-b4f4-41f6-b996-50145fbd6fbd_terseLabel_en-US" xlink:label="lab_ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2014 Omnibus Incentive Plan</link:label>
    <link:label id="lab_ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember_label_en-US" xlink:label="lab_ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Two Thousand And Fourteen Omnibus Incentive Plan [Member]</link:label>
    <link:label id="lab_ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember_documentation_en-US" xlink:label="lab_ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Two thousand and fourteen omnibus incentive plan.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember" xlink:href="ibp-20221231.xsd#ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember" xlink:to="lab_ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ContractWithCustomerLiability_77030e13-017c-4e09-84a6-74f18d6bf165_negatedLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiability" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract liabilities</link:label>
    <link:label id="lab_us-gaap_ContractWithCustomerLiability_label_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract with Customer, Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiability" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerLiability"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerLiability" xlink:to="lab_us-gaap_ContractWithCustomerLiability" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ProductOrServiceAxis_505f5a23-bf2a-4c27-8ca9-3649e939e835_terseLabel_en-US" xlink:label="lab_srt_ProductOrServiceAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product and Service [Axis]</link:label>
    <link:label id="lab_srt_ProductOrServiceAxis_label_en-US" xlink:label="lab_srt_ProductOrServiceAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product and Service [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductOrServiceAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ProductOrServiceAxis" xlink:to="lab_srt_ProductOrServiceAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_e54405de-bcef-4c49-aa72-2671812f7c06_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other non-current assets</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Other Noncurrent Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InterestExpense_920b17be-540f-48c3-aed0-85501edce50d_verboseLabel_en-US" xlink:label="lab_us-gaap_InterestExpense" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest expense, net</link:label>
    <link:label id="lab_us-gaap_InterestExpense_456df201-a7a5-45ec-aaee-b9c7d9bb6467_terseLabel_en-US" xlink:label="lab_us-gaap_InterestExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other expense, net</link:label>
    <link:label id="lab_us-gaap_InterestExpense_label_en-US" xlink:label="lab_us-gaap_InterestExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InterestExpense" xlink:to="lab_us-gaap_InterestExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue_d7a7e1ac-96ba-421b-a8e4-7403aab4f45d_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vested (in USD per share)</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested, Weighted Average Grant Date Fair Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts_983f4d88-a8c9-4edd-ae2d-32a2f7386589_terseLabel_en-US" xlink:label="lab_ibp_CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Costs and estimated earnings in excess of billings on uncompleted contracts (contract assets)</link:label>
    <link:label id="lab_ibp_CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts_label_en-US" xlink:label="lab_ibp_CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Costs And Estimated Earnings In Excess Of Billing On Uncompleted Contracts</link:label>
    <link:label id="lab_ibp_CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts_documentation_en-US" xlink:label="lab_ibp_CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Costs And Estimated Earnings In Excess Of Billing On Uncompleted Contracts</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts" xlink:href="ibp-20221231.xsd#ibp_CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts" xlink:to="lab_ibp_CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RetirementPlanTypeAxis_d0593611-1c38-4eac-9f42-b6276c174e14_terseLabel_en-US" xlink:label="lab_us-gaap_RetirementPlanTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retirement Plan Type [Axis]</link:label>
    <link:label id="lab_us-gaap_RetirementPlanTypeAxis_label_en-US" xlink:label="lab_us-gaap_RetirementPlanTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retirement Plan Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetirementPlanTypeAxis" xlink:to="lab_us-gaap_RetirementPlanTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccruedInsuranceCurrentAndNoncurrent_55a069ce-6bc6-4908-b558-eedb5cbe3f36_totalLabel_en-US" xlink:label="lab_us-gaap_AccruedInsuranceCurrentAndNoncurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total</link:label>
    <link:label id="lab_us-gaap_AccruedInsuranceCurrentAndNoncurrent_label_en-US" xlink:label="lab_us-gaap_AccruedInsuranceCurrentAndNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued Insurance</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedInsuranceCurrentAndNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedInsuranceCurrentAndNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedInsuranceCurrentAndNoncurrent" xlink:to="lab_us-gaap_AccruedInsuranceCurrentAndNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BuildingMember_01ec8704-2da6-4889-b34a-5f5521ec9ae2_terseLabel_en-US" xlink:label="lab_us-gaap_BuildingMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Buildings</link:label>
    <link:label id="lab_us-gaap_BuildingMember_label_en-US" xlink:label="lab_us-gaap_BuildingMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Building [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BuildingMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BuildingMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BuildingMember" xlink:to="lab_us-gaap_BuildingMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherNoncurrentAssetsMember_89ea8651-c7b9-454c-b792-fd3c6e7e8123_terseLabel_en-US" xlink:label="lab_us-gaap_OtherNoncurrentAssetsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other non-current assets</link:label>
    <link:label id="lab_us-gaap_OtherNoncurrentAssetsMember_label_en-US" xlink:label="lab_us-gaap_OtherNoncurrentAssetsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Noncurrent Assets [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNoncurrentAssetsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNoncurrentAssetsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherNoncurrentAssetsMember" xlink:to="lab_us-gaap_OtherNoncurrentAssetsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PriorPeriodReclassificationAdjustmentDescription_f3b2d74f-0851-4f7b-9634-dbf6fb835b92_terseLabel_en-US" xlink:label="lab_us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reclassification</link:label>
    <link:label id="lab_us-gaap_PriorPeriodReclassificationAdjustmentDescription_label_en-US" xlink:label="lab_us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reclassification, Comparability Adjustment [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PriorPeriodReclassificationAdjustmentDescription"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:to="lab_us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdvertisingExpense_919d7953-6cde-4ca8-a8e2-b76d06a436a8_terseLabel_en-US" xlink:label="lab_us-gaap_AdvertisingExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Advertising expenses</link:label>
    <link:label id="lab_us-gaap_AdvertisingExpense_label_en-US" xlink:label="lab_us-gaap_AdvertisingExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Advertising Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdvertisingExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdvertisingExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdvertisingExpense" xlink:to="lab_us-gaap_AdvertisingExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_MultiemployerPlanEmployerContributionCost_d0367ca1-4596-4b22-b9cd-5af4659fea91_terseLabel_en-US" xlink:label="lab_us-gaap_MultiemployerPlanEmployerContributionCost" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total contributions</link:label>
    <link:label id="lab_us-gaap_MultiemployerPlanEmployerContributionCost_label_en-US" xlink:label="lab_us-gaap_MultiemployerPlanEmployerContributionCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Multiemployer Plan, Employer Contribution, Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MultiemployerPlanEmployerContributionCost" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MultiemployerPlanEmployerContributionCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MultiemployerPlanEmployerContributionCost" xlink:to="lab_us-gaap_MultiemployerPlanEmployerContributionCost" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTableTextBlock_adbc7dcc-d693-4385-8263-3fd0305509a7_terseLabel_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary of Revenues Disaggregated by End Market and Product</link:label>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTableTextBlock_label_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disaggregation of Revenue [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:to="lab_us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredIncomeTaxLiabilities_a37f71fa-65be-4da0-bc27-8ecef43c7136_negatedTotalLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilities" xlink:role="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term deferred tax liabilities</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxLiabilities_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Liabilities, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxLiabilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilities" xlink:to="lab_us-gaap_DeferredIncomeTaxLiabilities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerAbstract_471f6041-3e94-4e27-9d94-23774d2d13d6_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue from Contract with Customer [Abstract]</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerAbstract_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue from Contract with Customer [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromNotesPayable_1a46b71e-584c-4170-a857-363b9f0f2f9b_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromNotesPayable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from vehicle and equipment notes payable</link:label>
    <link:label id="lab_us-gaap_ProceedsFromNotesPayable_label_en-US" xlink:label="lab_us-gaap_ProceedsFromNotesPayable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from Notes Payable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromNotesPayable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromNotesPayable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromNotesPayable" xlink:to="lab_us-gaap_ProceedsFromNotesPayable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NoncompeteAgreementsMember_d7c1a985-04df-4569-b06a-ad75ddfb1e1d_terseLabel_en-US" xlink:label="lab_us-gaap_NoncompeteAgreementsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Covenants not-to-compete</link:label>
    <link:label id="lab_us-gaap_NoncompeteAgreementsMember_793e7c6c-737e-431d-8f2d-c7c7251934bc_verboseLabel_en-US" xlink:label="lab_us-gaap_NoncompeteAgreementsMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Non-competition agreements</link:label>
    <link:label id="lab_us-gaap_NoncompeteAgreementsMember_label_en-US" xlink:label="lab_us-gaap_NoncompeteAgreementsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Noncompete Agreements [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NoncompeteAgreementsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncompeteAgreementsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NoncompeteAgreementsMember" xlink:to="lab_us-gaap_NoncompeteAgreementsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_15d99c6b-d15a-43cd-b60b-f5e5f009e2c6_verboseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property and equipment, gross</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_f6161cc3-e995-4582-bdbe-d663c763eaae_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets relating to master loan agreements, gross</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant, and Equipment and Finance Lease Right-of-Use Asset, before Accumulated Depreciation and Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseInterestPaymentOnLiability_a61acf5a-2712-4bcd-94fc-18c45842a4c5_verboseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseInterestPaymentOnLiability" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating cash flows for finance leases</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseInterestPaymentOnLiability_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseInterestPaymentOnLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Interest Payment on Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseInterestPaymentOnLiability" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseInterestPaymentOnLiability"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseInterestPaymentOnLiability" xlink:to="lab_us-gaap_FinanceLeaseInterestPaymentOnLiability" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock_efe3dbff-e28c-48a6-a223-5b10ebaf0621_terseLabel_en-US" xlink:label="lab_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Impairment of Other Intangible and Long-Lived Assets</link:label>
    <link:label id="lab_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Impairment or Disposal of Long-Lived Assets, Including Intangible Assets, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock" xlink:to="lab_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_d8175fb2-c1d7-47c9-afd6-9ba69137b298_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2027</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, Year Five</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_f913e572-fcf3-4ba2-9d9b-0c3b33f06b3a_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Grant Date Fair Value Per Share</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis_bdcd9068-198f-42ea-9782-ae8d6a58883d_terseLabel_en-US" xlink:label="lab_srt_RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Name of Property [Axis]</link:label>
    <link:label id="lab_srt_RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis_label_en-US" xlink:label="lab_srt_RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Name of Property [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis" xlink:to="lab_srt_RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_VehicleAndEquipmentNotesMember_e917a95d-3a08-4931-855b-fbaba096175e_terseLabel_en-US" xlink:label="lab_ibp_VehicleAndEquipmentNotesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vehicle and Equipment</link:label>
    <link:label id="lab_ibp_VehicleAndEquipmentNotesMember_label_en-US" xlink:label="lab_ibp_VehicleAndEquipmentNotesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vehicle And Equipment Notes [Member]</link:label>
    <link:label id="lab_ibp_VehicleAndEquipmentNotesMember_documentation_en-US" xlink:label="lab_ibp_VehicleAndEquipmentNotesMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vehicle and equipment notes.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_VehicleAndEquipmentNotesMember" xlink:href="ibp-20221231.xsd#ibp_VehicleAndEquipmentNotesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_VehicleAndEquipmentNotesMember" xlink:to="lab_ibp_VehicleAndEquipmentNotesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TypeOfAdoptionMember_eb204d48-6784-4e19-8e61-42496e137d5f_terseLabel_en-US" xlink:label="lab_us-gaap_TypeOfAdoptionMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Type of Adoption [Domain]</link:label>
    <link:label id="lab_us-gaap_TypeOfAdoptionMember_label_en-US" xlink:label="lab_us-gaap_TypeOfAdoptionMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounting Standards Update [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TypeOfAdoptionMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfAdoptionMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TypeOfAdoptionMember" xlink:to="lab_us-gaap_TypeOfAdoptionMember" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_DeferredOfferingCostsPolicyTextBlock_275f1811-fa6b-49a3-b414-c3515e86ed7f_terseLabel_en-US" xlink:label="lab_ibp_DeferredOfferingCostsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Financing Costs</link:label>
    <link:label id="lab_ibp_DeferredOfferingCostsPolicyTextBlock_label_en-US" xlink:label="lab_ibp_DeferredOfferingCostsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Offering Costs [Policy Text Block]</link:label>
    <link:label id="lab_ibp_DeferredOfferingCostsPolicyTextBlock_documentation_en-US" xlink:label="lab_ibp_DeferredOfferingCostsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Offering Costs Policy.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DeferredOfferingCostsPolicyTextBlock" xlink:href="ibp-20221231.xsd#ibp_DeferredOfferingCostsPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_DeferredOfferingCostsPolicyTextBlock" xlink:to="lab_ibp_DeferredOfferingCostsPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GeneralAndAdministrativeExpense_93819388-037f-425e-adf2-e36c829e9a49_terseLabel_en-US" xlink:label="lab_us-gaap_GeneralAndAdministrativeExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Administrative</link:label>
    <link:label id="lab_us-gaap_GeneralAndAdministrativeExpense_label_en-US" xlink:label="lab_us-gaap_GeneralAndAdministrativeExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">General and Administrative Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GeneralAndAdministrativeExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GeneralAndAdministrativeExpense" xlink:to="lab_us-gaap_GeneralAndAdministrativeExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongtermDebtTypeDomain_5c85846c-1a83-4419-acff-5482846508ef_terseLabel_en-US" xlink:label="lab_us-gaap_LongtermDebtTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term Debt, Type [Domain]</link:label>
    <link:label id="lab_us-gaap_LongtermDebtTypeDomain_label_en-US" xlink:label="lab_us-gaap_LongtermDebtTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Term Debt, Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongtermDebtTypeDomain" xlink:to="lab_us-gaap_LongtermDebtTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CompensationAndRetirementDisclosureAbstract_1bcb8980-c661-42fe-ab13-2c55efce1042_terseLabel_en-US" xlink:label="lab_us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retirement Benefits [Abstract]</link:label>
    <link:label id="lab_us-gaap_CompensationAndRetirementDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retirement Benefits [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:to="lab_us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_d13e80a0-85dc-4b50-b8e9-9dbc9a4c6683_periodStartLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Nonvested common stock awards, Beginning balance (in shares)</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_08d81e71-7790-4460-a896-e1639dbb1d86_periodEndLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Nonvested common stock awards, Ending balance (in shares)</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Nonvested, Number of Shares</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementOfStockholdersEquityAbstract_24ecf895-cc54-4e96-97f1-25b7dc7a5781_terseLabel_en-US" xlink:label="lab_us-gaap_StatementOfStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Stockholders' Equity [Abstract]</link:label>
    <link:label id="lab_us-gaap_StatementOfStockholdersEquityAbstract_label_en-US" xlink:label="lab_us-gaap_StatementOfStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Stockholders' Equity [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfStockholdersEquityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="lab_us-gaap_StatementOfStockholdersEquityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy_eef9ce4f-8fd8-4df0-b98f-00c07f8e42a1_terseLabel_en-US" xlink:label="lab_ibp_InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Insurance receivables and indemnification assets for claims under fully insured policies</link:label>
    <link:label id="lab_ibp_InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy_label_en-US" xlink:label="lab_ibp_InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Insurance Receivable And Indemnification Asset For Claims Under Fully Insured Policy</link:label>
    <link:label id="lab_ibp_InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy_documentation_en-US" xlink:label="lab_ibp_InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Insurance receivable and indemnification asset for claims under fully insured policy.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy" xlink:href="ibp-20221231.xsd#ibp_InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy" xlink:to="lab_ibp_InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_27af58e6-0a7a-42cb-b807-5b1fc65d6069_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income tax at federal statutory rate</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation at Federal Statutory Income Tax Rate, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:to="lab_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DividendsAxis_bca09f44-3594-4cd6-8944-730c78d1a8f0_terseLabel_en-US" xlink:label="lab_us-gaap_DividendsAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Dividends [Axis]</link:label>
    <link:label id="lab_us-gaap_DividendsAxis_label_en-US" xlink:label="lab_us-gaap_DividendsAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Dividends [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DividendsAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DividendsAxis" xlink:to="lab_us-gaap_DividendsAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_NonCurrentLeaseAssetsAbstract_3012b020-e046-4993-a886-c9a42f3c758c_verboseLabel_en-US" xlink:label="lab_ibp_NonCurrentLeaseAssetsAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Non-Current</link:label>
    <link:label id="lab_ibp_NonCurrentLeaseAssetsAbstract_label_en-US" xlink:label="lab_ibp_NonCurrentLeaseAssetsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Non Current Lease Assets [Abstract]</link:label>
    <link:label id="lab_ibp_NonCurrentLeaseAssetsAbstract_documentation_en-US" xlink:label="lab_ibp_NonCurrentLeaseAssetsAbstract" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Represents Operating and fianance lease right of use assets abstract.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_NonCurrentLeaseAssetsAbstract" xlink:href="ibp-20221231.xsd#ibp_NonCurrentLeaseAssetsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_NonCurrentLeaseAssetsAbstract" xlink:to="lab_ibp_NonCurrentLeaseAssetsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdvertisingCostsPolicyTextBlock_8a42d970-4634-465c-bd54-62e296165ee9_terseLabel_en-US" xlink:label="lab_us-gaap_AdvertisingCostsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Advertising Costs</link:label>
    <link:label id="lab_us-gaap_AdvertisingCostsPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_AdvertisingCostsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Advertising Cost [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdvertisingCostsPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdvertisingCostsPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdvertisingCostsPolicyTextBlock" xlink:to="lab_us-gaap_AdvertisingCostsPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_e7412fe7-1b46-413d-a110-2b62d24dc1d3_terseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash flows from financing activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Financing Activities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_ShowerDoorsShelvingAndMirrorsMember_cf8f1b6c-0d65-46d6-91c6-e294556be308_terseLabel_en-US" xlink:label="lab_ibp_ShowerDoorsShelvingAndMirrorsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Shower doors, shelving and mirrors</link:label>
    <link:label id="lab_ibp_ShowerDoorsShelvingAndMirrorsMember_label_en-US" xlink:label="lab_ibp_ShowerDoorsShelvingAndMirrorsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Shower Doors Shelving And Mirrors [Member]</link:label>
    <link:label id="lab_ibp_ShowerDoorsShelvingAndMirrorsMember_documentation_en-US" xlink:label="lab_ibp_ShowerDoorsShelvingAndMirrorsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Shower doors shelving and mirrors.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_ShowerDoorsShelvingAndMirrorsMember" xlink:href="ibp-20221231.xsd#ibp_ShowerDoorsShelvingAndMirrorsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_ShowerDoorsShelvingAndMirrorsMember" xlink:to="lab_ibp_ShowerDoorsShelvingAndMirrorsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount_867a5cc7-a8bc-4eb0-a7dd-6b0cb2dbeae0_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Less: Amounts representing interest</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Liability, Undiscounted Excess Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:to="lab_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromCurrentPeriodTaxPositions_85a5b777-e56d-4d96-942e-f94b1f55fea8_negatedLabel_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromCurrentPeriodTaxPositions" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Decrease as a result of tax positions taken during the period</link:label>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromCurrentPeriodTaxPositions_label_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromCurrentPeriodTaxPositions" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unrecognized Tax Benefits, Decrease Resulting from Current Period Tax Positions</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromCurrentPeriodTaxPositions" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromCurrentPeriodTaxPositions"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromCurrentPeriodTaxPositions" xlink:to="lab_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromCurrentPeriodTaxPositions" xlink:type="arc" order="1"/>
    <link:label id="lab_ibp_TwoThousandTwentyAcquisitionsMember_566144b1-128a-4065-9302-8a5241591e67_terseLabel_en-US" xlink:label="lab_ibp_TwoThousandTwentyAcquisitionsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2020 Acquisitions</link:label>
    <link:label id="lab_ibp_TwoThousandTwentyAcquisitionsMember_label_en-US" xlink:label="lab_ibp_TwoThousandTwentyAcquisitionsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">TwoThousandTwentyAcquisitions [Member]</link:label>
    <link:label id="lab_ibp_TwoThousandTwentyAcquisitionsMember_documentation_en-US" xlink:label="lab_ibp_TwoThousandTwentyAcquisitionsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">TwoThousandTwentyAcquisitions</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_TwoThousandTwentyAcquisitionsMember" xlink:href="ibp-20221231.xsd#ibp_TwoThousandTwentyAcquisitionsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ibp_TwoThousandTwentyAcquisitionsMember" xlink:to="lab_ibp_TwoThousandTwentyAcquisitionsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueLineItems_457f6ac6-8b8f-4c2e-b0f3-0c797cedc3bc_terseLabel_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disaggregation of Revenue [Line Items]</link:label>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueLineItems_label_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disaggregation of Revenue [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems" xlink:to="lab_us-gaap_DisaggregationOfRevenueLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue_2cac7a87-ac6c-44a1-aa66-990f92bd587c_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Forfeited/Cancelled (in USD per share)</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Nonvested Options Forfeited, Weighted Average Grant Date Fair Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CostOfSalesMember_9d2cef23-c1b5-4caf-92bf-dc2b69a37eed_terseLabel_en-US" xlink:label="lab_us-gaap_CostOfSalesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost of sales</link:label>
    <link:label id="lab_us-gaap_CostOfSalesMember_label_en-US" xlink:label="lab_us-gaap_CostOfSalesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost of Sales [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfSalesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfSalesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfSalesMember" xlink:to="lab_us-gaap_CostOfSalesMember" xlink:type="arc" order="1"/>
  </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>12
<FILENAME>ibp-20221231_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with Wdesk from Workiva-->
<!--Copyright 2023 Workiva-->
<!--r:a3e4206c-1cfd-4e6c-927f-ccbea40704ec,g:8e7b03d8-eedd-4de2-8abd-33b4866ed975-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/CoverPage" xlink:type="simple" xlink:href="ibp-20221231.xsd#CoverPage"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/CoverPage" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CoverAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentType_5edbaeb2-b2ac-4a19-a20d-a71298e120b8" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentType"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_DocumentType_5edbaeb2-b2ac-4a19-a20d-a71298e120b8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentAnnualReport_f7f01698-e3f2-462b-948f-6df5286c1ce2" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentAnnualReport"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_DocumentAnnualReport_f7f01698-e3f2-462b-948f-6df5286c1ce2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentPeriodEndDate_e2e5d6d9-361b-434e-866c-6756a69290fc" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentPeriodEndDate"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_DocumentPeriodEndDate_e2e5d6d9-361b-434e-866c-6756a69290fc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CurrentFiscalYearEndDate_d8179c6a-5332-4cfc-af5f-0587aea437a2" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CurrentFiscalYearEndDate"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_CurrentFiscalYearEndDate_d8179c6a-5332-4cfc-af5f-0587aea437a2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentTransitionReport_4aaf399c-44f6-467a-af41-c1eb341c6996" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentTransitionReport"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_DocumentTransitionReport_4aaf399c-44f6-467a-af41-c1eb341c6996" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFileNumber_2259f842-aa5a-41b8-8730-666242ac5426" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityFileNumber"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_EntityFileNumber_2259f842-aa5a-41b8-8730-666242ac5426" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityRegistrantName_9c658d94-0e43-4f30-8d52-f1b275101ce7" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityRegistrantName"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_EntityRegistrantName_9c658d94-0e43-4f30-8d52-f1b275101ce7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityIncorporationStateCountryCode_1ba3e0bf-c82b-4710-ab34-7e3bd6f3feee" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityIncorporationStateCountryCode"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_EntityIncorporationStateCountryCode_1ba3e0bf-c82b-4710-ab34-7e3bd6f3feee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityTaxIdentificationNumber_4ce9c63b-9ea6-4ada-8c30-a6838d9ccabf" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityTaxIdentificationNumber"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_EntityTaxIdentificationNumber_4ce9c63b-9ea6-4ada-8c30-a6838d9ccabf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressAddressLine1_8bbe6bbd-f128-4543-9a65-637f1761470c" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressAddressLine1"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_EntityAddressAddressLine1_8bbe6bbd-f128-4543-9a65-637f1761470c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressAddressLine2_5bfc2e8e-2878-4d9a-908f-dbfc710be6f8" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressAddressLine2"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_EntityAddressAddressLine2_5bfc2e8e-2878-4d9a-908f-dbfc710be6f8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressCityOrTown_2ffd7373-8dac-4a73-950a-c236076157c7" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressCityOrTown"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_EntityAddressCityOrTown_2ffd7373-8dac-4a73-950a-c236076157c7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressStateOrProvince_af611372-695d-433d-a96f-53fd1ab24117" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressStateOrProvince"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_EntityAddressStateOrProvince_af611372-695d-433d-a96f-53fd1ab24117" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressPostalZipCode_12cec0f3-1045-49bf-9dde-77557109455d" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressPostalZipCode"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_EntityAddressPostalZipCode_12cec0f3-1045-49bf-9dde-77557109455d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CityAreaCode_22509edc-1b47-485c-9ac6-7b113860a8d5" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CityAreaCode"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_CityAreaCode_22509edc-1b47-485c-9ac6-7b113860a8d5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LocalPhoneNumber_a21a98f2-cce9-443f-ae30-d35e99728f4d" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LocalPhoneNumber"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_LocalPhoneNumber_a21a98f2-cce9-443f-ae30-d35e99728f4d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_Security12bTitle_b26261c7-5cb4-4085-afb3-e5c9b79b274f" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_Security12bTitle"/>
    <link:presentationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_Security12bTitle_b26261c7-5cb4-4085-afb3-e5c9b79b274f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_TradingSymbol_ed1aa6fe-43d9-43ab-b22d-ea5663e56000" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_TradingSymbol"/>
    <link:presentationArc order="18" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_TradingSymbol_ed1aa6fe-43d9-43ab-b22d-ea5663e56000" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_SecurityExchangeName_3692f4ef-f27e-4a32-864a-629df5dac3ac" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_SecurityExchangeName"/>
    <link:presentationArc order="19" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_SecurityExchangeName_3692f4ef-f27e-4a32-864a-629df5dac3ac" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityWellKnownSeasonedIssuer_1b6359ef-b639-4a4f-8f2e-92cd2603c8f8" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityWellKnownSeasonedIssuer"/>
    <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_EntityWellKnownSeasonedIssuer_1b6359ef-b639-4a4f-8f2e-92cd2603c8f8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityVoluntaryFilers_3d70d5ab-7039-4426-981b-8d0c515a5757" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityVoluntaryFilers"/>
    <link:presentationArc order="21" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_EntityVoluntaryFilers_3d70d5ab-7039-4426-981b-8d0c515a5757" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCurrentReportingStatus_43e82cab-6643-4412-bada-2bbb83d3ac4b" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCurrentReportingStatus"/>
    <link:presentationArc order="22" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_EntityCurrentReportingStatus_43e82cab-6643-4412-bada-2bbb83d3ac4b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityInteractiveDataCurrent_ada4194e-9683-494c-87ae-6d5da5b80137" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityInteractiveDataCurrent"/>
    <link:presentationArc order="23" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_EntityInteractiveDataCurrent_ada4194e-9683-494c-87ae-6d5da5b80137" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFilerCategory_be9a776c-9acc-47f7-8bc4-b266c735d633" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityFilerCategory"/>
    <link:presentationArc order="24" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_EntityFilerCategory_be9a776c-9acc-47f7-8bc4-b266c735d633" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntitySmallBusiness_17854c93-f4c9-4493-afb0-72e1488af8f4" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntitySmallBusiness"/>
    <link:presentationArc order="25" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_EntitySmallBusiness_17854c93-f4c9-4493-afb0-72e1488af8f4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityEmergingGrowthCompany_6dc89c25-25d8-4661-8ccf-b5df98a22f71" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityEmergingGrowthCompany"/>
    <link:presentationArc order="26" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_EntityEmergingGrowthCompany_6dc89c25-25d8-4661-8ccf-b5df98a22f71" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_IcfrAuditorAttestationFlag_28ab6186-6e27-4c94-b692-28591ee1be7d" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_IcfrAuditorAttestationFlag"/>
    <link:presentationArc order="27" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_IcfrAuditorAttestationFlag_28ab6186-6e27-4c94-b692-28591ee1be7d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityShellCompany_16ca2050-5703-455e-aec8-3711bdcc75af" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityShellCompany"/>
    <link:presentationArc order="28" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_EntityShellCompany_16ca2050-5703-455e-aec8-3711bdcc75af" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityPublicFloat_e68bc43c-24a7-4f5b-9192-a7aaab9c9933" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityPublicFloat"/>
    <link:presentationArc order="29" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_EntityPublicFloat_e68bc43c-24a7-4f5b-9192-a7aaab9c9933" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCommonStockSharesOutstanding_3563de90-8b38-4e20-872b-e91f6e2fc9b4" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCommonStockSharesOutstanding"/>
    <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_EntityCommonStockSharesOutstanding_3563de90-8b38-4e20-872b-e91f6e2fc9b4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentsIncorporatedByReferenceTextBlock_56c3b50d-373f-4a75-952e-0bfa498de043" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentsIncorporatedByReferenceTextBlock"/>
    <link:presentationArc order="31" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_DocumentsIncorporatedByReferenceTextBlock_56c3b50d-373f-4a75-952e-0bfa498de043" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AmendmentFlag_39858a88-1cc9-4b0c-953c-80c3e42fc108" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AmendmentFlag"/>
    <link:presentationArc order="32" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_AmendmentFlag_39858a88-1cc9-4b0c-953c-80c3e42fc108" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalYearFocus_a47e75c6-b183-43a3-991c-6adb6f23561b" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentFiscalYearFocus"/>
    <link:presentationArc order="33" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_DocumentFiscalYearFocus_a47e75c6-b183-43a3-991c-6adb6f23561b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalPeriodFocus_8a8c8b89-77cb-468e-81bb-1e84c2f6da4c" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentFiscalPeriodFocus"/>
    <link:presentationArc order="34" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_DocumentFiscalPeriodFocus_8a8c8b89-77cb-468e-81bb-1e84c2f6da4c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCentralIndexKey_27b5960e-d3f6-491b-a91c-38b2b096a651" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCentralIndexKey"/>
    <link:presentationArc order="35" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_3b49ba68-a19f-4abe-9f67-6f9082fa7f54" xlink:to="loc_dei_EntityCentralIndexKey_27b5960e-d3f6-491b-a91c-38b2b096a651" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/AuditInformation" xlink:type="simple" xlink:href="ibp-20221231.xsd#AuditInformation"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/AuditInformation" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_ibp_AuditorInformationAbstract_859a29b0-85b1-40a2-9ab1-cc35607926f5" xlink:href="ibp-20221231.xsd#ibp_AuditorInformationAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AuditorName_525a7b42-066b-4231-8ed7-8e28a73e5794" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AuditorName"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_AuditorInformationAbstract_859a29b0-85b1-40a2-9ab1-cc35607926f5" xlink:to="loc_dei_AuditorName_525a7b42-066b-4231-8ed7-8e28a73e5794" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AuditorLocation_40b08665-1607-451a-ad76-ac8739836d10" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AuditorLocation"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_AuditorInformationAbstract_859a29b0-85b1-40a2-9ab1-cc35607926f5" xlink:to="loc_dei_AuditorLocation_40b08665-1607-451a-ad76-ac8739836d10" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AuditorFirmId_84fe80cb-a244-44f0-9332-93decc2f803d" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AuditorFirmId"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_AuditorInformationAbstract_859a29b0-85b1-40a2-9ab1-cc35607926f5" xlink:to="loc_dei_AuditorFirmId_84fe80cb-a244-44f0-9332-93decc2f803d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS" xlink:type="simple" xlink:href="ibp-20221231.xsd#CONSOLIDATEDBALANCESHEETS"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_a0f3a0ce-861c-48b3-9a4f-67261fa455f7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_a0966336-dfa2-464b-b73c-d642a1ced565" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_a0f3a0ce-861c-48b3-9a4f-67261fa455f7" xlink:to="loc_us-gaap_StatementTable_a0966336-dfa2-464b-b73c-d642a1ced565" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_c52b79f3-7f31-4cfc-b9a7-e2a769ac531f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_a0966336-dfa2-464b-b73c-d642a1ced565" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_c52b79f3-7f31-4cfc-b9a7-e2a769ac531f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4640b0de-5c22-4ef0-874a-225f9cdc0399" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_c52b79f3-7f31-4cfc-b9a7-e2a769ac531f" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4640b0de-5c22-4ef0-874a-225f9cdc0399" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerRelationshipsMember_a16de1fc-351c-4a36-a411-98395a6b4103" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerRelationshipsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4640b0de-5c22-4ef0-874a-225f9cdc0399" xlink:to="loc_us-gaap_CustomerRelationshipsMember_a16de1fc-351c-4a36-a411-98395a6b4103" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_IntangibleAssetsExcludingCustomerRelationshipsMember_8d031d05-4131-4e4c-8bd0-466cd1a57a34" xlink:href="ibp-20221231.xsd#ibp_IntangibleAssetsExcludingCustomerRelationshipsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4640b0de-5c22-4ef0-874a-225f9cdc0399" xlink:to="loc_ibp_IntangibleAssetsExcludingCustomerRelationshipsMember_8d031d05-4131-4e4c-8bd0-466cd1a57a34" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_7346cabc-5228-4c80-88e0-c29d704b9513" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_a0966336-dfa2-464b-b73c-d642a1ced565" xlink:to="loc_us-gaap_StatementLineItems_7346cabc-5228-4c80-88e0-c29d704b9513" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsAbstract_86c984e6-d9c6-484d-8f51-c48103e11f6b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_7346cabc-5228-4c80-88e0-c29d704b9513" xlink:to="loc_us-gaap_AssetsAbstract_86c984e6-d9c6-484d-8f51-c48103e11f6b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrentAbstract_a679f063-45a3-4836-a2f4-70cb01bd2cb9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrentAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_86c984e6-d9c6-484d-8f51-c48103e11f6b" xlink:to="loc_us-gaap_AssetsCurrentAbstract_a679f063-45a3-4836-a2f4-70cb01bd2cb9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_abe3478a-4a00-4be8-b17c-7eac24c058bb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_a679f063-45a3-4836-a2f4-70cb01bd2cb9" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_abe3478a-4a00-4be8-b17c-7eac24c058bb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_bdec1f46-a0df-4712-a506-44da61bb1826" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_a679f063-45a3-4836-a2f4-70cb01bd2cb9" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_bdec1f46-a0df-4712-a506-44da61bb1826" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_d092ad25-bbf2-4117-968d-e48d4991e928" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_a679f063-45a3-4836-a2f4-70cb01bd2cb9" xlink:to="loc_us-gaap_InventoryNet_d092ad25-bbf2-4117-968d-e48d4991e928" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_1b32a7a8-0733-4958-8493-549658e8f028" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_a679f063-45a3-4836-a2f4-70cb01bd2cb9" xlink:to="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_1b32a7a8-0733-4958-8493-549658e8f028" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_3b4cf0e1-a4d7-47e8-b7fd-7d9d2e7f4ac5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_a679f063-45a3-4836-a2f4-70cb01bd2cb9" xlink:to="loc_us-gaap_AssetsCurrent_3b4cf0e1-a4d7-47e8-b7fd-7d9d2e7f4ac5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_7f7a3896-e704-4f9c-b97f-fe4cf8c9db31" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_86c984e6-d9c6-484d-8f51-c48103e11f6b" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_7f7a3896-e704-4f9c-b97f-fe4cf8c9db31" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_86e68e76-460f-424d-8a16-08bacfd19de0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_86c984e6-d9c6-484d-8f51-c48103e11f6b" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_86e68e76-460f-424d-8a16-08bacfd19de0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_5c457951-b047-462b-990b-16dae48c1069" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_86c984e6-d9c6-484d-8f51-c48103e11f6b" xlink:to="loc_us-gaap_Goodwill_5c457951-b047-462b-990b-16dae48c1069" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_87a2ba8c-4856-44fa-b174-1fe5b508b9a8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_86c984e6-d9c6-484d-8f51-c48103e11f6b" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_87a2ba8c-4856-44fa-b174-1fe5b508b9a8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsNoncurrent_5a35375f-d150-4bbf-9a7f-b64c7a7c6718" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAssetsNoncurrent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_86c984e6-d9c6-484d-8f51-c48103e11f6b" xlink:to="loc_us-gaap_OtherAssetsNoncurrent_5a35375f-d150-4bbf-9a7f-b64c7a7c6718" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_1b9b3570-0dc3-4744-b68b-7660c180bd24" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Assets"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_86c984e6-d9c6-484d-8f51-c48103e11f6b" xlink:to="loc_us-gaap_Assets_1b9b3570-0dc3-4744-b68b-7660c180bd24" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_a9c651a0-7a00-41e3-8b71-8e74bc1b8b64" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_7346cabc-5228-4c80-88e0-c29d704b9513" xlink:to="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_a9c651a0-7a00-41e3-8b71-8e74bc1b8b64" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract_0a456593-4fd3-40d0-b21a-53f0a25a8348" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrentAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_a9c651a0-7a00-41e3-8b71-8e74bc1b8b64" xlink:to="loc_us-gaap_LiabilitiesCurrentAbstract_0a456593-4fd3-40d0-b21a-53f0a25a8348" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtCurrent_dcddf9b9-51c5-4916-9525-febe55c9f3c2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_0a456593-4fd3-40d0-b21a-53f0a25a8348" xlink:to="loc_us-gaap_LongTermDebtCurrent_dcddf9b9-51c5-4916-9525-febe55c9f3c2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_43182355-6199-4930-a9b2-910d80a70482" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_0a456593-4fd3-40d0-b21a-53f0a25a8348" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_43182355-6199-4930-a9b2-910d80a70482" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityCurrent_4ac28f72-1ed4-48bc-be3a-9494472fb7ae" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityCurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_0a456593-4fd3-40d0-b21a-53f0a25a8348" xlink:to="loc_us-gaap_FinanceLeaseLiabilityCurrent_4ac28f72-1ed4-48bc-be3a-9494472fb7ae" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableCurrent_d2cc44b2-a655-4f7c-b0f8-92b9fb08749a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableCurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_0a456593-4fd3-40d0-b21a-53f0a25a8348" xlink:to="loc_us-gaap_AccountsPayableCurrent_d2cc44b2-a655-4f7c-b0f8-92b9fb08749a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_0398ef74-218a-49f9-862a-3cf9375016d9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_0a456593-4fd3-40d0-b21a-53f0a25a8348" xlink:to="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_0398ef74-218a-49f9-862a-3cf9375016d9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherLiabilitiesCurrent_b72182f7-a607-4999-9b9d-944963e4f90c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherLiabilitiesCurrent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_0a456593-4fd3-40d0-b21a-53f0a25a8348" xlink:to="loc_us-gaap_OtherLiabilitiesCurrent_b72182f7-a607-4999-9b9d-944963e4f90c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_5f05fc56-ba45-4cfc-b3a8-f460b77658b0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_0a456593-4fd3-40d0-b21a-53f0a25a8348" xlink:to="loc_us-gaap_LiabilitiesCurrent_5f05fc56-ba45-4cfc-b3a8-f460b77658b0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtNoncurrent_0bd6488e-4ba7-41f0-83b9-1b3e6146959e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtNoncurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_a9c651a0-7a00-41e3-8b71-8e74bc1b8b64" xlink:to="loc_us-gaap_LongTermDebtNoncurrent_0bd6488e-4ba7-41f0-83b9-1b3e6146959e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_9b19b6ca-bb5c-447f-8c4e-27e7c44f342e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_a9c651a0-7a00-41e3-8b71-8e74bc1b8b64" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_9b19b6ca-bb5c-447f-8c4e-27e7c44f342e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityNoncurrent_67d5e627-714c-4cea-91df-9a8d73ecfa8c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityNoncurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_a9c651a0-7a00-41e3-8b71-8e74bc1b8b64" xlink:to="loc_us-gaap_FinanceLeaseLiabilityNoncurrent_67d5e627-714c-4cea-91df-9a8d73ecfa8c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_f024079a-84dc-4779-ada6-d9b2c143cec3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_a9c651a0-7a00-41e3-8b71-8e74bc1b8b64" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_f024079a-84dc-4779-ada6-d9b2c143cec3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherLiabilitiesNoncurrent_5380b391-2654-467e-a427-9bca56fa66ef" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherLiabilitiesNoncurrent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_a9c651a0-7a00-41e3-8b71-8e74bc1b8b64" xlink:to="loc_us-gaap_OtherLiabilitiesNoncurrent_5380b391-2654-467e-a427-9bca56fa66ef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Liabilities_1d2da09b-61aa-48dc-b879-b2600e702d76" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Liabilities"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_a9c651a0-7a00-41e3-8b71-8e74bc1b8b64" xlink:to="loc_us-gaap_Liabilities_1d2da09b-61aa-48dc-b879-b2600e702d76" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingencies_63f4798e-fc87-43de-a439-909ae5b21986" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingencies"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_a9c651a0-7a00-41e3-8b71-8e74bc1b8b64" xlink:to="loc_us-gaap_CommitmentsAndContingencies_63f4798e-fc87-43de-a439-909ae5b21986" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityAbstract_2b7a5bac-5fcd-4472-9cab-8b2130e519a4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquityAbstract"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_a9c651a0-7a00-41e3-8b71-8e74bc1b8b64" xlink:to="loc_us-gaap_StockholdersEquityAbstract_2b7a5bac-5fcd-4472-9cab-8b2130e519a4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockValue_91e7531a-0ac6-4bcf-9981-93cd1940f7dd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_2b7a5bac-5fcd-4472-9cab-8b2130e519a4" xlink:to="loc_us-gaap_PreferredStockValue_91e7531a-0ac6-4bcf-9981-93cd1940f7dd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockValue_60dc2369-f926-473f-9bea-557ad2d934fa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockValue"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_2b7a5bac-5fcd-4472-9cab-8b2130e519a4" xlink:to="loc_us-gaap_CommonStockValue_60dc2369-f926-473f-9bea-557ad2d934fa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock_d2c5c412-b98d-4832-a277-0756e4654211" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapitalCommonStock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_2b7a5bac-5fcd-4472-9cab-8b2130e519a4" xlink:to="loc_us-gaap_AdditionalPaidInCapitalCommonStock_d2c5c412-b98d-4832-a277-0756e4654211" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_8293f5fc-9a79-4fe2-b8cd-5c8c21f3876f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_2b7a5bac-5fcd-4472-9cab-8b2130e519a4" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_8293f5fc-9a79-4fe2-b8cd-5c8c21f3876f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockCommonValue_7a53aa78-d90c-4e17-a818-1632ff15b9cd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockCommonValue"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_2b7a5bac-5fcd-4472-9cab-8b2130e519a4" xlink:to="loc_us-gaap_TreasuryStockCommonValue_7a53aa78-d90c-4e17-a818-1632ff15b9cd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_cfc9c65a-5a31-4899-8b2e-db69dd3908ca" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_2b7a5bac-5fcd-4472-9cab-8b2130e519a4" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_cfc9c65a-5a31-4899-8b2e-db69dd3908ca" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_77fe4bce-c7ed-4dc5-bf9e-48c142feb81c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_2b7a5bac-5fcd-4472-9cab-8b2130e519a4" xlink:to="loc_us-gaap_StockholdersEquity_77fe4bce-c7ed-4dc5-bf9e-48c142feb81c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_a33172c1-1a2d-41b7-840b-f05f7ef8be36" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_a9c651a0-7a00-41e3-8b71-8e74bc1b8b64" xlink:to="loc_us-gaap_LiabilitiesAndStockholdersEquity_a33172c1-1a2d-41b7-840b-f05f7ef8be36" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETSParenthetical" xlink:type="simple" xlink:href="ibp-20221231.xsd#CONSOLIDATEDBALANCESHEETSParenthetical"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETSParenthetical" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_9eeb00df-3ca4-42a7-96b1-7b006c2f03f4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsAbstract_71e9b4a0-94c0-4a8f-8070-70b1f7a7bbaa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_9eeb00df-3ca4-42a7-96b1-7b006c2f03f4" xlink:to="loc_us-gaap_AssetsAbstract_71e9b4a0-94c0-4a8f-8070-70b1f7a7bbaa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrentAbstract_d4384c75-4303-4662-a856-16eaa87d63f4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrentAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_71e9b4a0-94c0-4a8f-8070-70b1f7a7bbaa" xlink:to="loc_us-gaap_AssetsCurrentAbstract_d4384c75-4303-4662-a856-16eaa87d63f4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_570f02c8-c255-485f-8f18-f3bf8bc05e0e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_d4384c75-4303-4662-a856-16eaa87d63f4" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_570f02c8-c255-485f-8f18-f3bf8bc05e0e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityAbstract_2612cee3-0668-458e-8dbe-28c75b1e3ab5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquityAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_9eeb00df-3ca4-42a7-96b1-7b006c2f03f4" xlink:to="loc_us-gaap_StockholdersEquityAbstract_2612cee3-0668-458e-8dbe-28c75b1e3ab5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockParOrStatedValuePerShare_413635c7-45cb-415c-8222-55f7ccef4b8b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockParOrStatedValuePerShare"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_2612cee3-0668-458e-8dbe-28c75b1e3ab5" xlink:to="loc_us-gaap_PreferredStockParOrStatedValuePerShare_413635c7-45cb-415c-8222-55f7ccef4b8b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesAuthorized_9b93702a-6dea-4830-8294-b492e471cd1a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesAuthorized"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_2612cee3-0668-458e-8dbe-28c75b1e3ab5" xlink:to="loc_us-gaap_PreferredStockSharesAuthorized_9b93702a-6dea-4830-8294-b492e471cd1a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesIssued_5a187644-9564-48ab-9f26-7ae0162a91d5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesIssued"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_2612cee3-0668-458e-8dbe-28c75b1e3ab5" xlink:to="loc_us-gaap_PreferredStockSharesIssued_5a187644-9564-48ab-9f26-7ae0162a91d5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesOutstanding_a9c12607-be90-4f88-ba54-260dbae97ed4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesOutstanding"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_2612cee3-0668-458e-8dbe-28c75b1e3ab5" xlink:to="loc_us-gaap_PreferredStockSharesOutstanding_a9c12607-be90-4f88-ba54-260dbae97ed4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare_efda1b86-eee1-4e02-999b-cd15b0a50625" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockParOrStatedValuePerShare"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_2612cee3-0668-458e-8dbe-28c75b1e3ab5" xlink:to="loc_us-gaap_CommonStockParOrStatedValuePerShare_efda1b86-eee1-4e02-999b-cd15b0a50625" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesAuthorized_8b40eedf-848f-48a9-8e1b-4d0bdd823331" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesAuthorized"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_2612cee3-0668-458e-8dbe-28c75b1e3ab5" xlink:to="loc_us-gaap_CommonStockSharesAuthorized_8b40eedf-848f-48a9-8e1b-4d0bdd823331" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesIssued_3743a999-c2e3-4273-affb-f82c059d40c8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesIssued"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_2612cee3-0668-458e-8dbe-28c75b1e3ab5" xlink:to="loc_us-gaap_CommonStockSharesIssued_3743a999-c2e3-4273-affb-f82c059d40c8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesOutstanding_c7892c22-f89b-4c82-b520-682fd5c421ff" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_2612cee3-0668-458e-8dbe-28c75b1e3ab5" xlink:to="loc_us-gaap_CommonStockSharesOutstanding_c7892c22-f89b-4c82-b520-682fd5c421ff" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockCommonShares_14427d02-681b-42a3-9497-4d7b47f8e5b4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockCommonShares"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_2612cee3-0668-458e-8dbe-28c75b1e3ab5" xlink:to="loc_us-gaap_TreasuryStockCommonShares_14427d02-681b-42a3-9497-4d7b47f8e5b4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME" xlink:type="simple" xlink:href="ibp-20221231.xsd#CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementAbstract_6ffec993-f3af-4e5d-ad68-fd9422798c75" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_9ce610e2-0736-4d4a-afb3-35c4ca0410dc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_6ffec993-f3af-4e5d-ad68-fd9422798c75" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_9ce610e2-0736-4d4a-afb3-35c4ca0410dc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_2373a779-4bf7-4595-a12d-1849809aa9b0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_6ffec993-f3af-4e5d-ad68-fd9422798c75" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_2373a779-4bf7-4595-a12d-1849809aa9b0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_3ea06c56-d218-4b13-ae51-c1023b8ad0a4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GrossProfit"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_6ffec993-f3af-4e5d-ad68-fd9422798c75" xlink:to="loc_us-gaap_GrossProfit_3ea06c56-d218-4b13-ae51-c1023b8ad0a4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingExpensesAbstract_3cdff97d-0511-4d37-ba19-539405b7511e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingExpensesAbstract"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_6ffec993-f3af-4e5d-ad68-fd9422798c75" xlink:to="loc_us-gaap_OperatingExpensesAbstract_3cdff97d-0511-4d37-ba19-539405b7511e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingExpense_ad6b1eba-bd6c-412a-af2f-b9a419c2350a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingExpense"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingExpensesAbstract_3cdff97d-0511-4d37-ba19-539405b7511e" xlink:to="loc_us-gaap_SellingExpense_ad6b1eba-bd6c-412a-af2f-b9a419c2350a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpense_714c1338-0864-4553-ad2d-92ee95113102" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GeneralAndAdministrativeExpense"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingExpensesAbstract_3cdff97d-0511-4d37-ba19-539405b7511e" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpense_714c1338-0864-4553-ad2d-92ee95113102" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_224ac9ad-15c3-42dd-820f-0a823852bbe3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingExpensesAbstract_3cdff97d-0511-4d37-ba19-539405b7511e" xlink:to="loc_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_224ac9ad-15c3-42dd-820f-0a823852bbe3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets_b4a203be-825a-4f0f-a754-8aab0e2fb186" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfIntangibleAssets"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingExpensesAbstract_3cdff97d-0511-4d37-ba19-539405b7511e" xlink:to="loc_us-gaap_AmortizationOfIntangibleAssets_b4a203be-825a-4f0f-a754-8aab0e2fb186" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_2cef8012-7c0a-4932-8478-e02dcfada5f2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingExpensesAbstract_3cdff97d-0511-4d37-ba19-539405b7511e" xlink:to="loc_us-gaap_OperatingIncomeLoss_2cef8012-7c0a-4932-8478-e02dcfada5f2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpenseAbstract_73ebca6b-fe17-4e01-909f-8c55f14873e5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNonoperatingIncomeExpenseAbstract"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_6ffec993-f3af-4e5d-ad68-fd9422798c75" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpenseAbstract_73ebca6b-fe17-4e01-909f-8c55f14873e5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestExpense_81c6bd39-69f0-4d56-ad1b-50908005e501" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestExpense"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherNonoperatingIncomeExpenseAbstract_73ebca6b-fe17-4e01-909f-8c55f14873e5" xlink:to="loc_us-gaap_InterestExpense_81c6bd39-69f0-4d56-ad1b-50908005e501" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_86e289f6-0a2e-4b5f-babe-3830d2aaea27" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNonoperatingIncomeExpense"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherNonoperatingIncomeExpenseAbstract_73ebca6b-fe17-4e01-909f-8c55f14873e5" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpense_86e289f6-0a2e-4b5f-babe-3830d2aaea27" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_f153d971-1f24-4069-a1e6-852fb662c71a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_6ffec993-f3af-4e5d-ad68-fd9422798c75" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_f153d971-1f24-4069-a1e6-852fb662c71a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_c101c4be-d9ac-49e1-adb3-21aa61388f35" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_6ffec993-f3af-4e5d-ad68-fd9422798c75" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_c101c4be-d9ac-49e1-adb3-21aa61388f35" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_8a707033-37c8-4d4f-a9c2-4c5db4355d7d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_6ffec993-f3af-4e5d-ad68-fd9422798c75" xlink:to="loc_us-gaap_NetIncomeLoss_8a707033-37c8-4d4f-a9c2-4c5db4355d7d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTaxAbstract_0786e6ae-02d3-4ed8-b64e-5715a6780139" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ComprehensiveIncomeNetOfTaxAbstract"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_6ffec993-f3af-4e5d-ad68-fd9422798c75" xlink:to="loc_us-gaap_ComprehensiveIncomeNetOfTaxAbstract_0786e6ae-02d3-4ed8-b64e-5715a6780139" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax_2f18f942-cd06-4ae0-922b-4468b33e995d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTaxAbstract_0786e6ae-02d3-4ed8-b64e-5715a6780139" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax_2f18f942-cd06-4ae0-922b-4468b33e995d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax_5d0f8572-654e-4368-8d4f-379693c97326" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_6ffec993-f3af-4e5d-ad68-fd9422798c75" xlink:to="loc_us-gaap_ComprehensiveIncomeNetOfTax_5d0f8572-654e-4368-8d4f-379693c97326" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_1712844d-1739-477f-bfaf-7b1e71a327ac" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_6ffec993-f3af-4e5d-ad68-fd9422798c75" xlink:to="loc_us-gaap_EarningsPerShareAbstract_1712844d-1739-477f-bfaf-7b1e71a327ac" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasic_052e3e14-8717-47ac-98c2-0a55ed7bc31d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareBasic"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_1712844d-1739-477f-bfaf-7b1e71a327ac" xlink:to="loc_us-gaap_EarningsPerShareBasic_052e3e14-8717-47ac-98c2-0a55ed7bc31d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDiluted_5e81a91e-dc04-4a1f-b61e-a66d5103b40a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareDiluted"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_1712844d-1739-477f-bfaf-7b1e71a327ac" xlink:to="loc_us-gaap_EarningsPerShareDiluted_5e81a91e-dc04-4a1f-b61e-a66d5103b40a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_e30e1d40-a11a-4a7e-89e4-b01bbb5f85e3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_6ffec993-f3af-4e5d-ad68-fd9422798c75" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_e30e1d40-a11a-4a7e-89e4-b01bbb5f85e3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_dc08534a-cc85-4a0c-ae58-4a8878c2be47" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_e30e1d40-a11a-4a7e-89e4-b01bbb5f85e3" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_dc08534a-cc85-4a0c-ae58-4a8878c2be47" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_4664d585-4a6a-42c6-ad10-3029dfa7ae1d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_e30e1d40-a11a-4a7e-89e4-b01bbb5f85e3" xlink:to="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_4664d585-4a6a-42c6-ad10-3029dfa7ae1d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockDividendsPerShareDeclared_2b212b5f-e180-48d2-b6d6-8b8df02033e0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockDividendsPerShareDeclared"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_6ffec993-f3af-4e5d-ad68-fd9422798c75" xlink:to="loc_us-gaap_CommonStockDividendsPerShareDeclared_2b212b5f-e180-48d2-b6d6-8b8df02033e0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEParenthetical" xlink:type="simple" xlink:href="ibp-20221231.xsd#CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEParenthetical"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEParenthetical" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementAbstract_cec60388-2fb9-4c5b-ad26-c65939079374" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax_9acb51c6-4074-42f7-99ec-a3f364ba0569" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_cec60388-2fb9-4c5b-ad26-c65939079374" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax_9acb51c6-4074-42f7-99ec-a3f364ba0569" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY" xlink:type="simple" xlink:href="ibp-20221231.xsd#CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract_a000753d-927b-4ce9-afd3-5d1d35c70349" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfStockholdersEquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_403d0e58-e03c-4ce1-a877-22121e1ac89c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract_a000753d-927b-4ce9-afd3-5d1d35c70349" xlink:to="loc_us-gaap_StatementTable_403d0e58-e03c-4ce1-a877-22121e1ac89c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_724d9f1f-1f47-4376-a116-f7569f80d6b4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_403d0e58-e03c-4ce1-a877-22121e1ac89c" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_724d9f1f-1f47-4376-a116-f7569f80d6b4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_1a09240e-9ab7-4d4e-b15e-2496b9010c3b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_724d9f1f-1f47-4376-a116-f7569f80d6b4" xlink:to="loc_us-gaap_EquityComponentDomain_1a09240e-9ab7-4d4e-b15e-2496b9010c3b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_b9f4ec3c-18cb-4f77-a6d3-d69ee80694b1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_1a09240e-9ab7-4d4e-b15e-2496b9010c3b" xlink:to="loc_us-gaap_CommonStockMember_b9f4ec3c-18cb-4f77-a6d3-d69ee80694b1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_1c624755-2e2f-495f-bdf5-a67fd8aed700" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapitalMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_1a09240e-9ab7-4d4e-b15e-2496b9010c3b" xlink:to="loc_us-gaap_AdditionalPaidInCapitalMember_1c624755-2e2f-495f-bdf5-a67fd8aed700" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember_ad23fbac-3022-4048-b0a8-0f8a7c9202b0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_1a09240e-9ab7-4d4e-b15e-2496b9010c3b" xlink:to="loc_us-gaap_RetainedEarningsMember_ad23fbac-3022-4048-b0a8-0f8a7c9202b0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockMember_491998b4-2e63-422a-a166-4be1291fcb99" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_1a09240e-9ab7-4d4e-b15e-2496b9010c3b" xlink:to="loc_us-gaap_TreasuryStockMember_491998b4-2e63-422a-a166-4be1291fcb99" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_0b6c86e2-a659-4917-97b2-85d9f4922e52" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_1a09240e-9ab7-4d4e-b15e-2496b9010c3b" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_0b6c86e2-a659-4917-97b2-85d9f4922e52" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_dd2f7be8-f013-434b-b12b-88498cecb8fd" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_403d0e58-e03c-4ce1-a877-22121e1ac89c" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_dd2f7be8-f013-434b-b12b-88498cecb8fd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_93b62727-3346-4241-baea-2e0545256e32" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_dd2f7be8-f013-434b-b12b-88498cecb8fd" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_93b62727-3346-4241-baea-2e0545256e32" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_360800a2-58db-4cd3-a631-2b3d5a21a3f8" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_93b62727-3346-4241-baea-2e0545256e32" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_360800a2-58db-4cd3-a631-2b3d5a21a3f8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_403d0e58-e03c-4ce1-a877-22121e1ac89c" xlink:to="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesIssued_1ae15edc-2b30-4707-86f3-3329b3d40427" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesIssued"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_CommonStockSharesIssued_1ae15edc-2b30-4707-86f3-3329b3d40427" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_a37914e8-ce15-4760-8d92-ebff0dffc178" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_StockholdersEquity_a37914e8-ce15-4760-8d92-ebff0dffc178" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockCommonShares_50e24fcc-7d16-446c-bc28-f58af74e788a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockCommonShares"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_TreasuryStockCommonShares_50e24fcc-7d16-446c-bc28-f58af74e788a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedPeriodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockCommonValue_f87d11bb-43a2-4f47-94dc-61b301b3fdcd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockCommonValue"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_TreasuryStockCommonValue_f87d11bb-43a2-4f47-94dc-61b301b3fdcd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedPeriodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_06ebb7ef-7b38-4fe1-899f-154f21a7622f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_NetIncomeLoss_06ebb7ef-7b38-4fe1-899f-154f21a7622f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross_4dac5f18-ecb2-46dd-a871-fbf459a2528b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross_4dac5f18-ecb2-46dd-a871-fbf459a2528b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross_641671a0-9dc7-4233-a8dd-49d6e095d65e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross_641671a0-9dc7-4233-a8dd-49d6e095d65e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationForfeited_75421615-a722-4260-b0b1-6ca120d90ce6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationForfeited"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationForfeited_75421615-a722-4260-b0b1-6ca120d90ce6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationForfeited_29b5fd26-f797-49f7-98d9-0433f62c7853" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationForfeited"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationForfeited_29b5fd26-f797-49f7-98d9-0433f62c7853" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_61afcb94-2338-47be-af19-e4bd228c7790" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_61afcb94-2338-47be-af19-e4bd228c7790" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_59c14253-325e-4d14-ae10-1df76cab7ad7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_59c14253-325e-4d14-ae10-1df76cab7ad7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_062b023e-7f30-4923-9f37-76668f4751da" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_062b023e-7f30-4923-9f37-76668f4751da" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures_35128703-2f5d-4c58-953a-e9c305320e8d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures_35128703-2f5d-4c58-953a-e9c305320e8d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures_713c513d-f9b9-4ec1-9e0f-18b2a7bfcfff" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures_713c513d-f9b9-4ec1-9e0f-18b2a7bfcfff" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsCommonStockCash_57d412f6-8b17-4a80-b002-88a809e9803b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DividendsCommonStockCash"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_DividendsCommonStockCash_57d412f6-8b17-4a80-b002-88a809e9803b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockSharesAcquired_d53b632b-4e70-4bc0-839a-f7d17534dd39" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockSharesAcquired"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_TreasuryStockSharesAcquired_d53b632b-4e70-4bc0-839a-f7d17534dd39" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_b256ee26-7669-48a4-872a-2ef4a2c70cba" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod"/>
    <link:presentationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_b256ee26-7669-48a4-872a-2ef4a2c70cba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax_ba2d9495-de2b-4373-934d-1acea286e00a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax"/>
    <link:presentationArc order="18" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax_ba2d9495-de2b-4373-934d-1acea286e00a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_a00bb4d0-a8ce-42f9-af70-ae1914717051" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="19" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_StockholdersEquity_a00bb4d0-a8ce-42f9-af70-ae1914717051" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesIssued_4aca4fc0-b900-4285-877d-0a31d128da22" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesIssued"/>
    <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_CommonStockSharesIssued_4aca4fc0-b900-4285-877d-0a31d128da22" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockCommonShares_2ac86cce-3396-4e90-bfb0-e73086def6d8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockCommonShares"/>
    <link:presentationArc order="21" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_TreasuryStockCommonShares_2ac86cce-3396-4e90-bfb0-e73086def6d8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedPeriodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockCommonValue_955f3c59-f2f1-4efd-bc76-8853ec90a545" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockCommonValue"/>
    <link:presentationArc order="22" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_84ab15a7-289c-4a7e-970f-2749268b3c39" xlink:to="loc_us-gaap_TreasuryStockCommonValue_955f3c59-f2f1-4efd-bc76-8853ec90a545" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedPeriodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYParenthetical" xlink:type="simple" xlink:href="ibp-20221231.xsd#CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYParenthetical"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYParenthetical" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract_c3d981b3-5765-46ec-ab9d-331a2d4e20d3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfStockholdersEquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockDividendsPerShareDeclared_82df9661-7082-4f09-a7d5-d468bb104572" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockDividendsPerShareDeclared"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract_c3d981b3-5765-46ec-ab9d-331a2d4e20d3" xlink:to="loc_us-gaap_CommonStockDividendsPerShareDeclared_82df9661-7082-4f09-a7d5-d468bb104572" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_72908b1d-f77e-48d2-b0f5-e5fef2683623" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract_c3d981b3-5765-46ec-ab9d-331a2d4e20d3" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_72908b1d-f77e-48d2-b0f5-e5fef2683623" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_b4b5b426-f363-4551-a514-998c66dd4a13" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract_c3d981b3-5765-46ec-ab9d-331a2d4e20d3" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_b4b5b426-f363-4551-a514-998c66dd4a13" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" xlink:type="simple" xlink:href="ibp-20221231.xsd#CONSOLIDATEDSTATEMENTSOFCASHFLOWS"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfCashFlowsAbstract_ec56ae4a-c835-4892-a28d-409f4e8bfdf1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfCashFlowsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_c20b8b97-acd2-4bc3-85d4-45ddd3574498" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_ec56ae4a-c835-4892-a28d-409f4e8bfdf1" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_c20b8b97-acd2-4bc3-85d4-45ddd3574498" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProfitLoss_d06f2442-a21f-456a-bfd6-0f3a37bf2bf7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProfitLoss"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_c20b8b97-acd2-4bc3-85d4-45ddd3574498" xlink:to="loc_us-gaap_ProfitLoss_d06f2442-a21f-456a-bfd6-0f3a37bf2bf7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_7ae505c3-0575-42a5-b106-dfc910fc8b4d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_c20b8b97-acd2-4bc3-85d4-45ddd3574498" xlink:to="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_7ae505c3-0575-42a5-b106-dfc910fc8b4d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationAndAmortization_faf2381b-5dd7-4b4b-bb7d-f9cadc9f8508" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DepreciationAndAmortization"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_7ae505c3-0575-42a5-b106-dfc910fc8b4d" xlink:to="loc_us-gaap_DepreciationAndAmortization_faf2381b-5dd7-4b4b-bb7d-f9cadc9f8508" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense_b25b050c-61e6-4908-ae9b-28479020515b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_7ae505c3-0575-42a5-b106-dfc910fc8b4d" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense_b25b050c-61e6-4908-ae9b-28479020515b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets_5620bed3-3584-4a84-a987-018ea6241cca" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfIntangibleAssets"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_7ae505c3-0575-42a5-b106-dfc910fc8b4d" xlink:to="loc_us-gaap_AmortizationOfIntangibleAssets_5620bed3-3584-4a84-a987-018ea6241cca" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfFinancingCostsAndDiscounts_843517ea-7c78-4a1f-a432-e3964157537f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfFinancingCostsAndDiscounts"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_7ae505c3-0575-42a5-b106-dfc910fc8b4d" xlink:to="loc_us-gaap_AmortizationOfFinancingCostsAndDiscounts_843517ea-7c78-4a1f-a432-e3964157537f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts_bb39cdb1-909a-4b4e-9694-ca66ea1dbae7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProvisionForDoubtfulAccounts"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_7ae505c3-0575-42a5-b106-dfc910fc8b4d" xlink:to="loc_us-gaap_ProvisionForDoubtfulAccounts_bb39cdb1-909a-4b4e-9694-ca66ea1dbae7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WriteOffOfDeferredDebtIssuanceCost_d249a2f6-9d94-4596-9a7b-559686099fe5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WriteOffOfDeferredDebtIssuanceCost"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_7ae505c3-0575-42a5-b106-dfc910fc8b4d" xlink:to="loc_us-gaap_WriteOffOfDeferredDebtIssuanceCost_d249a2f6-9d94-4596-9a7b-559686099fe5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnDispositionOfAssets_b11d7dba-11b8-416d-ae78-13b9144b5fc7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnDispositionOfAssets"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_7ae505c3-0575-42a5-b106-dfc910fc8b4d" xlink:to="loc_us-gaap_GainLossOnDispositionOfAssets_b11d7dba-11b8-416d-ae78-13b9144b5fc7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensation_7e17fab4-d8c5-49be-ace7-f2d2438e78c4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensation"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_7ae505c3-0575-42a5-b106-dfc910fc8b4d" xlink:to="loc_us-gaap_ShareBasedCompensation_7e17fab4-d8c5-49be-ace7-f2d2438e78c4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_7abdfa9f-99b9-4b8d-9c9b-efbb25d2d4f7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_7ae505c3-0575-42a5-b106-dfc910fc8b4d" xlink:to="loc_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_7abdfa9f-99b9-4b8d-9c9b-efbb25d2d4f7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxesAndTaxCredits_6ff32edc-aca5-45e3-82a0-cd8ecbc58428" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxesAndTaxCredits"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_7ae505c3-0575-42a5-b106-dfc910fc8b4d" xlink:to="loc_us-gaap_DeferredIncomeTaxesAndTaxCredits_6ff32edc-aca5-45e3-82a0-cd8ecbc58428" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNoncashIncomeExpense_8f379131-16e8-4a10-a116-0dd2aa841ef1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNoncashIncomeExpense"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_7ae505c3-0575-42a5-b106-dfc910fc8b4d" xlink:to="loc_us-gaap_OtherNoncashIncomeExpense_8f379131-16e8-4a10-a116-0dd2aa841ef1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_7a42ccb9-014d-4f6e-91aa-cf59940cfc51" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_c20b8b97-acd2-4bc3-85d4-45ddd3574498" xlink:to="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_7a42ccb9-014d-4f6e-91aa-cf59940cfc51" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_5f03b9a7-b4f0-4015-a9fb-bea7ebdf6635" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_7a42ccb9-014d-4f6e-91aa-cf59940cfc51" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_5f03b9a7-b4f0-4015-a9fb-bea7ebdf6635" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories_9cc412de-4360-4bae-ba19-e88fe24c5b34" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInInventories"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_7a42ccb9-014d-4f6e-91aa-cf59940cfc51" xlink:to="loc_us-gaap_IncreaseDecreaseInInventories_9cc412de-4360-4bae-ba19-e88fe24c5b34" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_ProceedsFromTerminationOfDerivativeInstruments_99cfd193-b6e5-4548-bec1-6f4f8dba16c2" xlink:href="ibp-20221231.xsd#ibp_ProceedsFromTerminationOfDerivativeInstruments"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_7a42ccb9-014d-4f6e-91aa-cf59940cfc51" xlink:to="loc_ibp_ProceedsFromTerminationOfDerivativeInstruments_99cfd193-b6e5-4548-bec1-6f4f8dba16c2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets_6edb9cbc-e05c-44c4-a0da-f82054bcc003" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_7a42ccb9-014d-4f6e-91aa-cf59940cfc51" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets_6edb9cbc-e05c-44c4-a0da-f82054bcc003" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable_bc23363a-bf8e-4377-870f-f521a5625600" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsPayable"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_7a42ccb9-014d-4f6e-91aa-cf59940cfc51" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayable_bc23363a-bf8e-4377-870f-f521a5625600" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInIncomeTaxes_47083289-e22e-43a6-9a18-044161414cc0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInIncomeTaxes"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_7a42ccb9-014d-4f6e-91aa-cf59940cfc51" xlink:to="loc_us-gaap_IncreaseDecreaseInIncomeTaxes_47083289-e22e-43a6-9a18-044161414cc0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingLiabilities_b15dd95e-5115-4800-92ef-361a4bc6aa5c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOtherOperatingLiabilities"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_7a42ccb9-014d-4f6e-91aa-cf59940cfc51" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherOperatingLiabilities_b15dd95e-5115-4800-92ef-361a4bc6aa5c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_a6a7c343-2eca-4550-b099-5fb1ec505030" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_c20b8b97-acd2-4bc3-85d4-45ddd3574498" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_a6a7c343-2eca-4550-b099-5fb1ec505030" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_12a4257f-d6d5-4f8a-a431-5d1b9bfd57c4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_ec56ae4a-c835-4892-a28d-409f4e8bfdf1" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_12a4257f-d6d5-4f8a-a431-5d1b9bfd57c4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireInvestments_29187532-beac-440b-9cc8-54a2f9dd0203" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireInvestments"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_12a4257f-d6d5-4f8a-a431-5d1b9bfd57c4" xlink:to="loc_us-gaap_PaymentsToAcquireInvestments_29187532-beac-440b-9cc8-54a2f9dd0203" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromSaleOfShortTermInvestments_f60ec7f1-fb11-49b1-91c4-8678c40bae14" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromSaleOfShortTermInvestments"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_12a4257f-d6d5-4f8a-a431-5d1b9bfd57c4" xlink:to="loc_us-gaap_ProceedsFromSaleOfShortTermInvestments_f60ec7f1-fb11-49b1-91c4-8678c40bae14" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_326ec3ba-469a-41c7-a0ac-16b8ac5df0eb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_12a4257f-d6d5-4f8a-a431-5d1b9bfd57c4" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_326ec3ba-469a-41c7-a0ac-16b8ac5df0eb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_b6e25e4d-856c-4125-bbdc-6c843112db32" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_12a4257f-d6d5-4f8a-a431-5d1b9bfd57c4" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_b6e25e4d-856c-4125-bbdc-6c843112db32" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_79e85078-6b0a-41b5-ad5f-6c31c3ea1e15" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_12a4257f-d6d5-4f8a-a431-5d1b9bfd57c4" xlink:to="loc_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_79e85078-6b0a-41b5-ad5f-6c31c3ea1e15" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_921b9db9-18e1-42e6-be3c-0ecfa38c2f65" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsForProceedsFromOtherInvestingActivities"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_12a4257f-d6d5-4f8a-a431-5d1b9bfd57c4" xlink:to="loc_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_921b9db9-18e1-42e6-be3c-0ecfa38c2f65" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_4da549c2-4979-4c41-abe9-96de9dc8d590" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_12a4257f-d6d5-4f8a-a431-5d1b9bfd57c4" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_4da549c2-4979-4c41-abe9-96de9dc8d590" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_bf132bee-f11a-44f5-80e9-36f4d16a888b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_ec56ae4a-c835-4892-a28d-409f4e8bfdf1" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_bf132bee-f11a-44f5-80e9-36f4d16a888b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfMediumTermNotes_ea7ae28c-98a0-42d0-a756-7fb606287d00" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfMediumTermNotes"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_bf132bee-f11a-44f5-80e9-36f4d16a888b" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfMediumTermNotes_ea7ae28c-98a0-42d0-a756-7fb606287d00" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfMediumTermNotes_a218f892-04cb-452e-bcee-9cb6e2d22687" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RepaymentsOfMediumTermNotes"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_bf132bee-f11a-44f5-80e9-36f4d16a888b" xlink:to="loc_us-gaap_RepaymentsOfMediumTermNotes_a218f892-04cb-452e-bcee-9cb6e2d22687" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromNotesPayable_f3798606-85a4-44d9-b4ca-620ff3feaad2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromNotesPayable"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_bf132bee-f11a-44f5-80e9-36f4d16a888b" xlink:to="loc_us-gaap_ProceedsFromNotesPayable_f3798606-85a4-44d9-b4ca-620ff3feaad2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfDebtIssuanceCosts_bc4b2781-b228-41cd-a663-330f0a4e676d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfDebtIssuanceCosts"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_bf132bee-f11a-44f5-80e9-36f4d16a888b" xlink:to="loc_us-gaap_PaymentsOfDebtIssuanceCosts_bc4b2781-b228-41cd-a663-330f0a4e676d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfOtherLongTermDebt_d472c5e9-e950-4430-8d06-86cb575bbf69" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RepaymentsOfOtherLongTermDebt"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_bf132bee-f11a-44f5-80e9-36f4d16a888b" xlink:to="loc_us-gaap_RepaymentsOfOtherLongTermDebt_d472c5e9-e950-4430-8d06-86cb575bbf69" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeasePrincipalPayments_48663f5a-65d9-48f4-b75c-5d3a069a19de" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeasePrincipalPayments"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_bf132bee-f11a-44f5-80e9-36f4d16a888b" xlink:to="loc_us-gaap_FinanceLeasePrincipalPayments_48663f5a-65d9-48f4-b75c-5d3a069a19de" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfMergerRelatedCostsFinancingActivities_e684012a-17ef-4dc9-bbc6-bdb9db195760" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfMergerRelatedCostsFinancingActivities"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_bf132bee-f11a-44f5-80e9-36f4d16a888b" xlink:to="loc_us-gaap_PaymentsOfMergerRelatedCostsFinancingActivities_e684012a-17ef-4dc9-bbc6-bdb9db195760" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfDividends_b498aa0e-ea70-40eb-b3a9-4a5458baa92d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfDividends"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_bf132bee-f11a-44f5-80e9-36f4d16a888b" xlink:to="loc_us-gaap_PaymentsOfDividends_b498aa0e-ea70-40eb-b3a9-4a5458baa92d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_7035bfba-d2f9-43b2-bfb2-04a2077d3ec6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_bf132bee-f11a-44f5-80e9-36f4d16a888b" xlink:to="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_7035bfba-d2f9-43b2-bfb2-04a2077d3ec6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_SurrenderOfCommonStockAwardsByEmployees_d566002c-6a98-4f99-bdc8-97c92cc4ef3f" xlink:href="ibp-20221231.xsd#ibp_SurrenderOfCommonStockAwardsByEmployees"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_bf132bee-f11a-44f5-80e9-36f4d16a888b" xlink:to="loc_ibp_SurrenderOfCommonStockAwardsByEmployees_d566002c-6a98-4f99-bdc8-97c92cc4ef3f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_34b33d3b-7e2f-4b82-81cf-bbd5b37c91c1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_bf132bee-f11a-44f5-80e9-36f4d16a888b" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_34b33d3b-7e2f-4b82-81cf-bbd5b37c91c1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_83bd8a00-fbaf-4655-ba31-ad9e89727acb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_ec56ae4a-c835-4892-a28d-409f4e8bfdf1" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_83bd8a00-fbaf-4655-ba31-ad9e89727acb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_22c2f0b6-1128-43f9-8cc3-63487673c284" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_ec56ae4a-c835-4892-a28d-409f4e8bfdf1" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_22c2f0b6-1128-43f9-8cc3-63487673c284" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_4a15644a-9ca3-4541-9913-744744bf3421" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_ec56ae4a-c835-4892-a28d-409f4e8bfdf1" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_4a15644a-9ca3-4541-9913-744744bf3421" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SupplementalCashFlowInformationAbstract_72029c6c-3501-46da-9dea-415ddfc47ccb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SupplementalCashFlowInformationAbstract"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_ec56ae4a-c835-4892-a28d-409f4e8bfdf1" xlink:to="loc_us-gaap_SupplementalCashFlowInformationAbstract_72029c6c-3501-46da-9dea-415ddfc47ccb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestPaidNet_80dab948-4e8c-4e8d-be53-da181d96a7dd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestPaidNet"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SupplementalCashFlowInformationAbstract_72029c6c-3501-46da-9dea-415ddfc47ccb" xlink:to="loc_us-gaap_InterestPaidNet_80dab948-4e8c-4e8d-be53-da181d96a7dd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxesPaidNet_c9084f7b-7010-4e62-95a6-2c8cc30ca031" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxesPaidNet"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SupplementalCashFlowInformationAbstract_72029c6c-3501-46da-9dea-415ddfc47ccb" xlink:to="loc_us-gaap_IncomeTaxesPaidNet_c9084f7b-7010-4e62-95a6-2c8cc30ca031" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NoncashInvestingAndFinancingItemsAbstract_72777e1e-0c09-480f-89b7-7bf3958e7b12" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncashInvestingAndFinancingItemsAbstract"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_ec56ae4a-c835-4892-a28d-409f4e8bfdf1" xlink:to="loc_us-gaap_NoncashInvestingAndFinancingItemsAbstract_72777e1e-0c09-480f-89b7-7bf3958e7b12" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_b169d801-d29f-4026-aa86-5f31297d5857" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NoncashInvestingAndFinancingItemsAbstract_72777e1e-0c09-480f-89b7-7bf3958e7b12" xlink:to="loc_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_b169d801-d29f-4026-aa86-5f31297d5857" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_NoncashActivitiesReleaseOfIndemnificationOfAcquisitionRelatedDebt_9f64830c-4f89-45fa-a4df-7cffbce7edb3" xlink:href="ibp-20221231.xsd#ibp_NoncashActivitiesReleaseOfIndemnificationOfAcquisitionRelatedDebt"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NoncashInvestingAndFinancingItemsAbstract_72777e1e-0c09-480f-89b7-7bf3958e7b12" xlink:to="loc_ibp_NoncashActivitiesReleaseOfIndemnificationOfAcquisitionRelatedDebt_9f64830c-4f89-45fa-a4df-7cffbce7edb3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FinanceLeaseObligationsIncurred_eeea4157-5442-47ad-8e45-0da49031476a" xlink:href="ibp-20221231.xsd#ibp_FinanceLeaseObligationsIncurred"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NoncashInvestingAndFinancingItemsAbstract_72777e1e-0c09-480f-89b7-7bf3958e7b12" xlink:to="loc_ibp_FinanceLeaseObligationsIncurred_eeea4157-5442-47ad-8e45-0da49031476a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred_9a575677-1563-4e7b-a00f-68840f9455d1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NoncashInvestingAndFinancingItemsAbstract_72777e1e-0c09-480f-89b7-7bf3958e7b12" xlink:to="loc_us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred_9a575677-1563-4e7b-a00f-68840f9455d1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalExpendituresIncurredButNotYetPaid_6c26ce84-b96b-4217-aae0-bfe0d7cf04c7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CapitalExpendituresIncurredButNotYetPaid"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NoncashInvestingAndFinancingItemsAbstract_72777e1e-0c09-480f-89b7-7bf3958e7b12" xlink:to="loc_us-gaap_CapitalExpendituresIncurredButNotYetPaid_6c26ce84-b96b-4217-aae0-bfe0d7cf04c7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSParenthetical" xlink:type="simple" xlink:href="ibp-20221231.xsd#CONSOLIDATEDSTATEMENTSOFCASHFLOWSParenthetical"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSParenthetical" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfCashFlowsAbstract_6b76a094-773c-43dc-834b-4ea09afcd468" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfCashFlowsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_206aa045-0c60-475e-b87f-ee5fc7875959" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_6b76a094-773c-43dc-834b-4ea09afcd468" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_206aa045-0c60-475e-b87f-ee5fc7875959" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAcquiredFromAcquisition_3a801fe1-128f-4d3a-8dc2-e92c0f3b0494" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAcquiredFromAcquisition"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_206aa045-0c60-475e-b87f-ee5fc7875959" xlink:to="loc_us-gaap_CashAcquiredFromAcquisition_3a801fe1-128f-4d3a-8dc2-e92c0f3b0494" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/Organization" xlink:type="simple" xlink:href="ibp-20221231.xsd#Organization"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/Organization" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_c10c10f7-57ba-41f9-9a70-ed7ea39911bb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock_10a23136-273f-4423-a861-8217690d4829" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_c10c10f7-57ba-41f9-9a70-ed7ea39911bb" xlink:to="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock_10a23136-273f-4423-a861-8217690d4829" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/SignificantAccountingPolicies" xlink:type="simple" xlink:href="ibp-20221231.xsd#SignificantAccountingPolicies"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/SignificantAccountingPolicies" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_c3ee701e-9159-46d5-961f-8ee98fabbc86" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SignificantAccountingPoliciesTextBlock_9ada6812-a17c-4142-a2a0-48530d3299af" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SignificantAccountingPoliciesTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_c3ee701e-9159-46d5-961f-8ee98fabbc86" xlink:to="loc_us-gaap_SignificantAccountingPoliciesTextBlock_9ada6812-a17c-4142-a2a0-48530d3299af" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/RevenueRecognition" xlink:type="simple" xlink:href="ibp-20221231.xsd#RevenueRecognition"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/RevenueRecognition" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_92ea818b-2ee4-4609-b904-c8fad2a2fe4c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_85674e62-533e-4851-baa7-7d7a87854ea6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_92ea818b-2ee4-4609-b904-c8fad2a2fe4c" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_85674e62-533e-4851-baa7-7d7a87854ea6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/CreditLosses" xlink:type="simple" xlink:href="ibp-20221231.xsd#CreditLosses"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/CreditLosses" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditLossAbstract_6a039512-a052-48d7-85c5-e9ccaf86d92f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditLossAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForCreditLossesTextBlock_d89b6d1c-2086-4ec2-bdc2-d7735f4bdf80" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForCreditLossesTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditLossAbstract_6a039512-a052-48d7-85c5-e9ccaf86d92f" xlink:to="loc_us-gaap_AllowanceForCreditLossesTextBlock_d89b6d1c-2086-4ec2-bdc2-d7735f4bdf80" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/CashandCashEquivalents" xlink:type="simple" xlink:href="ibp-20221231.xsd#CashandCashEquivalents"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/CashandCashEquivalents" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract_b56b065f-c22f-4aa4-871b-2a1e300fffa6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock_8ae2188a-7fd5-4da9-a66a-7e7d2cfab12b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract_b56b065f-c22f-4aa4-871b-2a1e300fffa6" xlink:to="loc_us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock_8ae2188a-7fd5-4da9-a66a-7e7d2cfab12b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/PropertyandEquipment" xlink:type="simple" xlink:href="ibp-20221231.xsd#PropertyandEquipment"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/PropertyandEquipment" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_d39ef9f8-743b-4ad1-b68b-b74e6f5978fe" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_8a345088-dabf-4b5c-9291-bdca1d4f6410" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_d39ef9f8-743b-4ad1-b68b-b74e6f5978fe" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_8a345088-dabf-4b5c-9291-bdca1d4f6410" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/GoodwillandIntangibles" xlink:type="simple" xlink:href="ibp-20221231.xsd#GoodwillandIntangibles"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/GoodwillandIntangibles" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_3384b8db-425c-43bf-88a3-b48bf1a0f30e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_fe32af3e-5673-4fa8-8823-d37f8e6a915f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_3384b8db-425c-43bf-88a3-b48bf1a0f30e" xlink:to="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_fe32af3e-5673-4fa8-8823-d37f8e6a915f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/LongTermDebt" xlink:type="simple" xlink:href="ibp-20221231.xsd#LongTermDebt"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/LongTermDebt" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract_14f8d81d-4dfb-4900-bb7f-53cd6ee1992f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtTextBlock_98bbab7a-e318-4e6f-aa6a-a86e5eff193b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_14f8d81d-4dfb-4900-bb7f-53cd6ee1992f" xlink:to="loc_us-gaap_LongTermDebtTextBlock_98bbab7a-e318-4e6f-aa6a-a86e5eff193b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/Leases" xlink:type="simple" xlink:href="ibp-20221231.xsd#Leases"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/Leases" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_b30f7a8e-a1b5-4277-bfc7-abece37f126f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeasesTextBlock_27462dd7-05d4-4efe-9b46-d2ccca777518" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeasesTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_b30f7a8e-a1b5-4277-bfc7-abece37f126f" xlink:to="loc_us-gaap_LesseeOperatingLeasesTextBlock_27462dd7-05d4-4efe-9b46-d2ccca777518" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeFinanceLeasesTextBlock_0959a230-4dbe-4862-8c30-9d2ccbac8a69" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeFinanceLeasesTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_b30f7a8e-a1b5-4277-bfc7-abece37f126f" xlink:to="loc_us-gaap_LesseeFinanceLeasesTextBlock_0959a230-4dbe-4862-8c30-9d2ccbac8a69" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/FairValueMeasurements" xlink:type="simple" xlink:href="ibp-20221231.xsd#FairValueMeasurements"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/FairValueMeasurements" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_d50d31e5-eb2a-45e4-b1fe-ca937b19bbe0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresTextBlock_ffda5c75-c943-4244-84c7-d1896cbe8c5a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueDisclosuresTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_d50d31e5-eb2a-45e4-b1fe-ca937b19bbe0" xlink:to="loc_us-gaap_FairValueDisclosuresTextBlock_ffda5c75-c943-4244-84c7-d1896cbe8c5a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/InformationonSegments" xlink:type="simple" xlink:href="ibp-20221231.xsd#InformationonSegments"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/InformationonSegments" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_f0e99aaa-b965-4b8f-9c8c-e52a23e9ad38" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingDisclosureTextBlock_acb68a91-15c9-4588-a270-2728838d3036" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_f0e99aaa-b965-4b8f-9c8c-e52a23e9ad38" xlink:to="loc_us-gaap_SegmentReportingDisclosureTextBlock_acb68a91-15c9-4588-a270-2728838d3036" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/DerivativesandHedgingActivities" xlink:type="simple" xlink:href="ibp-20221231.xsd#DerivativesandHedgingActivities"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/DerivativesandHedgingActivities" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_17267703-324b-4491-a721-368f8b8753e7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_9164892c-99f4-44fa-a60b-5c44f25c91cf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_17267703-324b-4491-a721-368f8b8753e7" xlink:to="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_9164892c-99f4-44fa-a60b-5c44f25c91cf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/StockholdersEquity" xlink:type="simple" xlink:href="ibp-20221231.xsd#StockholdersEquity"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/StockholdersEquity" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract_bd06d287-7d3a-4120-8e64-31c67ffc247a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock_fab89a67-243d-4326-9f8e-516dd627f19b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_bd06d287-7d3a-4120-8e64-31c67ffc247a" xlink:to="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock_fab89a67-243d-4326-9f8e-516dd627f19b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/EmployeeBenefits" xlink:type="simple" xlink:href="ibp-20221231.xsd#EmployeeBenefits"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/EmployeeBenefits" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_b07df203-a0ae-42b5-9e39-206b3de15f5e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CompensationAndEmployeeBenefitPlansTextBlock_17873f2b-9746-486e-88fa-fa6ec5eb551d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CompensationAndEmployeeBenefitPlansTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_b07df203-a0ae-42b5-9e39-206b3de15f5e" xlink:to="loc_us-gaap_CompensationAndEmployeeBenefitPlansTextBlock_17873f2b-9746-486e-88fa-fa6ec5eb551d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/IncomeTaxes" xlink:type="simple" xlink:href="ibp-20221231.xsd#IncomeTaxes"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/IncomeTaxes" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_ada614c0-5eca-4885-8b50-38f40a4b4a40" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureTextBlock_408dc022-3b85-44e0-87c3-d4d7595b1c65" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_ada614c0-5eca-4885-8b50-38f40a4b4a40" xlink:to="loc_us-gaap_IncomeTaxDisclosureTextBlock_408dc022-3b85-44e0-87c3-d4d7595b1c65" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/RelatedPartyTransactions" xlink:type="simple" xlink:href="ibp-20221231.xsd#RelatedPartyTransactions"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/RelatedPartyTransactions" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsAbstract_3330377e-0d8f-4449-910a-158ad8c7872d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsDisclosureTextBlock_b98eca48-090d-4091-ba62-ddc207a7a9b6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionsDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionsAbstract_3330377e-0d8f-4449-910a-158ad8c7872d" xlink:to="loc_us-gaap_RelatedPartyTransactionsDisclosureTextBlock_b98eca48-090d-4091-ba62-ddc207a7a9b6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/CommitmentsandContingencies" xlink:type="simple" xlink:href="ibp-20221231.xsd#CommitmentsandContingencies"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/CommitmentsandContingencies" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_2447b852-0eb5-493f-9832-4eaf3af7973f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_b009106b-e456-46fa-808d-93edf2b257f8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_2447b852-0eb5-493f-9832-4eaf3af7973f" xlink:to="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_b009106b-e456-46fa-808d-93edf2b257f8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/BusinessCombinations" xlink:type="simple" xlink:href="ibp-20221231.xsd#BusinessCombinations"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/BusinessCombinations" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_fe4713a8-b965-4163-9c0f-e551b685a77f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationDisclosureTextBlock_7db2ec8c-a6fc-4ce7-93a2-0cf66196834a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_fe4713a8-b965-4163-9c0f-e551b685a77f" xlink:to="loc_us-gaap_BusinessCombinationDisclosureTextBlock_7db2ec8c-a6fc-4ce7-93a2-0cf66196834a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/IncomePerCommonShare" xlink:type="simple" xlink:href="ibp-20221231.xsd#IncomePerCommonShare"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/IncomePerCommonShare" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_da3e6644-c005-4047-b9c6-1cbd1a67a93e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareTextBlock_2cd3b551-7aa1-4747-b670-b1eec056a363" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_da3e6644-c005-4047-b9c6-1cbd1a67a93e" xlink:to="loc_us-gaap_EarningsPerShareTextBlock_2cd3b551-7aa1-4747-b670-b1eec056a363" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/SubsequentEvents" xlink:type="simple" xlink:href="ibp-20221231.xsd#SubsequentEvents"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/SubsequentEvents" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventsAbstract_1104caf4-025d-42dc-9be9-d45cc7ac10c0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventsTextBlock_aafb7dcf-e624-4fa3-b9b9-4fa175d1fe5e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventsTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventsAbstract_1104caf4-025d-42dc-9be9-d45cc7ac10c0" xlink:to="loc_us-gaap_SubsequentEventsTextBlock_aafb7dcf-e624-4fa3-b9b9-4fa175d1fe5e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/SignificantAccountingPoliciesPolicies" xlink:type="simple" xlink:href="ibp-20221231.xsd#SignificantAccountingPoliciesPolicies"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/SignificantAccountingPoliciesPolicies" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_dffb9804-8549-4586-b220-ee171ea8feda" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BasisOfAccountingPolicyPolicyTextBlock_4b310a8b-15cd-4a62-887e-081fccb6fb84" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BasisOfAccountingPolicyPolicyTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_dffb9804-8549-4586-b220-ee171ea8feda" xlink:to="loc_us-gaap_BasisOfAccountingPolicyPolicyTextBlock_4b310a8b-15cd-4a62-887e-081fccb6fb84" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConsolidationPolicyTextBlock_ae0a62f7-2dba-455c-b862-970d968ffa31" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConsolidationPolicyTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_dffb9804-8549-4586-b220-ee171ea8feda" xlink:to="loc_us-gaap_ConsolidationPolicyTextBlock_ae0a62f7-2dba-455c-b862-970d968ffa31" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PriorPeriodReclassificationAdjustmentDescription_2c035bb5-ba29-474d-b108-3f4852c89379" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PriorPeriodReclassificationAdjustmentDescription"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_dffb9804-8549-4586-b220-ee171ea8feda" xlink:to="loc_us-gaap_PriorPeriodReclassificationAdjustmentDescription_2c035bb5-ba29-474d-b108-3f4852c89379" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UseOfEstimates_451e6e40-a105-4695-a365-6cd247cc71fc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UseOfEstimates"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_dffb9804-8549-4586-b220-ee171ea8feda" xlink:to="loc_us-gaap_UseOfEstimates_451e6e40-a105-4695-a365-6cd247cc71fc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsPolicyTextBlock_3db5100d-50e5-4624-ba70-775af5840ee9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_dffb9804-8549-4586-b220-ee171ea8feda" xlink:to="loc_us-gaap_CashAndCashEquivalentsPolicyTextBlock_3db5100d-50e5-4624-ba70-775af5840ee9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_ce6523fd-902c-4571-8c64-db44773ab695" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerPolicyTextBlock"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_dffb9804-8549-4586-b220-ee171ea8feda" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_ce6523fd-902c-4571-8c64-db44773ab695" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativesMethodsOfAccountingHedgingDerivatives_626bc209-10ad-4d49-aa8a-bbd2c34798ee" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativesMethodsOfAccountingHedgingDerivatives"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_dffb9804-8549-4586-b220-ee171ea8feda" xlink:to="loc_us-gaap_DerivativesMethodsOfAccountingHedgingDerivatives_626bc209-10ad-4d49-aa8a-bbd2c34798ee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationsPolicy_8b947d37-f006-439c-acae-447ce856b605" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationsPolicy"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_dffb9804-8549-4586-b220-ee171ea8feda" xlink:to="loc_us-gaap_BusinessCombinationsPolicy_8b947d37-f006-439c-acae-447ce856b605" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReceivablesPolicyTextBlock_433fe4e6-c822-4361-b219-49a5d33853f9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReceivablesPolicyTextBlock"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_dffb9804-8549-4586-b220-ee171ea8feda" xlink:to="loc_us-gaap_ReceivablesPolicyTextBlock_433fe4e6-c822-4361-b219-49a5d33853f9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskCreditRisk_0ad37b3f-46e0-49e9-9fd1-25bc993c5d75" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskCreditRisk"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_dffb9804-8549-4586-b220-ee171ea8feda" xlink:to="loc_us-gaap_ConcentrationRiskCreditRisk_0ad37b3f-46e0-49e9-9fd1-25bc993c5d75" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryPolicyTextBlock_79d41b7e-c529-444d-8fda-7ceaa54cb219" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryPolicyTextBlock"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_dffb9804-8549-4586-b220-ee171ea8feda" xlink:to="loc_us-gaap_InventoryPolicyTextBlock_79d41b7e-c529-444d-8fda-7ceaa54cb219" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_c0a5cae6-40dc-4538-aedd-3014ed1b2e99" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentPolicyTextBlock"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_dffb9804-8549-4586-b220-ee171ea8feda" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_c0a5cae6-40dc-4538-aedd-3014ed1b2e99" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy_5bb784d4-9d24-40b2-933a-21df9cdb4f0d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_dffb9804-8549-4586-b220-ee171ea8feda" xlink:to="loc_us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy_5bb784d4-9d24-40b2-933a-21df9cdb4f0d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock_af70a46d-99a2-4dc5-b2d2-9c61d0c7fc5e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_dffb9804-8549-4586-b220-ee171ea8feda" xlink:to="loc_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock_af70a46d-99a2-4dc5-b2d2-9c61d0c7fc5e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_OtherLiabilitiesPolicyTextBlock_a1e76d09-b84a-4c75-9a6d-9685a905ea46" xlink:href="ibp-20221231.xsd#ibp_OtherLiabilitiesPolicyTextBlock"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_dffb9804-8549-4586-b220-ee171ea8feda" xlink:to="loc_ibp_OtherLiabilitiesPolicyTextBlock_a1e76d09-b84a-4c75-9a6d-9685a905ea46" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdvertisingCostsPolicyTextBlock_b915482a-0523-4294-932a-249c053b4aa4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdvertisingCostsPolicyTextBlock"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_dffb9804-8549-4586-b220-ee171ea8feda" xlink:to="loc_us-gaap_AdvertisingCostsPolicyTextBlock_b915482a-0523-4294-932a-249c053b4aa4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DeferredOfferingCostsPolicyTextBlock_afeabd41-6d8f-4bc6-9085-75236821cc40" xlink:href="ibp-20221231.xsd#ibp_DeferredOfferingCostsPolicyTextBlock"/>
    <link:presentationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_dffb9804-8549-4586-b220-ee171ea8feda" xlink:to="loc_ibp_DeferredOfferingCostsPolicyTextBlock_afeabd41-6d8f-4bc6-9085-75236821cc40" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeasesPolicyTextBlock_89b9c7f6-e89e-4752-b017-43814b8e6ca3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeLeasesPolicyTextBlock"/>
    <link:presentationArc order="18" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_dffb9804-8549-4586-b220-ee171ea8feda" xlink:to="loc_us-gaap_LesseeLeasesPolicyTextBlock_89b9c7f6-e89e-4752-b017-43814b8e6ca3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_4ee3a4f8-e524-40ac-9c58-33ee7fb8d6f0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy"/>
    <link:presentationArc order="19" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_dffb9804-8549-4586-b220-ee171ea8feda" xlink:to="loc_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_4ee3a4f8-e524-40ac-9c58-33ee7fb8d6f0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxPolicyTextBlock_e98ecf56-d5ea-4719-8c0b-2c1f21ddd3f7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxPolicyTextBlock"/>
    <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_dffb9804-8549-4586-b220-ee171ea8feda" xlink:to="loc_us-gaap_IncomeTaxPolicyTextBlock_e98ecf56-d5ea-4719-8c0b-2c1f21ddd3f7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_9d6f9093-8e52-4b89-b4d8-3073f87ee3c2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock"/>
    <link:presentationArc order="21" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_dffb9804-8549-4586-b220-ee171ea8feda" xlink:to="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_9d6f9093-8e52-4b89-b4d8-3073f87ee3c2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy_dc95e63a-f06a-4e4a-9d23-39b7b43653a3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueOfFinancialInstrumentsPolicy"/>
    <link:presentationArc order="22" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_dffb9804-8549-4586-b220-ee171ea8feda" xlink:to="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy_dc95e63a-f06a-4e4a-9d23-39b7b43653a3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/SignificantAccountingPoliciesTables" xlink:type="simple" xlink:href="ibp-20221231.xsd#SignificantAccountingPoliciesTables"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/SignificantAccountingPoliciesTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_f10027e1-d881-491a-b34e-42163398c113" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_f295e853-da8f-4f02-933c-36ccdb377ff4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_f10027e1-d881-491a-b34e-42163398c113" xlink:to="loc_us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_f295e853-da8f-4f02-933c-36ccdb377ff4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/RevenueRecognitionTables" xlink:type="simple" xlink:href="ibp-20221231.xsd#RevenueRecognitionTables"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/RevenueRecognitionTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_7b91a897-6dae-44d2-9303-98c901a730e5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTableTextBlock_91fe3ead-c7da-4ca5-854e-67489c59a56b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_7b91a897-6dae-44d2-9303-98c901a730e5" xlink:to="loc_us-gaap_DisaggregationOfRevenueTableTextBlock_91fe3ead-c7da-4ca5-854e-67489c59a56b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_b1ec1202-6a0b-4dfb-80e6-0d4e9bc54481" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_7b91a897-6dae-44d2-9303-98c901a730e5" xlink:to="loc_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_b1ec1202-6a0b-4dfb-80e6-0d4e9bc54481" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CostsAndEstimatedEarningsOnUncompletedContractsTableTextBlock_2412189d-196e-44d0-aa17-0def8db97aa7" xlink:href="ibp-20221231.xsd#ibp_CostsAndEstimatedEarningsOnUncompletedContractsTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_7b91a897-6dae-44d2-9303-98c901a730e5" xlink:to="loc_ibp_CostsAndEstimatedEarningsOnUncompletedContractsTableTextBlock_2412189d-196e-44d0-aa17-0def8db97aa7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostsInExcessOfBillingsAndBillingsInExcessOfCostsTableTextBlock_0ce7966b-4a75-42e3-bc10-d9cf7ed6ca95" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostsInExcessOfBillingsAndBillingsInExcessOfCostsTableTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_7b91a897-6dae-44d2-9303-98c901a730e5" xlink:to="loc_us-gaap_CostsInExcessOfBillingsAndBillingsInExcessOfCostsTableTextBlock_0ce7966b-4a75-42e3-bc10-d9cf7ed6ca95" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/CreditLossesTables" xlink:type="simple" xlink:href="ibp-20221231.xsd#CreditLossesTables"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/CreditLossesTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditLossAbstract_10907906-af77-4cb9-9a98-be43337eefd7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditLossAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock_3117b725-9afd-4195-84b2-91b622d2b1c7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditLossAbstract_10907906-af77-4cb9-9a98-be43337eefd7" xlink:to="loc_us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock_3117b725-9afd-4195-84b2-91b622d2b1c7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/PropertyandEquipmentTables" xlink:type="simple" xlink:href="ibp-20221231.xsd#PropertyandEquipmentTables"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/PropertyandEquipmentTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_10542a20-9241-41f8-9764-ff587364d6b8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTextBlock_c5956265-61b9-4339-850b-5bcbd7f8aa85" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_10542a20-9241-41f8-9764-ff587364d6b8" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTextBlock_c5956265-61b9-4339-850b-5bcbd7f8aa85" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_PropertyPlantAndEquipmentDepreciationAllocationCategoriesTableTextBlock_29263e73-7fca-4d8f-9d7b-cfa81eb2cc61" xlink:href="ibp-20221231.xsd#ibp_PropertyPlantAndEquipmentDepreciationAllocationCategoriesTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_10542a20-9241-41f8-9764-ff587364d6b8" xlink:to="loc_ibp_PropertyPlantAndEquipmentDepreciationAllocationCategoriesTableTextBlock_29263e73-7fca-4d8f-9d7b-cfa81eb2cc61" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/GoodwillandIntangiblesTables" xlink:type="simple" xlink:href="ibp-20221231.xsd#GoodwillandIntangiblesTables"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/GoodwillandIntangiblesTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_42f94702-7938-48f7-bbb0-5b1879679c5a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfGoodwillTextBlock_80bd13de-dc34-45d3-a7f7-eba87a9dc8e4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfGoodwillTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_42f94702-7938-48f7-bbb0-5b1879679c5a" xlink:to="loc_us-gaap_ScheduleOfGoodwillTextBlock_80bd13de-dc34-45d3-a7f7-eba87a9dc8e4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_bdbd10bc-484b-403d-afe2-3562a1de0701" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_42f94702-7938-48f7-bbb0-5b1879679c5a" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_bdbd10bc-484b-403d-afe2-3562a1de0701" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_0fd64a54-9714-4edd-87a0-f2440d6b49dc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_42f94702-7938-48f7-bbb0-5b1879679c5a" xlink:to="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_0fd64a54-9714-4edd-87a0-f2440d6b49dc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/LongTermDebtTables" xlink:type="simple" xlink:href="ibp-20221231.xsd#LongTermDebtTables"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/LongTermDebtTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract_dee067f3-a9f7-4eab-93eb-5a09ea336fac" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDebtTableTextBlock_14846df0-7b5c-467e-a9ae-51bc106bb9c9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDebtTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_dee067f3-a9f7-4eab-93eb-5a09ea336fac" xlink:to="loc_us-gaap_ScheduleOfDebtTableTextBlock_14846df0-7b5c-467e-a9ae-51bc106bb9c9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_d8b8bd7c-1df9-4568-aa1c-a2ede3d34392" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_dee067f3-a9f7-4eab-93eb-5a09ea336fac" xlink:to="loc_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_d8b8bd7c-1df9-4568-aa1c-a2ede3d34392" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/LeasesTables" xlink:type="simple" xlink:href="ibp-20221231.xsd#LeasesTables"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/LeasesTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_dd955882-9502-41a7-9a15-d8d1efd794be" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_AssetsAndLiabilitiesLesseeTableTextBlock_dde907a5-ec19-4070-b054-cf6d759b72dd" xlink:href="ibp-20221231.xsd#ibp_AssetsAndLiabilitiesLesseeTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_dd955882-9502-41a7-9a15-d8d1efd794be" xlink:to="loc_ibp_AssetsAndLiabilitiesLesseeTableTextBlock_dde907a5-ec19-4070-b054-cf6d759b72dd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCostTableTextBlock_f30ba37a-9d10-461b-bb47-a69b01e9a7b8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseCostTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_dd955882-9502-41a7-9a15-d8d1efd794be" xlink:to="loc_us-gaap_LeaseCostTableTextBlock_f30ba37a-9d10-461b-bb47-a69b01e9a7b8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock_b9684b7b-c41b-453c-850f-ff51db8433eb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_dd955882-9502-41a7-9a15-d8d1efd794be" xlink:to="loc_us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock_b9684b7b-c41b-453c-850f-ff51db8433eb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_1cf82fed-3907-41d5-aa1f-c2d96acdf232" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_dd955882-9502-41a7-9a15-d8d1efd794be" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_1cf82fed-3907-41d5-aa1f-c2d96acdf232" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/FairValueMeasurementsTables" xlink:type="simple" xlink:href="ibp-20221231.xsd#FairValueMeasurementsTables"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/FairValueMeasurementsTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_5e48ae2d-55d9-4b30-8603-bba02492ba6d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_a941c3cc-96e2-4486-b03e-204d79e81be3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_5e48ae2d-55d9-4b30-8603-bba02492ba6d" xlink:to="loc_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_a941c3cc-96e2-4486-b03e-204d79e81be3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock_a86d8e3b-fe8c-4926-af07-205fc0d8d527" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_5e48ae2d-55d9-4b30-8603-bba02492ba6d" xlink:to="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock_a86d8e3b-fe8c-4926-af07-205fc0d8d527" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByBalanceSheetGroupingTextBlock_9956e36e-b5c6-42a2-962d-d479e9f0853c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueByBalanceSheetGroupingTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_5e48ae2d-55d9-4b30-8603-bba02492ba6d" xlink:to="loc_us-gaap_FairValueByBalanceSheetGroupingTextBlock_9956e36e-b5c6-42a2-962d-d479e9f0853c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/InformationonSegmentsTables" xlink:type="simple" xlink:href="ibp-20221231.xsd#InformationonSegmentsTables"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/InformationonSegmentsTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_ffffffdf-4914-4ce5-8cc7-931e8581015c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_9ea54f9a-a3e2-43fc-9331-e4cf306aa801" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_ffffffdf-4914-4ce5-8cc7-931e8581015c" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_9ea54f9a-a3e2-43fc-9331-e4cf306aa801" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/DerivativesandHedgingActivitiesTables" xlink:type="simple" xlink:href="ibp-20221231.xsd#DerivativesandHedgingActivitiesTables"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/DerivativesandHedgingActivitiesTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_0298ce48-1566-4ba5-b7bf-661d5fe59642" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock_cea03962-dab2-4d07-b647-3812d8e84073" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_0298ce48-1566-4ba5-b7bf-661d5fe59642" xlink:to="loc_us-gaap_ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock_cea03962-dab2-4d07-b647-3812d8e84073" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_0164ed61-f3bd-494b-b82e-52c749f4db11" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_0298ce48-1566-4ba5-b7bf-661d5fe59642" xlink:to="loc_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_0164ed61-f3bd-494b-b82e-52c749f4db11" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/StockholdersEquityTables" xlink:type="simple" xlink:href="ibp-20221231.xsd#StockholdersEquityTables"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/StockholdersEquityTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract_0b55f881-286d-4e69-8f18-292675a2b1f7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock_df920443-c930-43ee-a377-b000dc83de04" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_0b55f881-286d-4e69-8f18-292675a2b1f7" xlink:to="loc_us-gaap_ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock_df920443-c930-43ee-a377-b000dc83de04" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsDeclaredTableTextBlock_f09dea0b-1ae3-4252-980c-71307078b0b4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DividendsDeclaredTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_0b55f881-286d-4e69-8f18-292675a2b1f7" xlink:to="loc_us-gaap_DividendsDeclaredTableTextBlock_f09dea0b-1ae3-4252-980c-71307078b0b4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/EmployeeBenefitsTables" xlink:type="simple" xlink:href="ibp-20221231.xsd#EmployeeBenefitsTables"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/EmployeeBenefitsTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_e793c777-1b2c-4181-9d47-6bd398065a8e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_ScheduleOfEmployeeRelatedLiabilitiesTableTextBlock_52387897-44d3-4d68-90f0-cc80c74d2443" xlink:href="ibp-20221231.xsd#ibp_ScheduleOfEmployeeRelatedLiabilitiesTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_e793c777-1b2c-4181-9d47-6bd398065a8e" xlink:to="loc_ibp_ScheduleOfEmployeeRelatedLiabilitiesTableTextBlock_52387897-44d3-4d68-90f0-cc80c74d2443" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_ScheduleOfInsuranceLossReservesForInsuredObligationsTableTextBlock_c3b4f0c3-c7b8-4666-8e37-cf19c8491f84" xlink:href="ibp-20221231.xsd#ibp_ScheduleOfInsuranceLossReservesForInsuredObligationsTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_e793c777-1b2c-4181-9d47-6bd398065a8e" xlink:to="loc_ibp_ScheduleOfInsuranceLossReservesForInsuredObligationsTableTextBlock_c3b4f0c3-c7b8-4666-8e37-cf19c8491f84" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfMultiemployerPlansTableTextBlock_82f4ca28-59d7-49ce-a3e0-60bc85dab46e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfMultiemployerPlansTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_e793c777-1b2c-4181-9d47-6bd398065a8e" xlink:to="loc_us-gaap_ScheduleOfMultiemployerPlansTableTextBlock_82f4ca28-59d7-49ce-a3e0-60bc85dab46e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock_2f6e259c-1e88-4017-9486-462d54e3cef3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_e793c777-1b2c-4181-9d47-6bd398065a8e" xlink:to="loc_us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock_2f6e259c-1e88-4017-9486-462d54e3cef3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_8b742a4f-c99b-44dc-9e2e-f530e9a1c7b6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_e793c777-1b2c-4181-9d47-6bd398065a8e" xlink:to="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_8b742a4f-c99b-44dc-9e2e-f530e9a1c7b6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock_993bc67a-8651-4d3b-b5df-7738032c8f52" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_e793c777-1b2c-4181-9d47-6bd398065a8e" xlink:to="loc_us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock_993bc67a-8651-4d3b-b5df-7738032c8f52" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/IncomeTaxesTables" xlink:type="simple" xlink:href="ibp-20221231.xsd#IncomeTaxesTables"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/IncomeTaxesTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_8d3b136f-23e8-41d0-a8bb-9082e05374ce" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_bc2c306a-d648-4228-8a82-d7151e805e46" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_8d3b136f-23e8-41d0-a8bb-9082e05374ce" xlink:to="loc_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_bc2c306a-d648-4228-8a82-d7151e805e46" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_f98272e0-fc24-4a54-95f3-68b7ebe1ee71" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_8d3b136f-23e8-41d0-a8bb-9082e05374ce" xlink:to="loc_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_f98272e0-fc24-4a54-95f3-68b7ebe1ee71" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_897025ba-4730-4752-91d8-c7091bf3deec" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_8d3b136f-23e8-41d0-a8bb-9082e05374ce" xlink:to="loc_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_897025ba-4730-4752-91d8-c7091bf3deec" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock_5459bb8f-acd7-4ed6-bdef-756718b50ccb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_8d3b136f-23e8-41d0-a8bb-9082e05374ce" xlink:to="loc_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock_5459bb8f-acd7-4ed6-bdef-756718b50ccb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/RelatedPartyTransactionsTables" xlink:type="simple" xlink:href="ibp-20221231.xsd#RelatedPartyTransactionsTables"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/RelatedPartyTransactionsTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsAbstract_7fc52a88-4a27-41cb-aa03-8efde9104ad2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock_bd2301c9-ebd0-47b6-b98c-9406ad3f1283" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionsAbstract_7fc52a88-4a27-41cb-aa03-8efde9104ad2" xlink:to="loc_us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock_bd2301c9-ebd0-47b6-b98c-9406ad3f1283" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/CommitmentsandContingenciesTables" xlink:type="simple" xlink:href="ibp-20221231.xsd#CommitmentsandContingenciesTables"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/CommitmentsandContingenciesTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_5a7eca27-23ee-418b-90ea-21d2bab21245" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_ScheduleOfAccruedInsuranceReservesTableTextBlock_967cc7a7-f118-4ace-9992-3ed4a5b471d7" xlink:href="ibp-20221231.xsd#ibp_ScheduleOfAccruedInsuranceReservesTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_5a7eca27-23ee-418b-90ea-21d2bab21245" xlink:to="loc_ibp_ScheduleOfAccruedInsuranceReservesTableTextBlock_967cc7a7-f118-4ace-9992-3ed4a5b471d7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_InsuranceReceivableClaimsTableTextBlock_adbf234b-54fb-47f4-a20d-c73e1702ca67" xlink:href="ibp-20221231.xsd#ibp_InsuranceReceivableClaimsTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_5a7eca27-23ee-418b-90ea-21d2bab21245" xlink:to="loc_ibp_InsuranceReceivableClaimsTableTextBlock_adbf234b-54fb-47f4-a20d-c73e1702ca67" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/BusinessCombinationsTables" xlink:type="simple" xlink:href="ibp-20221231.xsd#BusinessCombinationsTables"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/BusinessCombinationsTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_cc6d3c29-5eb2-4c12-b145-e1255e5a6765" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_83403714-b211-4e55-a5f2-d334d8e481f9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_cc6d3c29-5eb2-4c12-b145-e1255e5a6765" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_83403714-b211-4e55-a5f2-d334d8e481f9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_73571995-df91-4d5d-8519-8bff12046569" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_cc6d3c29-5eb2-4c12-b145-e1255e5a6765" xlink:to="loc_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_73571995-df91-4d5d-8519-8bff12046569" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedAndIndefiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTableTextBlock_d49ca818-7ee4-4a1a-bf46-f4ef7b332dc5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedAndIndefiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_cc6d3c29-5eb2-4c12-b145-e1255e5a6765" xlink:to="loc_us-gaap_FiniteLivedAndIndefiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTableTextBlock_d49ca818-7ee4-4a1a-bf46-f4ef7b332dc5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionProFormaInformationTextBlock_36dbcd47-28e5-4744-a95e-e36797c59f11" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionProFormaInformationTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_cc6d3c29-5eb2-4c12-b145-e1255e5a6765" xlink:to="loc_us-gaap_BusinessAcquisitionProFormaInformationTextBlock_36dbcd47-28e5-4744-a95e-e36797c59f11" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/OrganizationAdditionalInformationDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#OrganizationAdditionalInformationDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/OrganizationAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_54ebaf08-d86b-4d11-bbc7-456c12f00c9e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_NumberOfLocationsInOperation_8ed11ffe-4079-458e-8300-a44b39366934" xlink:href="ibp-20221231.xsd#ibp_NumberOfLocationsInOperation"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_54ebaf08-d86b-4d11-bbc7-456c12f00c9e" xlink:to="loc_ibp_NumberOfLocationsInOperation_8ed11ffe-4079-458e-8300-a44b39366934" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfOperatingSegments_ff3ac418-2296-498e-a3b9-6ccc2845c127" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NumberOfOperatingSegments"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_54ebaf08-d86b-4d11-bbc7-456c12f00c9e" xlink:to="loc_us-gaap_NumberOfOperatingSegments_ff3ac418-2296-498e-a3b9-6ccc2845c127" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfReportableSegments_97724ed9-66ea-4689-8e2d-de08bb8d0418" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NumberOfReportableSegments"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_54ebaf08-d86b-4d11-bbc7-456c12f00c9e" xlink:to="loc_us-gaap_NumberOfReportableSegments_97724ed9-66ea-4689-8e2d-de08bb8d0418" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#SignificantAccountingPoliciesDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_d54bc2d4-ea61-480f-858a-070f278adbfa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_AccountingPoliciesAndGeneralInformationTable_abb7b34f-2679-4d3b-820c-1735ef159eff" xlink:href="ibp-20221231.xsd#ibp_AccountingPoliciesAndGeneralInformationTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_d54bc2d4-ea61-480f-858a-070f278adbfa" xlink:to="loc_ibp_AccountingPoliciesAndGeneralInformationTable_abb7b34f-2679-4d3b-820c-1735ef159eff" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_421856fe-e79f-4eb9-96c1-295996edfbd4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationTable_abb7b34f-2679-4d3b-820c-1735ef159eff" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_421856fe-e79f-4eb9-96c1-295996edfbd4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_fa54c8a0-80a1-4263-96a3-d2263e49840a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_421856fe-e79f-4eb9-96c1-295996edfbd4" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_fa54c8a0-80a1-4263-96a3-d2263e49840a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerRelationshipsMember_e285eda8-62eb-433e-8414-8c7a7c99c47d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerRelationshipsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_fa54c8a0-80a1-4263-96a3-d2263e49840a" xlink:to="loc_us-gaap_CustomerRelationshipsMember_e285eda8-62eb-433e-8414-8c7a7c99c47d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NoncompeteAgreementsMember_87d63107-c3ed-4442-8f4d-83c7899f57d5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncompeteAgreementsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_fa54c8a0-80a1-4263-96a3-d2263e49840a" xlink:to="loc_us-gaap_NoncompeteAgreementsMember_87d63107-c3ed-4442-8f4d-83c7899f57d5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TrademarksAndTradeNamesMember_75305097-ed44-4889-b0d1-39948b06277c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrademarksAndTradeNamesMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_fa54c8a0-80a1-4263-96a3-d2263e49840a" xlink:to="loc_us-gaap_TrademarksAndTradeNamesMember_75305097-ed44-4889-b0d1-39948b06277c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrderOrProductionBacklogMember_56d5d39d-4517-41dd-bd28-d67f6cce218a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OrderOrProductionBacklogMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_fa54c8a0-80a1-4263-96a3-d2263e49840a" xlink:to="loc_us-gaap_OrderOrProductionBacklogMember_56d5d39d-4517-41dd-bd28-d67f6cce218a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_4ec4920c-2e25-4341-bcaf-8d47c9cff0c6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationTable_abb7b34f-2679-4d3b-820c-1735ef159eff" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_4ec4920c-2e25-4341-bcaf-8d47c9cff0c6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_564478dc-650a-4a82-9f7d-db56e7c9058a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_4ec4920c-2e25-4341-bcaf-8d47c9cff0c6" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_564478dc-650a-4a82-9f7d-db56e7c9058a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableMember_9f1b17eb-b7fd-440d-a18d-cbb781454497" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_564478dc-650a-4a82-9f7d-db56e7c9058a" xlink:to="loc_us-gaap_AccountsReceivableMember_9f1b17eb-b7fd-440d-a18d-cbb781454497" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerMember_d42318b9-02ed-40e6-90d9-66dee3f0761b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_564478dc-650a-4a82-9f7d-db56e7c9058a" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerMember_d42318b9-02ed-40e6-90d9-66dee3f0761b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_ab73e318-62ab-496f-bcbc-5995c59232a5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationTable_abb7b34f-2679-4d3b-820c-1735ef159eff" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_ab73e318-62ab-496f-bcbc-5995c59232a5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_73e040cb-db01-42ca-977c-01d28f87feb8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_ab73e318-62ab-496f-bcbc-5995c59232a5" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_73e040cb-db01-42ca-977c-01d28f87feb8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNoncurrentAssetsMember_d8e68223-eb3c-4765-8427-3473a7fd160a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNoncurrentAssetsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_73e040cb-db01-42ca-977c-01d28f87feb8" xlink:to="loc_us-gaap_OtherNoncurrentAssetsMember_d8e68223-eb3c-4765-8427-3473a7fd160a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis_543c80f6-1528-4cc0-9633-5654828b1b1f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByTypeAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationTable_abb7b34f-2679-4d3b-820c-1735ef159eff" xlink:to="loc_us-gaap_ConcentrationRiskByTypeAxis_543c80f6-1528-4cc0-9633-5654828b1b1f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_e051f134-e15c-40b0-8057-e8335b384dd7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_543c80f6-1528-4cc0-9633-5654828b1b1f" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_e051f134-e15c-40b0-8057-e8335b384dd7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerConcentrationRiskMember_5de8baf2-5415-4040-b3c1-45509b55922b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerConcentrationRiskMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_e051f134-e15c-40b0-8057-e8335b384dd7" xlink:to="loc_us-gaap_CustomerConcentrationRiskMember_5de8baf2-5415-4040-b3c1-45509b55922b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_b9cb07c8-5076-48f6-87f6-431ab49f0dbe" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationTable_abb7b34f-2679-4d3b-820c-1735ef159eff" xlink:to="loc_srt_RangeAxis_b9cb07c8-5076-48f6-87f6-431ab49f0dbe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_66c3522d-503d-457f-8557-142a505c7d11" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_b9cb07c8-5076-48f6-87f6-431ab49f0dbe" xlink:to="loc_srt_RangeMember_66c3522d-503d-457f-8557-142a505c7d11" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_c4afcbdc-a9de-4107-b418-3088a7dfedfb" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_66c3522d-503d-457f-8557-142a505c7d11" xlink:to="loc_srt_MaximumMember_c4afcbdc-a9de-4107-b418-3088a7dfedfb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_02ad206d-36a8-44cf-9ba3-34915502e6a2" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_66c3522d-503d-457f-8557-142a505c7d11" xlink:to="loc_srt_MinimumMember_02ad206d-36a8-44cf-9ba3-34915502e6a2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_6b55b38b-81e7-4422-b3e9-0139040bf6ba" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationTable_abb7b34f-2679-4d3b-820c-1735ef159eff" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_6b55b38b-81e7-4422-b3e9-0139040bf6ba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_929d8d93-3ba7-44e5-95c2-7b0eebb8ef0b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_6b55b38b-81e7-4422-b3e9-0139040bf6ba" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_929d8d93-3ba7-44e5-95c2-7b0eebb8ef0b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VehiclesMember_fdb7325b-3d77-4345-b555-fa8e61c9c787" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VehiclesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_929d8d93-3ba7-44e5-95c2-7b0eebb8ef0b" xlink:to="loc_us-gaap_VehiclesMember_fdb7325b-3d77-4345-b555-fa8e61c9c787" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseholdImprovementsMember_666c0978-6154-434f-8018-3efd72d73390" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseholdImprovementsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_929d8d93-3ba7-44e5-95c2-7b0eebb8ef0b" xlink:to="loc_us-gaap_LeaseholdImprovementsMember_666c0978-6154-434f-8018-3efd72d73390" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FurnitureAndFixturesMember_66479a15-1c4a-4d43-b46a-6c2b2570c67f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FurnitureAndFixturesMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_929d8d93-3ba7-44e5-95c2-7b0eebb8ef0b" xlink:to="loc_us-gaap_FurnitureAndFixturesMember_66479a15-1c4a-4d43-b46a-6c2b2570c67f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BuildingMember_10827442-80eb-4930-88fe-95a9479c1dec" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BuildingMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_929d8d93-3ba7-44e5-95c2-7b0eebb8ef0b" xlink:to="loc_us-gaap_BuildingMember_10827442-80eb-4930-88fe-95a9479c1dec" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeAxis_799138f8-d8b0-44f7-98ca-8ed2000dd6a2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeAxis"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationTable_abb7b34f-2679-4d3b-820c-1735ef159eff" xlink:to="loc_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeAxis_799138f8-d8b0-44f7-98ca-8ed2000dd6a2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeDomain_7775489b-7aae-42a7-bcf5-3d46e7f601b5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeAxis_799138f8-d8b0-44f7-98ca-8ed2000dd6a2" xlink:to="loc_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeDomain_7775489b-7aae-42a7-bcf5-3d46e7f601b5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WorkersCompensationInsuranceMember_cf923ae4-4c4c-4695-8ff0-f864cf473ea5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WorkersCompensationInsuranceMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeDomain_7775489b-7aae-42a7-bcf5-3d46e7f601b5" xlink:to="loc_us-gaap_WorkersCompensationInsuranceMember_cf923ae4-4c4c-4695-8ff0-f864cf473ea5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_GeneralLiabilityInsuranceProgramMember_0991bc23-2052-4529-ac48-fa8cdcca8ada" xlink:href="ibp-20221231.xsd#ibp_GeneralLiabilityInsuranceProgramMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeDomain_7775489b-7aae-42a7-bcf5-3d46e7f601b5" xlink:to="loc_ibp_GeneralLiabilityInsuranceProgramMember_0991bc23-2052-4529-ac48-fa8cdcca8ada" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_VehiclesInsuranceMember_a2c5fcb6-5b6b-4241-a10d-2f59ef6d5ed1" xlink:href="ibp-20221231.xsd#ibp_VehiclesInsuranceMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeDomain_7775489b-7aae-42a7-bcf5-3d46e7f601b5" xlink:to="loc_ibp_VehiclesInsuranceMember_a2c5fcb6-5b6b-4241-a10d-2f59ef6d5ed1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_6520d9fe-fa4d-45ec-bf9b-e4b0f663ce5f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationTable_abb7b34f-2679-4d3b-820c-1735ef159eff" xlink:to="loc_us-gaap_DebtInstrumentAxis_6520d9fe-fa4d-45ec-bf9b-e4b0f663ce5f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_b809ac81-7066-4fc4-ae55-cdb42e5e28c4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_6520d9fe-fa4d-45ec-bf9b-e4b0f663ce5f" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_b809ac81-7066-4fc4-ae55-cdb42e5e28c4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_SeniorSecuredCreditAgreementMember_97bba762-ed93-475b-9567-ea3b38d38221" xlink:href="ibp-20221231.xsd#ibp_SeniorSecuredCreditAgreementMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_b809ac81-7066-4fc4-ae55-cdb42e5e28c4" xlink:to="loc_ibp_SeniorSecuredCreditAgreementMember_97bba762-ed93-475b-9567-ea3b38d38221" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementAxis_6494cbfc-3cdc-4cec-b3b7-c87d30684d5f" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementAxis"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationTable_abb7b34f-2679-4d3b-820c-1735ef159eff" xlink:to="loc_srt_RestatementAxis_6494cbfc-3cdc-4cec-b3b7-c87d30684d5f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementDomain_14846f27-df0c-4e1f-a016-4c7b8768b382" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RestatementAxis_6494cbfc-3cdc-4cec-b3b7-c87d30684d5f" xlink:to="loc_srt_RestatementDomain_14846f27-df0c-4e1f-a016-4c7b8768b382" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementAdjustmentMember_08a460d7-f6db-4283-9ab1-0c5d1d641cfb" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementAdjustmentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RestatementDomain_14846f27-df0c-4e1f-a016-4c7b8768b382" xlink:to="loc_srt_RestatementAdjustmentMember_08a460d7-f6db-4283-9ab1-0c5d1d641cfb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember_89b300e1-d978-47e0-b10e-68207ee4afd2" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RevisionOfPriorPeriodReclassificationAdjustmentMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RestatementDomain_14846f27-df0c-4e1f-a016-4c7b8768b382" xlink:to="loc_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember_89b300e1-d978-47e0-b10e-68207ee4afd2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:href="ibp-20221231.xsd#ibp_AccountingPoliciesAndGeneralInformationLineItems"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationTable_abb7b34f-2679-4d3b-820c-1735ef159eff" xlink:to="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_278b2df8-3962-49fa-8b23-307d5dc2a2fe" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:to="loc_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_278b2df8-3962-49fa-8b23-307d5dc2a2fe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashFDICInsuredAmount_526e45a2-2a0d-4aef-9e0a-c9a92743a370" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashFDICInsuredAmount"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:to="loc_us-gaap_CashFDICInsuredAmount_526e45a2-2a0d-4aef-9e0a-c9a92743a370" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_RevenueFromContractWithCustomerPaymentTerms_eb6a936a-5b2a-4d1c-b93d-fd1ddd92da19" xlink:href="ibp-20221231.xsd#ibp_RevenueFromContractWithCustomerPaymentTerms"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:to="loc_ibp_RevenueFromContractWithCustomerPaymentTerms_eb6a936a-5b2a-4d1c-b93d-fd1ddd92da19" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNet_b36a2100-4a95-453b-b6f9-8593e2232fd7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableNet"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:to="loc_us-gaap_AccountsReceivableNet_b36a2100-4a95-453b-b6f9-8593e2232fd7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConstructionContractorReceivableRetainage_d69cc4b5-e951-427e-850c-f00fc7dbb959" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConstructionContractorReceivableRetainage"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:to="loc_us-gaap_ConstructionContractorReceivableRetainage_d69cc4b5-e951-427e-850c-f00fc7dbb959" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1_8492d166-0811-467f-bf82-000efa2c6c3e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskPercentage1"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:to="loc_us-gaap_ConcentrationRiskPercentage1_8492d166-0811-467f-bf82-000efa2c6c3e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_bbc1a084-74ee-4daf-9b16-324e6ca50cd8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_bbc1a084-74ee-4daf-9b16-324e6ca50cd8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetUsefulLife_5c885f32-5108-4ec1-9f84-dcb72f6ef7f5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetUsefulLife_5c885f32-5108-4ec1-9f84-dcb72f6ef7f5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_4a26b21d-4518-498d-9aff-0c330e4a410d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOfLongLivedAssetsHeldForUse"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:to="loc_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_4a26b21d-4518-498d-9aff-0c330e4a410d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WorkersCompensationLiabilityCurrentAndNoncurrent_cd9b1e1c-5be9-4520-8ca0-464641f2bb94" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WorkersCompensationLiabilityCurrentAndNoncurrent"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:to="loc_us-gaap_WorkersCompensationLiabilityCurrentAndNoncurrent_cd9b1e1c-5be9-4520-8ca0-464641f2bb94" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_AggregateCapWorkersCompensationLiability_34c861a5-6fd5-4829-8eb1-73022e7b07a9" xlink:href="ibp-20221231.xsd#ibp_AggregateCapWorkersCompensationLiability"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:to="loc_ibp_AggregateCapWorkersCompensationLiability_34c861a5-6fd5-4829-8eb1-73022e7b07a9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdvertisingExpense_0c832b38-b369-4417-a8e8-0f2063ebc4ed" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdvertisingExpense"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:to="loc_us-gaap_AdvertisingExpense_0c832b38-b369-4417-a8e8-0f2063ebc4ed" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredFinanceCostsNet_d24e8a43-1020-4d80-88f4-9655a3ec3c97" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredFinanceCostsNet"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:to="loc_us-gaap_DeferredFinanceCostsNet_d24e8a43-1020-4d80-88f4-9655a3ec3c97" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfFinancingCosts_13cd9306-6c47-43ba-b957-2e6ccb6b5eea" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfFinancingCosts"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:to="loc_us-gaap_AmortizationOfFinancingCosts_13cd9306-6c47-43ba-b957-2e6ccb6b5eea" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WriteOffOfDeferredDebtIssuanceCost_c9391d4e-d0d5-479c-b667-c178ea603548" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WriteOffOfDeferredDebtIssuanceCost"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:to="loc_us-gaap_WriteOffOfDeferredDebtIssuanceCost_c9391d4e-d0d5-479c-b667-c178ea603548" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DebtRelatedFinancingCost_8eb5d195-d78c-44c5-833a-05dff3b9373d" xlink:href="ibp-20221231.xsd#ibp_DebtRelatedFinancingCost"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_AccountingPoliciesAndGeneralInformationLineItems_7672abec-d95e-4d5f-b103-4df0945e8d0f" xlink:to="loc_ibp_DebtRelatedFinancingCost_8eb5d195-d78c-44c5-833a-05dff3b9373d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_6d3b5034-eea7-4376-ae45-dfffadf3f0d4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_2addcf16-d8e5-4da5-9e74-37232037937c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_6d3b5034-eea7-4376-ae45-dfffadf3f0d4" xlink:to="loc_us-gaap_DisaggregationOfRevenueTable_2addcf16-d8e5-4da5-9e74-37232037937c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MajorCustomersAxis_d50b5478-62b1-42ee-9e58-d492c91e0cff" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MajorCustomersAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_2addcf16-d8e5-4da5-9e74-37232037937c" xlink:to="loc_srt_MajorCustomersAxis_d50b5478-62b1-42ee-9e58-d492c91e0cff" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_NameOfMajorCustomerDomain_6a2d6702-a5cf-4d3f-9797-2a950c49abae" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_NameOfMajorCustomerDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_MajorCustomersAxis_d50b5478-62b1-42ee-9e58-d492c91e0cff" xlink:to="loc_srt_NameOfMajorCustomerDomain_6a2d6702-a5cf-4d3f-9797-2a950c49abae" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CustomerInstallationMember_76cfa7c5-bb96-4b12-80e5-f13f8bc88577" xlink:href="ibp-20221231.xsd#ibp_CustomerInstallationMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_NameOfMajorCustomerDomain_6a2d6702-a5cf-4d3f-9797-2a950c49abae" xlink:to="loc_ibp_CustomerInstallationMember_76cfa7c5-bb96-4b12-80e5-f13f8bc88577" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_ResidentialNewConstructionMember_443985f6-798e-4ec5-a6b6-10956904c514" xlink:href="ibp-20221231.xsd#ibp_ResidentialNewConstructionMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_CustomerInstallationMember_76cfa7c5-bb96-4b12-80e5-f13f8bc88577" xlink:to="loc_ibp_ResidentialNewConstructionMember_443985f6-798e-4ec5-a6b6-10956904c514" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_RepairAndRemodelMember_91ae8709-e08a-4b8b-8790-865f76d17c2b" xlink:href="ibp-20221231.xsd#ibp_RepairAndRemodelMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_CustomerInstallationMember_76cfa7c5-bb96-4b12-80e5-f13f8bc88577" xlink:to="loc_ibp_RepairAndRemodelMember_91ae8709-e08a-4b8b-8790-865f76d17c2b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CommercialMember_ff2c25d0-b967-4942-b2e3-4d849f45eb59" xlink:href="ibp-20221231.xsd#ibp_CommercialMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_CustomerInstallationMember_76cfa7c5-bb96-4b12-80e5-f13f8bc88577" xlink:to="loc_ibp_CommercialMember_ff2c25d0-b967-4942-b2e3-4d849f45eb59" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_OtherCustomerInstallationMember_7af88cd9-9385-4642-a587-de7e73726afa" xlink:href="ibp-20221231.xsd#ibp_OtherCustomerInstallationMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_NameOfMajorCustomerDomain_6a2d6702-a5cf-4d3f-9797-2a950c49abae" xlink:to="loc_ibp_OtherCustomerInstallationMember_7af88cd9-9385-4642-a587-de7e73726afa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis_f28eebc4-48b7-4992-a15b-dfbe5b96186a" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductOrServiceAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_2addcf16-d8e5-4da5-9e74-37232037937c" xlink:to="loc_srt_ProductOrServiceAxis_f28eebc4-48b7-4992-a15b-dfbe5b96186a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_2e345486-1caa-4bb1-b472-e01e19fd8663" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductsAndServicesDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductOrServiceAxis_f28eebc4-48b7-4992-a15b-dfbe5b96186a" xlink:to="loc_srt_ProductsAndServicesDomain_2e345486-1caa-4bb1-b472-e01e19fd8663" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_ProductInstallationMember_fdcc8421-cc20-4397-90f5-c4aa6290541b" xlink:href="ibp-20221231.xsd#ibp_ProductInstallationMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_2e345486-1caa-4bb1-b472-e01e19fd8663" xlink:to="loc_ibp_ProductInstallationMember_fdcc8421-cc20-4397-90f5-c4aa6290541b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_InsulationMember_4a2a7270-daf6-42b2-a617-5bab33841bad" xlink:href="ibp-20221231.xsd#ibp_InsulationMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_ProductInstallationMember_fdcc8421-cc20-4397-90f5-c4aa6290541b" xlink:to="loc_ibp_InsulationMember_4a2a7270-daf6-42b2-a617-5bab33841bad" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_ShowerDoorsShelvingAndMirrorsMember_ce2da31e-3824-4b96-bb15-964f6dcc2f0b" xlink:href="ibp-20221231.xsd#ibp_ShowerDoorsShelvingAndMirrorsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_ProductInstallationMember_fdcc8421-cc20-4397-90f5-c4aa6290541b" xlink:to="loc_ibp_ShowerDoorsShelvingAndMirrorsMember_ce2da31e-3824-4b96-bb15-964f6dcc2f0b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_GarageDoorsMember_3aa605fd-86aa-4d5d-8ac5-9c73274497f8" xlink:href="ibp-20221231.xsd#ibp_GarageDoorsMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_ProductInstallationMember_fdcc8421-cc20-4397-90f5-c4aa6290541b" xlink:to="loc_ibp_GarageDoorsMember_3aa605fd-86aa-4d5d-8ac5-9c73274497f8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_WaterproofingMember_e3dac1c5-0c11-4894-af56-678344bcaded" xlink:href="ibp-20221231.xsd#ibp_WaterproofingMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_ProductInstallationMember_fdcc8421-cc20-4397-90f5-c4aa6290541b" xlink:to="loc_ibp_WaterproofingMember_e3dac1c5-0c11-4894-af56-678344bcaded" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_RainGuttersMember_dab017a8-b75e-4503-b31b-83f1598344b3" xlink:href="ibp-20221231.xsd#ibp_RainGuttersMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_ProductInstallationMember_fdcc8421-cc20-4397-90f5-c4aa6290541b" xlink:to="loc_ibp_RainGuttersMember_dab017a8-b75e-4503-b31b-83f1598344b3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FireproofingAndFirestoppingMember_88a32959-dbb9-4dbd-980c-9d4d1830e8a2" xlink:href="ibp-20221231.xsd#ibp_FireproofingAndFirestoppingMember"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_ProductInstallationMember_fdcc8421-cc20-4397-90f5-c4aa6290541b" xlink:to="loc_ibp_FireproofingAndFirestoppingMember_88a32959-dbb9-4dbd-980c-9d4d1830e8a2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_WindowBlindsMember_75710bbc-89e6-43e1-b97b-18bd1a3fd5d6" xlink:href="ibp-20221231.xsd#ibp_WindowBlindsMember"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_ProductInstallationMember_fdcc8421-cc20-4397-90f5-c4aa6290541b" xlink:to="loc_ibp_WindowBlindsMember_75710bbc-89e6-43e1-b97b-18bd1a3fd5d6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_OtherBuildingProductsMember_9e59921a-b36a-4d44-b9ea-cc7100613926" xlink:href="ibp-20221231.xsd#ibp_OtherBuildingProductsMember"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_ProductInstallationMember_fdcc8421-cc20-4397-90f5-c4aa6290541b" xlink:to="loc_ibp_OtherBuildingProductsMember_9e59921a-b36a-4d44-b9ea-cc7100613926" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_OtherProductInstallationMember_d9343ed9-b879-4e55-9b6c-eaae27d5a692" xlink:href="ibp-20221231.xsd#ibp_OtherProductInstallationMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_2e345486-1caa-4bb1-b472-e01e19fd8663" xlink:to="loc_ibp_OtherProductInstallationMember_d9343ed9-b879-4e55-9b6c-eaae27d5a692" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_4d1191d0-9c31-4231-9347-882d86004106" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_2addcf16-d8e5-4da5-9e74-37232037937c" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_4d1191d0-9c31-4231-9347-882d86004106" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_46aafc64-ab1f-44d5-a8d9-016082f5c1fb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_4d1191d0-9c31-4231-9347-882d86004106" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_46aafc64-ab1f-44d5-a8d9-016082f5c1fb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerMember_b16c8ca0-1053-4073-bcf3-1c3572198f39" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_46aafc64-ab1f-44d5-a8d9-016082f5c1fb" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerMember_b16c8ca0-1053-4073-bcf3-1c3572198f39" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerProductAndServiceBenchmarkMember_503645ab-e7a2-4cdb-bef7-9827cc708d93" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerProductAndServiceBenchmarkMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_46aafc64-ab1f-44d5-a8d9-016082f5c1fb" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerProductAndServiceBenchmarkMember_503645ab-e7a2-4cdb-bef7-9827cc708d93" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis_42da1f89-7224-44f3-ad95-429f95b5756f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByTypeAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_2addcf16-d8e5-4da5-9e74-37232037937c" xlink:to="loc_us-gaap_ConcentrationRiskByTypeAxis_42da1f89-7224-44f3-ad95-429f95b5756f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_6ddd8957-7df9-40ef-884f-051690b556d5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_42da1f89-7224-44f3-ad95-429f95b5756f" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_6ddd8957-7df9-40ef-884f-051690b556d5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerConcentrationRiskMember_d552690c-e399-4553-8351-6ddfef78906f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerConcentrationRiskMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_6ddd8957-7df9-40ef-884f-051690b556d5" xlink:to="loc_us-gaap_CustomerConcentrationRiskMember_d552690c-e399-4553-8351-6ddfef78906f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductConcentrationRiskMember_658d3bbc-47dd-4fb6-9a8d-a52e50cef857" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductConcentrationRiskMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_6ddd8957-7df9-40ef-884f-051690b556d5" xlink:to="loc_us-gaap_ProductConcentrationRiskMember_658d3bbc-47dd-4fb6-9a8d-a52e50cef857" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_29196823-7faa-4c8c-9149-9ce872aa0da6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueLineItems"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_2addcf16-d8e5-4da5-9e74-37232037937c" xlink:to="loc_us-gaap_DisaggregationOfRevenueLineItems_29196823-7faa-4c8c-9149-9ce872aa0da6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_6018e536-eecf-4751-b5ff-83d12f95aaaf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_29196823-7faa-4c8c-9149-9ce872aa0da6" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_6018e536-eecf-4751-b5ff-83d12f95aaaf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1_ecb020ee-26d7-424c-944f-b373418cf40e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskPercentage1"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_29196823-7faa-4c8c-9149-9ce872aa0da6" xlink:to="loc_us-gaap_ConcentrationRiskPercentage1_ecb020ee-26d7-424c-944f-b373418cf40e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofAssetsandLiabilitiesRelatedtoUncompletedContractsandCustomerDepositsDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#RevenueRecognitionSummaryofAssetsandLiabilitiesRelatedtoUncompletedContractsandCustomerDepositsDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofAssetsandLiabilitiesRelatedtoUncompletedContractsandCustomerDepositsDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_4328b92d-44f0-4ce8-a4fc-796b8fdd53bd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerAssetNet_718296f1-a1dc-4013-a678-4cd6b367e0c5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerAssetNet"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_4328b92d-44f0-4ce8-a4fc-796b8fdd53bd" xlink:to="loc_us-gaap_ContractWithCustomerAssetNet_718296f1-a1dc-4013-a678-4cd6b367e0c5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiability_a53bba15-359e-4722-a11c-a463dec44256" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerLiability"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_4328b92d-44f0-4ce8-a4fc-796b8fdd53bd" xlink:to="loc_us-gaap_ContractWithCustomerLiability_a53bba15-359e-4722-a11c-a463dec44256" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofCostandEstimatedEarningsonUncompletedContractsDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#RevenueRecognitionScheduleofCostandEstimatedEarningsonUncompletedContractsDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofCostandEstimatedEarningsonUncompletedContractsDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_c13484a8-f93a-4a8c-bf53-3b8115a28911" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CostsIncurredOnUncompletedContracts_4e4865a0-18da-48e8-8914-de3061de3eb9" xlink:href="ibp-20221231.xsd#ibp_CostsIncurredOnUncompletedContracts"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_c13484a8-f93a-4a8c-bf53-3b8115a28911" xlink:to="loc_ibp_CostsIncurredOnUncompletedContracts_4e4865a0-18da-48e8-8914-de3061de3eb9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_EstimatedEarningsOnLongTermContracts_3c997229-ba73-4167-864d-df7751491c2a" xlink:href="ibp-20221231.xsd#ibp_EstimatedEarningsOnLongTermContracts"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_c13484a8-f93a-4a8c-bf53-3b8115a28911" xlink:to="loc_ibp_EstimatedEarningsOnLongTermContracts_3c997229-ba73-4167-864d-df7751491c2a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReceivablesLongTermContractsOrPrograms_ad521d43-0548-48e3-a43c-be871aadac0b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReceivablesLongTermContractsOrPrograms"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_c13484a8-f93a-4a8c-bf53-3b8115a28911" xlink:to="loc_us-gaap_ReceivablesLongTermContractsOrPrograms_ad521d43-0548-48e3-a43c-be871aadac0b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BilledContractReceivables_6191cc0d-b208-402a-9a43-96e64c6ab8ff" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BilledContractReceivables"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_c13484a8-f93a-4a8c-bf53-3b8115a28911" xlink:to="loc_us-gaap_BilledContractReceivables_6191cc0d-b208-402a-9a43-96e64c6ab8ff" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CostAndEstimatedEarningsUnderOverBillingsNet_833e9572-ccdc-4821-9a18-cc7a02739e76" xlink:href="ibp-20221231.xsd#ibp_CostAndEstimatedEarningsUnderOverBillingsNet"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_c13484a8-f93a-4a8c-bf53-3b8115a28911" xlink:to="loc_ibp_CostAndEstimatedEarningsUnderOverBillingsNet_833e9572-ccdc-4821-9a18-cc7a02739e76" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofNetUnderOverBillingsDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#RevenueRecognitionScheduleofNetUnderOverBillingsDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofNetUnderOverBillingsDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_e1eeac53-00af-4885-a874-1a14171674e8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts_f7628110-7ab5-4be0-b93a-7db5b3a4fe1e" xlink:href="ibp-20221231.xsd#ibp_CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_e1eeac53-00af-4885-a874-1a14171674e8" xlink:to="loc_ibp_CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts_f7628110-7ab5-4be0-b93a-7db5b3a4fe1e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_BillingsInExcessOfCostOnUncompletedContracts_f8cb80ce-53e7-4316-9af1-48306b9b3e95" xlink:href="ibp-20221231.xsd#ibp_BillingsInExcessOfCostOnUncompletedContracts"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_e1eeac53-00af-4885-a874-1a14171674e8" xlink:to="loc_ibp_BillingsInExcessOfCostOnUncompletedContracts_f8cb80ce-53e7-4316-9af1-48306b9b3e95" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CostAndEstimatedEarningsUnderOverBillingsNet_bf8dc523-86bd-4b86-83ce-7dbe9e469ed2" xlink:href="ibp-20221231.xsd#ibp_CostAndEstimatedEarningsUnderOverBillingsNet"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_e1eeac53-00af-4885-a874-1a14171674e8" xlink:to="loc_ibp_CostAndEstimatedEarningsUnderOverBillingsNet_bf8dc523-86bd-4b86-83ce-7dbe9e469ed2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/RevenueRecognitionAdditionalInformationDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#RevenueRecognitionAdditionalInformationDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/RevenueRecognitionAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_be18ecda-f537-4af4-8141-897ebf70418a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityRevenueRecognized_ff7e5876-789f-45cc-8816-9ad274b9aa10" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerLiabilityRevenueRecognized"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_be18ecda-f537-4af4-8141-897ebf70418a" xlink:to="loc_us-gaap_ContractWithCustomerLiabilityRevenueRecognized_ff7e5876-789f-45cc-8816-9ad274b9aa10" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalizedContractCostImpairmentLoss_97eaefa1-1809-4f5a-af29-e6be688143cd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CapitalizedContractCostImpairmentLoss"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_be18ecda-f537-4af4-8141-897ebf70418a" xlink:to="loc_us-gaap_CapitalizedContractCostImpairmentLoss_97eaefa1-1809-4f5a-af29-e6be688143cd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligation_09617e99-4910-49d0-ae9a-dfa364cff729" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueRemainingPerformanceObligation"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_be18ecda-f537-4af4-8141-897ebf70418a" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligation_09617e99-4910-49d0-ae9a-dfa364cff729" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_a7c11409-df23-4e5d-9ced-8b0cdeb512d5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_be18ecda-f537-4af4-8141-897ebf70418a" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_a7c11409-df23-4e5d-9ced-8b0cdeb512d5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_9ec89fbb-6d32-4586-8923-036731acf81a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_a7c11409-df23-4e5d-9ced-8b0cdeb512d5" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_9ec89fbb-6d32-4586-8923-036731acf81a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_3b8f18fa-12ce-4a91-a143-c0b57b2190b2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_a7c11409-df23-4e5d-9ced-8b0cdeb512d5" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_3b8f18fa-12ce-4a91-a143-c0b57b2190b2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_5170ffbf-c4a1-4c21-8ce2-f3bc5429f1a9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_3b8f18fa-12ce-4a91-a143-c0b57b2190b2" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_5170ffbf-c4a1-4c21-8ce2-f3bc5429f1a9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/RevenueRecognitionAdditionalInformationDetail_1" xlink:type="simple" xlink:href="ibp-20221231.xsd#RevenueRecognitionAdditionalInformationDetail_1"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/RevenueRecognitionAdditionalInformationDetail_1" xlink:type="extended"/>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/CreditLossesAdditionalInformationDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#CreditLossesAdditionalInformationDetails"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/CreditLossesAdditionalInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditLossAbstract_db82b681-ba74-43fa-8487-3627d8c7ea1b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditLossAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable_014eaf9b-4155-4405-9848-8013cf07648c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditLossAbstract_db82b681-ba74-43fa-8487-3627d8c7ea1b" xlink:to="loc_us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable_014eaf9b-4155-4405-9848-8013cf07648c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_4845ff4d-25e6-43c9-b04e-a8767a5198b4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable_014eaf9b-4155-4405-9848-8013cf07648c" xlink:to="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_4845ff4d-25e6-43c9-b04e-a8767a5198b4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TypeOfAdoptionMember_553fa0b2-b580-46b6-a51c-5e6ef24569a3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfAdoptionMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_4845ff4d-25e6-43c9-b04e-a8767a5198b4" xlink:to="loc_us-gaap_TypeOfAdoptionMember_553fa0b2-b580-46b6-a51c-5e6ef24569a3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingStandardsUpdate201613Member_5a391adc-3836-4bbb-b2cb-f3cf854b8c8f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingStandardsUpdate201613Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TypeOfAdoptionMember_553fa0b2-b580-46b6-a51c-5e6ef24569a3" xlink:to="loc_us-gaap_AccountingStandardsUpdate201613Member_5a391adc-3836-4bbb-b2cb-f3cf854b8c8f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_ab4ffb01-aa15-4ada-81d4-ba0bde2f3a47" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable_014eaf9b-4155-4405-9848-8013cf07648c" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_ab4ffb01-aa15-4ada-81d4-ba0bde2f3a47" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_3c47fd73-e89b-4a5d-83fd-5cb9d1a6f1a0" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_ab4ffb01-aa15-4ada-81d4-ba0bde2f3a47" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_3c47fd73-e89b-4a5d-83fd-5cb9d1a6f1a0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_7a9c6bd2-8f77-41a6-8abd-c728c4c18a9f" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_3c47fd73-e89b-4a5d-83fd-5cb9d1a6f1a0" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_7a9c6bd2-8f77-41a6-8abd-c728c4c18a9f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_161a5504-eaba-4716-8ed9-5ee77cf5cb0e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable_014eaf9b-4155-4405-9848-8013cf07648c" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_161a5504-eaba-4716-8ed9-5ee77cf5cb0e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_eeabe70d-4d53-4963-8c55-feb8489e78c8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_161a5504-eaba-4716-8ed9-5ee77cf5cb0e" xlink:to="loc_us-gaap_EquityComponentDomain_eeabe70d-4d53-4963-8c55-feb8489e78c8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember_a4182e86-87ca-4259-999f-da579cf774ce" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_eeabe70d-4d53-4963-8c55-feb8489e78c8" xlink:to="loc_us-gaap_RetainedEarningsMember_a4182e86-87ca-4259-999f-da579cf774ce" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems_604befde-de20-42c3-8952-dce66e5a0eca" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable_014eaf9b-4155-4405-9848-8013cf07648c" xlink:to="loc_us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems_604befde-de20-42c3-8952-dce66e5a0eca" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_85eedd36-d215-4234-a6f7-4bb70ca4994b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems_604befde-de20-42c3-8952-dce66e5a0eca" xlink:to="loc_us-gaap_StockholdersEquity_85eedd36-d215-4234-a6f7-4bb70ca4994b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxAssetsNet_af0b29db-7fb9-40a1-8527-eaf777583b10" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxAssetsNet"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems_604befde-de20-42c3-8952-dce66e5a0eca" xlink:to="loc_us-gaap_DeferredIncomeTaxAssetsNet_af0b29db-7fb9-40a1-8527-eaf777583b10" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/CreditLossesScheduleofChangesinAllowanceforCreditLossesDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#CreditLossesScheduleofChangesinAllowanceforCreditLossesDetails"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/CreditLossesScheduleofChangesinAllowanceforCreditLossesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditLossAbstract_7862d2e3-38a2-469d-8067-92289dbb4811" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditLossAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable_9553113b-b3d1-4c8d-9e11-c160da64bb7e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditLossAbstract_7862d2e3-38a2-469d-8067-92289dbb4811" xlink:to="loc_us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable_9553113b-b3d1-4c8d-9e11-c160da64bb7e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_b375395a-b446-43c3-90f5-73d95939584a" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable_9553113b-b3d1-4c8d-9e11-c160da64bb7e" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_b375395a-b446-43c3-90f5-73d95939584a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_493ceb18-c344-4395-97b7-325cc6667104" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionAxis_b375395a-b446-43c3-90f5-73d95939584a" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_493ceb18-c344-4395-97b7-325cc6667104" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_69d88949-b8c2-438e-8535-a6be5c3bfdaa" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_CumulativeEffectPeriodOfAdoptionDomain_493ceb18-c344-4395-97b7-325cc6667104" xlink:to="loc_srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember_69d88949-b8c2-438e-8535-a6be5c3bfdaa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_e356e56a-db4d-4921-9be3-d57a9e77cc8f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable_9553113b-b3d1-4c8d-9e11-c160da64bb7e" xlink:to="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_e356e56a-db4d-4921-9be3-d57a9e77cc8f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TypeOfAdoptionMember_9e44c033-270b-4bad-bd86-7b0fa3f19350" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfAdoptionMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_e356e56a-db4d-4921-9be3-d57a9e77cc8f" xlink:to="loc_us-gaap_TypeOfAdoptionMember_9e44c033-270b-4bad-bd86-7b0fa3f19350" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingStandardsUpdate201613Member_dbf07f17-d804-43d9-a2cf-e1e6633aa3bb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingStandardsUpdate201613Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TypeOfAdoptionMember_9e44c033-270b-4bad-bd86-7b0fa3f19350" xlink:to="loc_us-gaap_AccountingStandardsUpdate201613Member_dbf07f17-d804-43d9-a2cf-e1e6633aa3bb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems_524d9eba-0920-44e4-97b1-2c6ed5ce76d4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable_9553113b-b3d1-4c8d-9e11-c160da64bb7e" xlink:to="loc_us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems_524d9eba-0920-44e4-97b1-2c6ed5ce76d4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_ccab1016-c7b9-4f20-b827-0ec65b5807ac" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems_524d9eba-0920-44e4-97b1-2c6ed5ce76d4" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_ccab1016-c7b9-4f20-b827-0ec65b5807ac" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable_d5d58306-4c56-4708-a1be-b452e2053201" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_ccab1016-c7b9-4f20-b827-0ec65b5807ac" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable_d5d58306-4c56-4708-a1be-b452e2053201" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts_7236634d-7738-4171-ada9-9a2748c09aac" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProvisionForDoubtfulAccounts"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_ccab1016-c7b9-4f20-b827-0ec65b5807ac" xlink:to="loc_us-gaap_ProvisionForDoubtfulAccounts_7236634d-7738-4171-ada9-9a2748c09aac" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries_53b16ed7-c118-4379-a13a-6891c453884e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_ccab1016-c7b9-4f20-b827-0ec65b5807ac" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries_53b16ed7-c118-4379-a13a-6891c453884e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs_720973e5-1f9e-43d0-bc8e-6db99b0849ad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_ccab1016-c7b9-4f20-b827-0ec65b5807ac" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs_720973e5-1f9e-43d0-bc8e-6db99b0849ad" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable_7cbf4e81-996b-4b85-9eb1-957d528ca0ea" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivable"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_ccab1016-c7b9-4f20-b827-0ec65b5807ac" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable_7cbf4e81-996b-4b85-9eb1-957d528ca0ea" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/CashandCashEquivalentsAdditionalInformationDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#CashandCashEquivalentsAdditionalInformationDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/CashandCashEquivalentsAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract_73e4ef31-291f-4d48-a0f7-b9ccc7904915" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MoneyMarketFundsAtCarryingValue_3f593c3a-f673-42a4-9171-7941e87020f8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MoneyMarketFundsAtCarryingValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract_73e4ef31-291f-4d48-a0f7-b9ccc7904915" xlink:to="loc_us-gaap_MoneyMarketFundsAtCarryingValue_3f593c3a-f673-42a4-9171-7941e87020f8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#PropertyandEquipmentScheduleofPropertyandEquipmentDetails"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_3444d129-1c51-4787-b078-9abeabd05f68" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_d3b00ea3-5c5d-4fbd-a3dc-e731d32606f7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_3444d129-1c51-4787-b078-9abeabd05f68" xlink:to="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_d3b00ea3-5c5d-4fbd-a3dc-e731d32606f7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_6ec69806-57e4-4d10-9643-fe90adbd4ec3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_d3b00ea3-5c5d-4fbd-a3dc-e731d32606f7" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_6ec69806-57e4-4d10-9643-fe90adbd4ec3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_4f89e543-7e2b-4695-b892-2fb4826f4afd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_6ec69806-57e4-4d10-9643-fe90adbd4ec3" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_4f89e543-7e2b-4695-b892-2fb4826f4afd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LandMember_c9256390-16bb-4415-b4b4-5c11a24a22b7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LandMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_4f89e543-7e2b-4695-b892-2fb4826f4afd" xlink:to="loc_us-gaap_LandMember_c9256390-16bb-4415-b4b4-5c11a24a22b7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BuildingMember_c137df07-a4e3-4e90-bf85-a7ba7739aee7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BuildingMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_4f89e543-7e2b-4695-b892-2fb4826f4afd" xlink:to="loc_us-gaap_BuildingMember_c137df07-a4e3-4e90-bf85-a7ba7739aee7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseholdImprovementsMember_d931b5ab-76e1-402a-aba9-87548b0d93b7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseholdImprovementsMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_4f89e543-7e2b-4695-b892-2fb4826f4afd" xlink:to="loc_us-gaap_LeaseholdImprovementsMember_d931b5ab-76e1-402a-aba9-87548b0d93b7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FurnitureAndFixturesMember_f67dd425-7700-4d4d-b35e-bc27bb442f29" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FurnitureAndFixturesMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_4f89e543-7e2b-4695-b892-2fb4826f4afd" xlink:to="loc_us-gaap_FurnitureAndFixturesMember_f67dd425-7700-4d4d-b35e-bc27bb442f29" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_VehiclesAndEquipmentMember_0772c2d7-b770-45f3-beb6-d885f9d834dc" xlink:href="ibp-20221231.xsd#ibp_VehiclesAndEquipmentMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_4f89e543-7e2b-4695-b892-2fb4826f4afd" xlink:to="loc_ibp_VehiclesAndEquipmentMember_0772c2d7-b770-45f3-beb6-d885f9d834dc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems_52590e24-091c-483d-afcc-ebb840f2a146" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_d3b00ea3-5c5d-4fbd-a3dc-e731d32606f7" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentLineItems_52590e24-091c-483d-afcc-ebb840f2a146" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_2d1cfed5-2063-4f37-96d1-e2dbd6234a4d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_52590e24-091c-483d-afcc-ebb840f2a146" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_2d1cfed5-2063-4f37-96d1-e2dbd6234a4d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization_d2bc3d28-ff08-4ba4-a3de-3247b7320f80" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_52590e24-091c-483d-afcc-ebb840f2a146" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization_d2bc3d28-ff08-4ba4-a3de-3247b7320f80" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_a52078af-2477-44f6-971c-246b47dab602" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_52590e24-091c-483d-afcc-ebb840f2a146" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_a52078af-2477-44f6-971c-246b47dab602" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofDepreciationandAmortizationExpenseonPropertyandEquipmentbyIncomeStatementCategoryDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#PropertyandEquipmentScheduleofDepreciationandAmortizationExpenseonPropertyandEquipmentbyIncomeStatementCategoryDetails"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofDepreciationandAmortizationExpenseonPropertyandEquipmentbyIncomeStatementCategoryDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_7d8cf385-df85-4fe6-a4f7-3fbacb261de7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_1dc22b26-6c17-4237-8468-b718dd2a629a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_7d8cf385-df85-4fe6-a4f7-3fbacb261de7" xlink:to="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_1dc22b26-6c17-4237-8468-b718dd2a629a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_3b1d9442-7e80-4a8a-9936-f1ef6d7565b7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_1dc22b26-6c17-4237-8468-b718dd2a629a" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_3b1d9442-7e80-4a8a-9936-f1ef6d7565b7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_49aad3bc-af43-4bea-bbd0-53e57ef3b9db" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_3b1d9442-7e80-4a8a-9936-f1ef6d7565b7" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_49aad3bc-af43-4bea-bbd0-53e57ef3b9db" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfSalesMember_10a1a89d-12e2-4539-8681-346e1324ef76" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfSalesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_49aad3bc-af43-4bea-bbd0-53e57ef3b9db" xlink:to="loc_us-gaap_CostOfSalesMember_10a1a89d-12e2-4539-8681-346e1324ef76" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpenseMember_8ce95ce7-1209-4c57-8c11-07da924dfd1b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GeneralAndAdministrativeExpenseMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_49aad3bc-af43-4bea-bbd0-53e57ef3b9db" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpenseMember_8ce95ce7-1209-4c57-8c11-07da924dfd1b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems_a8c4bdf1-19b0-4857-a423-cf0d85593f3a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_1dc22b26-6c17-4237-8468-b718dd2a629a" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentLineItems_a8c4bdf1-19b0-4857-a423-cf0d85593f3a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationAndAmortization_6be4f83d-8f07-4bc8-970b-969bbefe5e16" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DepreciationAndAmortization"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_a8c4bdf1-19b0-4857-a423-cf0d85593f3a" xlink:to="loc_us-gaap_DepreciationAndAmortization_6be4f83d-8f07-4bc8-970b-969bbefe5e16" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_9e255cfe-d506-4448-a619-3a6b79af86ef" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfGoodwillTable_af2dbb92-a7df-4ee8-b8e6-11a9d1e2906d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfGoodwillTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_9e255cfe-d506-4448-a619-3a6b79af86ef" xlink:to="loc_us-gaap_ScheduleOfGoodwillTable_af2dbb92-a7df-4ee8-b8e6-11a9d1e2906d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_c441d416-e579-4fd4-b712-0e8c285c3ed8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_af2dbb92-a7df-4ee8-b8e6-11a9d1e2906d" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_c441d416-e579-4fd4-b712-0e8c285c3ed8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_0890450b-b51e-4d94-9fff-ba90b7281573" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_c441d416-e579-4fd4-b712-0e8c285c3ed8" xlink:to="loc_us-gaap_SegmentDomain_0890450b-b51e-4d94-9fff-ba90b7281573" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_InstallationSegmentMember_8a5b91c4-e751-4276-a836-06aeea40a26e" xlink:href="ibp-20221231.xsd#ibp_InstallationSegmentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_0890450b-b51e-4d94-9fff-ba90b7281573" xlink:to="loc_ibp_InstallationSegmentMember_8a5b91c4-e751-4276-a836-06aeea40a26e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_OtherSegmentMember_4145dd6f-f68c-4f96-8367-4f1d98b07747" xlink:href="ibp-20221231.xsd#ibp_OtherSegmentMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_0890450b-b51e-4d94-9fff-ba90b7281573" xlink:to="loc_ibp_OtherSegmentMember_4145dd6f-f68c-4f96-8367-4f1d98b07747" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillLineItems_84fdb7e7-3bb0-4439-9d71-6e39546f1b41" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_af2dbb92-a7df-4ee8-b8e6-11a9d1e2906d" xlink:to="loc_us-gaap_GoodwillLineItems_84fdb7e7-3bb0-4439-9d71-6e39546f1b41" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillRollForward_8daf5964-cf20-4e30-a025-65efd5eb35e5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillLineItems_84fdb7e7-3bb0-4439-9d71-6e39546f1b41" xlink:to="loc_us-gaap_GoodwillRollForward_8daf5964-cf20-4e30-a025-65efd5eb35e5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillGross_9c2bf2c6-0781-4783-9dbe-0edec8e2fa0d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillGross"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillRollForward_8daf5964-cf20-4e30-a025-65efd5eb35e5" xlink:to="loc_us-gaap_GoodwillGross_9c2bf2c6-0781-4783-9dbe-0edec8e2fa0d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAcquiredDuringPeriod_3ef8df9f-41b2-43c6-81a7-880c6b51ab62" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAcquiredDuringPeriod"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillRollForward_8daf5964-cf20-4e30-a025-65efd5eb35e5" xlink:to="loc_us-gaap_GoodwillAcquiredDuringPeriod_3ef8df9f-41b2-43c6-81a7-880c6b51ab62" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillOtherIncreaseDecrease_fd9286ec-4930-4757-8789-acb71be7b3c5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillOtherIncreaseDecrease"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillRollForward_8daf5964-cf20-4e30-a025-65efd5eb35e5" xlink:to="loc_us-gaap_GoodwillOtherIncreaseDecrease_fd9286ec-4930-4757-8789-acb71be7b3c5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillGross_7d67f399-32d9-4104-bfd8-8683a938eafa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillGross"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillRollForward_8daf5964-cf20-4e30-a025-65efd5eb35e5" xlink:to="loc_us-gaap_GoodwillGross_7d67f399-32d9-4104-bfd8-8683a938eafa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillImpairedAccumulatedImpairmentLoss_7d8422c9-3b61-4a87-aa3d-1ba71d54573b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillImpairedAccumulatedImpairmentLoss"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillLineItems_84fdb7e7-3bb0-4439-9d71-6e39546f1b41" xlink:to="loc_us-gaap_GoodwillImpairedAccumulatedImpairmentLoss_7d8422c9-3b61-4a87-aa3d-1ba71d54573b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_c842cb06-41d7-4c9a-a095-6013c7d30b8e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillLineItems_84fdb7e7-3bb0-4439-9d71-6e39546f1b41" xlink:to="loc_us-gaap_Goodwill_c842cb06-41d7-4c9a-a095-6013c7d30b8e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/GoodwillandIntangiblesAdditionalInformationDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#GoodwillandIntangiblesAdditionalInformationDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/GoodwillandIntangiblesAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_f9cf7f96-523d-480f-9f7f-937a17a62155" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillImpairmentLoss_865848ac-e7a5-42de-9754-97a9f251b4f1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillImpairmentLoss"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_f9cf7f96-523d-480f-9f7f-937a17a62155" xlink:to="loc_us-gaap_GoodwillImpairmentLoss_865848ac-e7a5-42de-9754-97a9f251b4f1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentOfIntangibleAssetsFinitelived_41d43519-7cc5-46c0-8298-5cc6343b0188" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOfIntangibleAssetsFinitelived"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_f9cf7f96-523d-480f-9f7f-937a17a62155" xlink:to="loc_us-gaap_ImpairmentOfIntangibleAssetsFinitelived_41d43519-7cc5-46c0-8298-5cc6343b0188" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsPeriodIncreaseDecrease_58cd6aa1-9289-4e0d-bd51-23d0ac3ee9ee" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsPeriodIncreaseDecrease"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_f9cf7f96-523d-480f-9f7f-937a17a62155" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsPeriodIncreaseDecrease_58cd6aa1-9289-4e0d-bd51-23d0ac3ee9ee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_2c471ed1-aa10-4741-986a-2cf9a1faeb4b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_f9cf7f96-523d-480f-9f7f-937a17a62155" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_2c471ed1-aa10-4741-986a-2cf9a1faeb4b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets_c67eeed9-52fb-46f1-baf5-97c45e029fae" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfIntangibleAssets"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_f9cf7f96-523d-480f-9f7f-937a17a62155" xlink:to="loc_us-gaap_AmortizationOfIntangibleAssets_c67eeed9-52fb-46f1-baf5-97c45e029fae" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillPurchaseAccountingAdjustments_a083ae8f-8892-49e3-95de-3d8b01dac0ab" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillPurchaseAccountingAdjustments"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_f9cf7f96-523d-480f-9f7f-937a17a62155" xlink:to="loc_us-gaap_GoodwillPurchaseAccountingAdjustments_a083ae8f-8892-49e3-95de-3d8b01dac0ab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfGoodwillTable_a2eeec97-47da-4088-be6d-0849ffd272b8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfGoodwillTable"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_f9cf7f96-523d-480f-9f7f-937a17a62155" xlink:to="loc_us-gaap_ScheduleOfGoodwillTable_a2eeec97-47da-4088-be6d-0849ffd272b8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementAxis_a7257fae-5a21-400b-9e3a-7e85f6b5fbde" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_a2eeec97-47da-4088-be6d-0849ffd272b8" xlink:to="loc_srt_RestatementAxis_a7257fae-5a21-400b-9e3a-7e85f6b5fbde" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementDomain_f5170c2a-da09-492f-ba68-c836d1bebf03" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RestatementAxis_a7257fae-5a21-400b-9e3a-7e85f6b5fbde" xlink:to="loc_srt_RestatementDomain_f5170c2a-da09-492f-ba68-c836d1bebf03" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementAdjustmentMember_ded8a662-0fda-4ddc-8b3f-a4013c01a0d1" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementAdjustmentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RestatementDomain_f5170c2a-da09-492f-ba68-c836d1bebf03" xlink:to="loc_srt_RestatementAdjustmentMember_ded8a662-0fda-4ddc-8b3f-a4013c01a0d1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_ee86daab-8afa-4df0-85b0-dc48f833486e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_a2eeec97-47da-4088-be6d-0849ffd272b8" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_ee86daab-8afa-4df0-85b0-dc48f833486e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_f6e908ed-8999-4fba-a0da-2028e4ae3cf9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_ee86daab-8afa-4df0-85b0-dc48f833486e" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_f6e908ed-8999-4fba-a0da-2028e4ae3cf9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DenisonGlassAndMirrorMember_749d69f0-33cf-4a87-9ec8-a3d130847240" xlink:href="ibp-20221231.xsd#ibp_DenisonGlassAndMirrorMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_f6e908ed-8999-4fba-a0da-2028e4ae3cf9" xlink:to="loc_ibp_DenisonGlassAndMirrorMember_749d69f0-33cf-4a87-9ec8-a3d130847240" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillLineItems_bbc1274b-86ea-4aae-8d8d-384d87130f4f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_a2eeec97-47da-4088-be6d-0849ffd272b8" xlink:to="loc_us-gaap_GoodwillLineItems_bbc1274b-86ea-4aae-8d8d-384d87130f4f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_e26a6849-2708-4d47-8347-bc00a09ece4f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillLineItems_bbc1274b-86ea-4aae-8d8d-384d87130f4f" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_e26a6849-2708-4d47-8347-bc00a09ece4f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfOperatingSegments_2e074cb8-fde0-4514-ab9b-3fd42b323733" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NumberOfOperatingSegments"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillLineItems_bbc1274b-86ea-4aae-8d8d-384d87130f4f" xlink:to="loc_us-gaap_NumberOfOperatingSegments_2e074cb8-fde0-4514-ab9b-3fd42b323733" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfReportingUnits_f2c070a5-af71-4afc-b2d4-2390d960ab65" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NumberOfReportingUnits"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillLineItems_bbc1274b-86ea-4aae-8d8d-384d87130f4f" xlink:to="loc_us-gaap_NumberOfReportingUnits_f2c070a5-af71-4afc-b2d4-2390d960ab65" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_b1d76fb5-4bcc-410c-a67c-92ffaaffae22" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_d8cc63d3-98eb-41c3-89b4-97718a089d9b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_b1d76fb5-4bcc-410c-a67c-92ffaaffae22" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_d8cc63d3-98eb-41c3-89b4-97718a089d9b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_52fe551b-6cc5-4e06-be30-7c2776f01739" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_d8cc63d3-98eb-41c3-89b4-97718a089d9b" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_52fe551b-6cc5-4e06-be30-7c2776f01739" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_ae324988-283f-4f3d-b4a7-ebed0bfce21a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_52fe551b-6cc5-4e06-be30-7c2776f01739" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_ae324988-283f-4f3d-b4a7-ebed0bfce21a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerRelationshipsMember_73120f1c-9548-4b7a-b48f-35fbb27ab9e2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerRelationshipsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_ae324988-283f-4f3d-b4a7-ebed0bfce21a" xlink:to="loc_us-gaap_CustomerRelationshipsMember_73120f1c-9548-4b7a-b48f-35fbb27ab9e2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NoncompeteAgreementsMember_8b93ff17-b358-4c1e-b085-ac0fdb77552a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncompeteAgreementsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_ae324988-283f-4f3d-b4a7-ebed0bfce21a" xlink:to="loc_us-gaap_NoncompeteAgreementsMember_8b93ff17-b358-4c1e-b085-ac0fdb77552a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TrademarksAndTradeNamesMember_7540529f-c8c5-4322-933c-e295e07f8d1d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrademarksAndTradeNamesMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_ae324988-283f-4f3d-b4a7-ebed0bfce21a" xlink:to="loc_us-gaap_TrademarksAndTradeNamesMember_7540529f-c8c5-4322-933c-e295e07f8d1d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrderOrProductionBacklogMember_eeeae35a-927f-4d09-ac57-88d6709bae6a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OrderOrProductionBacklogMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_ae324988-283f-4f3d-b4a7-ebed0bfce21a" xlink:to="loc_us-gaap_OrderOrProductionBacklogMember_eeeae35a-927f-4d09-ac57-88d6709bae6a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_e6eb8fb3-0f7e-496a-a7f2-6e8d3a843b4e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_d8cc63d3-98eb-41c3-89b4-97718a089d9b" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_e6eb8fb3-0f7e-496a-a7f2-6e8d3a843b4e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_835d4eac-cd68-4247-8883-0ae60cb47fa3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsGross"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_e6eb8fb3-0f7e-496a-a7f2-6e8d3a843b4e" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_835d4eac-cd68-4247-8883-0ae60cb47fa3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_059ee1a9-7f73-484f-81de-c41a7f0ceac8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_e6eb8fb3-0f7e-496a-a7f2-6e8d3a843b4e" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_059ee1a9-7f73-484f-81de-c41a7f0ceac8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_af049177-6165-45c5-920e-1b82ad464109" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_e6eb8fb3-0f7e-496a-a7f2-6e8d3a843b4e" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_af049177-6165-45c5-920e-1b82ad464109" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofEstimatedAggregateAnnualAmortizationDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#GoodwillandIntangiblesScheduleofEstimatedAggregateAnnualAmortizationDetails"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofEstimatedAggregateAnnualAmortizationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_766f81a6-da5d-4d32-bc4d-df9f16664f0b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract_b4916d5c-0ddf-49e5-9423-e5779ba32e79" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_766f81a6-da5d-4d32-bc4d-df9f16664f0b" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract_b4916d5c-0ddf-49e5-9423-e5779ba32e79" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_9cab0663-c596-4688-99a5-91b9832a8132" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract_b4916d5c-0ddf-49e5-9423-e5779ba32e79" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_9cab0663-c596-4688-99a5-91b9832a8132" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_3c23f2d0-4373-4c12-90cf-4f1ae9ce94f9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract_b4916d5c-0ddf-49e5-9423-e5779ba32e79" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_3c23f2d0-4373-4c12-90cf-4f1ae9ce94f9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_8a37084a-7415-45ad-9d3f-4cd3c6e82b3c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract_b4916d5c-0ddf-49e5-9423-e5779ba32e79" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_8a37084a-7415-45ad-9d3f-4cd3c6e82b3c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_e200676d-6402-4e1b-bdc5-36ee17194423" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract_b4916d5c-0ddf-49e5-9423-e5779ba32e79" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_e200676d-6402-4e1b-bdc5-36ee17194423" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_5985542c-00c7-49f3-8c9c-42510ce7fa4c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract_b4916d5c-0ddf-49e5-9423-e5779ba32e79" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_5985542c-00c7-49f3-8c9c-42510ce7fa4c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_05604623-78bc-4556-a4b0-1fc35cbac877" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract_b4916d5c-0ddf-49e5-9423-e5779ba32e79" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_05604623-78bc-4556-a4b0-1fc35cbac877" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/LongtermDebtScheduleofDebtDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#LongtermDebtScheduleofDebtDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/LongtermDebtScheduleofDebtDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract_ac5b161e-6d44-4c83-8e31-e1ff61480ece" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_d5794c2c-1818-414d-a89c-df77cd348f29" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_ac5b161e-6d44-4c83-8e31-e1ff61480ece" xlink:to="loc_us-gaap_DebtInstrumentTable_d5794c2c-1818-414d-a89c-df77cd348f29" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeAxis_4a3c940c-dc94-4555-a560-3e488f06c027" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_d5794c2c-1818-414d-a89c-df77cd348f29" xlink:to="loc_us-gaap_LongtermDebtTypeAxis_4a3c940c-dc94-4555-a560-3e488f06c027" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_86186ebf-7ce1-4183-b552-b45728c9eed0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_4a3c940c-dc94-4555-a560-3e488f06c027" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_86186ebf-7ce1-4183-b552-b45728c9eed0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SeniorNotesMember_c3fe47d6-dac0-410a-91d4-49a15e464435" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SeniorNotesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_86186ebf-7ce1-4183-b552-b45728c9eed0" xlink:to="loc_us-gaap_SeniorNotesMember_c3fe47d6-dac0-410a-91d4-49a15e464435" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MediumTermNotesMember_bb574ba3-f2ea-47e4-8786-9b5a6ae3f7ad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MediumTermNotesMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_86186ebf-7ce1-4183-b552-b45728c9eed0" xlink:to="loc_us-gaap_MediumTermNotesMember_bb574ba3-f2ea-47e4-8786-9b5a6ae3f7ad" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NotesPayableOtherPayablesMember_79b985ad-3f7e-4a1c-8e71-5566f80e0000" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NotesPayableOtherPayablesMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_86186ebf-7ce1-4183-b552-b45728c9eed0" xlink:to="loc_us-gaap_NotesPayableOtherPayablesMember_79b985ad-3f7e-4a1c-8e71-5566f80e0000" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_d699a4bd-02fa-4418-a9fa-3f2e75ed9bce" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_d5794c2c-1818-414d-a89c-df77cd348f29" xlink:to="loc_us-gaap_DebtInstrumentAxis_d699a4bd-02fa-4418-a9fa-3f2e75ed9bce" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_c09fe2e3-6a7a-46df-8f56-dd6e74f48860" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_d699a4bd-02fa-4418-a9fa-3f2e75ed9bce" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_c09fe2e3-6a7a-46df-8f56-dd6e74f48860" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember_67028ee1-1735-4377-93dd-9d7f2d57f6a5" xlink:href="ibp-20221231.xsd#ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_c09fe2e3-6a7a-46df-8f56-dd6e74f48860" xlink:to="loc_ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember_67028ee1-1735-4377-93dd-9d7f2d57f6a5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_TermLoanAgreementMember_1c87d0b4-bfa2-4032-8d2e-dbf47af01f00" xlink:href="ibp-20221231.xsd#ibp_TermLoanAgreementMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_c09fe2e3-6a7a-46df-8f56-dd6e74f48860" xlink:to="loc_ibp_TermLoanAgreementMember_1c87d0b4-bfa2-4032-8d2e-dbf47af01f00" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_VehicleAndEquipmentNotesMember_9a507c76-c682-4852-9eb2-b2b57ed28598" xlink:href="ibp-20221231.xsd#ibp_VehicleAndEquipmentNotesMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_c09fe2e3-6a7a-46df-8f56-dd6e74f48860" xlink:to="loc_ibp_VehicleAndEquipmentNotesMember_9a507c76-c682-4852-9eb2-b2b57ed28598" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_30f13c3f-c7b2-4e2d-a687-9f01a8227532" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_d5794c2c-1818-414d-a89c-df77cd348f29" xlink:to="loc_srt_RangeAxis_30f13c3f-c7b2-4e2d-a687-9f01a8227532" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_12247728-7095-4cd2-a29f-58f336032ecf" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_30f13c3f-c7b2-4e2d-a687-9f01a8227532" xlink:to="loc_srt_RangeMember_12247728-7095-4cd2-a29f-58f336032ecf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_1214dc0e-4503-4660-9651-3912f8a6003b" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_12247728-7095-4cd2-a29f-58f336032ecf" xlink:to="loc_srt_MinimumMember_1214dc0e-4503-4660-9651-3912f8a6003b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_da9c885f-7068-49b9-bffd-82550d712a79" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_12247728-7095-4cd2-a29f-58f336032ecf" xlink:to="loc_srt_MaximumMember_da9c885f-7068-49b9-bffd-82550d712a79" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_6b4bdcf6-bb93-4205-b9b5-d9ee8fbfbc40" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_d5794c2c-1818-414d-a89c-df77cd348f29" xlink:to="loc_us-gaap_DebtInstrumentLineItems_6b4bdcf6-bb93-4205-b9b5-d9ee8fbfbc40" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebt_b926d999-90ee-47ea-8b97-9217b85f146b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebt"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6b4bdcf6-bb93-4205-b9b5-d9ee8fbfbc40" xlink:to="loc_us-gaap_LongTermDebt_b926d999-90ee-47ea-8b97-9217b85f146b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtCurrent_fbb36697-78ba-4657-872a-514b2ae3819d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6b4bdcf6-bb93-4205-b9b5-d9ee8fbfbc40" xlink:to="loc_us-gaap_LongTermDebtCurrent_fbb36697-78ba-4657-872a-514b2ae3819d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtNoncurrent_801aa748-6e95-4e27-b1c2-d2280676de64" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtNoncurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6b4bdcf6-bb93-4205-b9b5-d9ee8fbfbc40" xlink:to="loc_us-gaap_LongTermDebtNoncurrent_801aa748-6e95-4e27-b1c2-d2280676de64" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentUnamortizedDiscount_063d7b65-2903-4151-9808-a7f53d7643bb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentUnamortizedDiscount"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6b4bdcf6-bb93-4205-b9b5-d9ee8fbfbc40" xlink:to="loc_us-gaap_DebtInstrumentUnamortizedDiscount_063d7b65-2903-4151-9808-a7f53d7643bb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_9ccd2b96-634f-4512-8942-8e12fc98d7de" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6b4bdcf6-bb93-4205-b9b5-d9ee8fbfbc40" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_9ccd2b96-634f-4512-8942-8e12fc98d7de" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/LongTermDebtScheduleofMaturitiesofLongTermDebtDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#LongTermDebtScheduleofMaturitiesofLongTermDebtDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/LongTermDebtScheduleofMaturitiesofLongTermDebtDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract_25f3f937-6bda-46fe-85f7-05b5947eeccf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_7a0e2a3e-ebed-449c-890d-92abe29ce13c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_25f3f937-6bda-46fe-85f7-05b5947eeccf" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_7a0e2a3e-ebed-449c-890d-92abe29ce13c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_90960877-9496-4de8-8cfc-4e045884614e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_25f3f937-6bda-46fe-85f7-05b5947eeccf" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_90960877-9496-4de8-8cfc-4e045884614e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_2aa29990-c39c-47e5-a62b-ab15ad7a4427" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_25f3f937-6bda-46fe-85f7-05b5947eeccf" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_2aa29990-c39c-47e5-a62b-ab15ad7a4427" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_96521510-afe6-4fae-86fd-9627fb13d161" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_25f3f937-6bda-46fe-85f7-05b5947eeccf" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_96521510-afe6-4fae-86fd-9627fb13d161" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive_bab3b99f-e64b-410b-96ee-d53c4cea3ec6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_25f3f937-6bda-46fe-85f7-05b5947eeccf" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive_bab3b99f-e64b-410b-96ee-d53c4cea3ec6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive_4acdf92a-c84e-42f6-8178-4db45e682414" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_25f3f937-6bda-46fe-85f7-05b5947eeccf" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive_4acdf92a-c84e-42f6-8178-4db45e682414" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#LongtermDebtAdditionalInformationDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract_68fc688b-2504-4fb1-a1db-cb034bf06fdc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_47eb4426-cad7-4d2b-a3d9-9c8b694e2a2e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_68fc688b-2504-4fb1-a1db-cb034bf06fdc" xlink:to="loc_us-gaap_DebtInstrumentTable_47eb4426-cad7-4d2b-a3d9-9c8b694e2a2e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_67cf0d27-4aac-4c4a-a49f-a3f4fcdf8166" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_47eb4426-cad7-4d2b-a3d9-9c8b694e2a2e" xlink:to="loc_us-gaap_DebtInstrumentAxis_67cf0d27-4aac-4c4a-a49f-a3f4fcdf8166" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_02fb0446-ee91-4a32-9d6f-091501674daf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_67cf0d27-4aac-4c4a-a49f-a3f4fcdf8166" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_02fb0446-ee91-4a32-9d6f-091501674daf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember_26dc0f6a-f428-495f-9589-1180fed53717" xlink:href="ibp-20221231.xsd#ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_02fb0446-ee91-4a32-9d6f-091501674daf" xlink:to="loc_ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember_26dc0f6a-f428-495f-9589-1180fed53717" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_AblCreditAgreementMember_18dc0c53-99dd-4726-8e98-5f9c8bcef92b" xlink:href="ibp-20221231.xsd#ibp_AblCreditAgreementMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_02fb0446-ee91-4a32-9d6f-091501674daf" xlink:to="loc_ibp_AblCreditAgreementMember_18dc0c53-99dd-4726-8e98-5f9c8bcef92b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_TermLoanMember_447c6cc0-7f0b-43ac-8b86-8a60f8bb7707" xlink:href="ibp-20221231.xsd#ibp_TermLoanMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_02fb0446-ee91-4a32-9d6f-091501674daf" xlink:to="loc_ibp_TermLoanMember_447c6cc0-7f0b-43ac-8b86-8a60f8bb7707" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_b8178595-e728-4364-8b3c-4d9d995c2967" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_47eb4426-cad7-4d2b-a3d9-9c8b694e2a2e" xlink:to="loc_us-gaap_CreditFacilityAxis_b8178595-e728-4364-8b3c-4d9d995c2967" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_e6492340-df8d-4219-a1d9-973165f6118e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityAxis_b8178595-e728-4364-8b3c-4d9d995c2967" xlink:to="loc_us-gaap_CreditFacilityDomain_e6492340-df8d-4219-a1d9-973165f6118e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevolvingCreditFacilityMember_f8c37ac7-e099-4b9a-96a9-dc56faa33a05" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevolvingCreditFacilityMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_e6492340-df8d-4219-a1d9-973165f6118e" xlink:to="loc_us-gaap_RevolvingCreditFacilityMember_f8c37ac7-e099-4b9a-96a9-dc56faa33a05" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LetterOfCreditMember_ce88670f-96f2-4ac0-8513-d72f44d45e96" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LetterOfCreditMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_e6492340-df8d-4219-a1d9-973165f6118e" xlink:to="loc_us-gaap_LetterOfCreditMember_ce88670f-96f2-4ac0-8513-d72f44d45e96" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_IncrementalRevolvingCreditFacilityMember_c16e2804-3e00-45e4-ad15-a9475415488e" xlink:href="ibp-20221231.xsd#ibp_IncrementalRevolvingCreditFacilityMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_e6492340-df8d-4219-a1d9-973165f6118e" xlink:to="loc_ibp_IncrementalRevolvingCreditFacilityMember_c16e2804-3e00-45e4-ad15-a9475415488e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_SwingLineLoansMember_ba0e1031-caaf-409c-a15f-45bfcaa65253" xlink:href="ibp-20221231.xsd#ibp_SwingLineLoansMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_e6492340-df8d-4219-a1d9-973165f6118e" xlink:to="loc_ibp_SwingLineLoansMember_ba0e1031-caaf-409c-a15f-45bfcaa65253" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_MasterLoanAgreementMember_fcdaa2b2-fd29-4277-8d1c-1d914101f7ff" xlink:href="ibp-20221231.xsd#ibp_MasterLoanAgreementMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_e6492340-df8d-4219-a1d9-973165f6118e" xlink:to="loc_ibp_MasterLoanAgreementMember_fcdaa2b2-fd29-4277-8d1c-1d914101f7ff" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeAxis_9673c399-3768-4d91-a107-08688cd47cc7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_47eb4426-cad7-4d2b-a3d9-9c8b694e2a2e" xlink:to="loc_us-gaap_LongtermDebtTypeAxis_9673c399-3768-4d91-a107-08688cd47cc7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_c5487ae5-def4-4add-9edb-21c2927a7212" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_9673c399-3768-4d91-a107-08688cd47cc7" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_c5487ae5-def4-4add-9edb-21c2927a7212" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SeniorNotesMember_e3eb4f60-7947-4fe6-8270-364bfd0bd654" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SeniorNotesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_c5487ae5-def4-4add-9edb-21c2927a7212" xlink:to="loc_us-gaap_SeniorNotesMember_e3eb4f60-7947-4fe6-8270-364bfd0bd654" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_TermLoanMember_3a49f4a6-d3a6-41e7-bff7-af2d55a8b3c0" xlink:href="ibp-20221231.xsd#ibp_TermLoanMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_c5487ae5-def4-4add-9edb-21c2927a7212" xlink:to="loc_ibp_TermLoanMember_3a49f4a6-d3a6-41e7-bff7-af2d55a8b3c0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateAxis_2799b51c-52d2-4aae-b5b1-a5451c5715a0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_47eb4426-cad7-4d2b-a3d9-9c8b694e2a2e" xlink:to="loc_us-gaap_VariableRateAxis_2799b51c-52d2-4aae-b5b1-a5451c5715a0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateDomain_44a6926e-8a9d-4b2a-8a6f-6b19169bca93" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VariableRateAxis_2799b51c-52d2-4aae-b5b1-a5451c5715a0" xlink:to="loc_us-gaap_VariableRateDomain_44a6926e-8a9d-4b2a-8a6f-6b19169bca93" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LondonInterbankOfferedRateLIBORMember_7d20b6e4-a098-4f5f-9707-da31ab1da008" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LondonInterbankOfferedRateLIBORMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VariableRateDomain_44a6926e-8a9d-4b2a-8a6f-6b19169bca93" xlink:to="loc_us-gaap_LondonInterbankOfferedRateLIBORMember_7d20b6e4-a098-4f5f-9707-da31ab1da008" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EurodollarMember_26f0e914-1b9f-47a9-afea-62c233c36d36" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EurodollarMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VariableRateDomain_44a6926e-8a9d-4b2a-8a6f-6b19169bca93" xlink:to="loc_us-gaap_EurodollarMember_26f0e914-1b9f-47a9-afea-62c233c36d36" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BaseRateMember_eda1f5e7-d756-4eb3-bb58-f7f45579fb9b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BaseRateMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VariableRateDomain_44a6926e-8a9d-4b2a-8a6f-6b19169bca93" xlink:to="loc_us-gaap_BaseRateMember_eda1f5e7-d756-4eb3-bb58-f7f45579fb9b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_7c7895c0-69ed-4ed9-87a3-08231c7ef6cb" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_47eb4426-cad7-4d2b-a3d9-9c8b694e2a2e" xlink:to="loc_srt_RangeAxis_7c7895c0-69ed-4ed9-87a3-08231c7ef6cb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_b9461c69-40a3-42df-ae79-438e57446d45" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_7c7895c0-69ed-4ed9-87a3-08231c7ef6cb" xlink:to="loc_srt_RangeMember_b9461c69-40a3-42df-ae79-438e57446d45" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_22d75e58-76f8-4d6b-8b6c-f03399259fc6" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_b9461c69-40a3-42df-ae79-438e57446d45" xlink:to="loc_srt_MinimumMember_22d75e58-76f8-4d6b-8b6c-f03399259fc6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_9b5be8e7-d466-42a9-9512-21fef7d2664b" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_b9461c69-40a3-42df-ae79-438e57446d45" xlink:to="loc_srt_MaximumMember_9b5be8e7-d466-42a9-9512-21fef7d2664b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermDebtTypeAxis_05bbc376-bb4c-49e3-84fa-cef5476859ce" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShortTermDebtTypeAxis"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_47eb4426-cad7-4d2b-a3d9-9c8b694e2a2e" xlink:to="loc_us-gaap_ShortTermDebtTypeAxis_05bbc376-bb4c-49e3-84fa-cef5476859ce" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermDebtTypeDomain_31f086d3-f1b7-40bf-9786-848b97da7bb2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShortTermDebtTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShortTermDebtTypeAxis_05bbc376-bb4c-49e3-84fa-cef5476859ce" xlink:to="loc_us-gaap_ShortTermDebtTypeDomain_31f086d3-f1b7-40bf-9786-848b97da7bb2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LetterOfCreditMember_d7d6dbb1-3864-4b77-a046-728bfe5d1578" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LetterOfCreditMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShortTermDebtTypeDomain_31f086d3-f1b7-40bf-9786-848b97da7bb2" xlink:to="loc_us-gaap_LetterOfCreditMember_d7d6dbb1-3864-4b77-a046-728bfe5d1578" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseContractualTermAxis_e235607d-27e1-4d5d-89cc-d609973c6de4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseContractualTermAxis"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_47eb4426-cad7-4d2b-a3d9-9c8b694e2a2e" xlink:to="loc_us-gaap_LeaseContractualTermAxis_e235607d-27e1-4d5d-89cc-d609973c6de4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseContractualTermDomain_0704c2c6-b991-44ba-bf8a-08c4187b9879" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseContractualTermDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeaseContractualTermAxis_e235607d-27e1-4d5d-89cc-d609973c6de4" xlink:to="loc_us-gaap_LeaseContractualTermDomain_0704c2c6-b991-44ba-bf8a-08c4187b9879" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_VehicleAndEquipmentNotesMember_73c12909-6cc9-4394-88d6-c4837db0474b" xlink:href="ibp-20221231.xsd#ibp_VehicleAndEquipmentNotesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeaseContractualTermDomain_0704c2c6-b991-44ba-bf8a-08c4187b9879" xlink:to="loc_ibp_VehicleAndEquipmentNotesMember_73c12909-6cc9-4394-88d6-c4837db0474b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_47eb4426-cad7-4d2b-a3d9-9c8b694e2a2e" xlink:to="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_48f8351b-7692-4dea-8e55-2c779adec395" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_48f8351b-7692-4dea-8e55-2c779adec395" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount_8dcb4b25-62a5-40c2-a98d-82e5e10d4255" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentFaceAmount"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_us-gaap_DebtInstrumentFaceAmount_8dcb4b25-62a5-40c2-a98d-82e5e10d4255" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromDebtNetOfIssuanceCosts_2a95ebc9-f9fe-438a-93ad-d31cfd17fc47" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromDebtNetOfIssuanceCosts"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_us-gaap_ProceedsFromDebtNetOfIssuanceCosts_2a95ebc9-f9fe-438a-93ad-d31cfd17fc47" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DebtInstrumentCovenantMarketCapitalizationThreshold_856e8682-07fb-43d5-85f9-78634614fa76" xlink:href="ibp-20221231.xsd#ibp_DebtInstrumentCovenantMarketCapitalizationThreshold"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_ibp_DebtInstrumentCovenantMarketCapitalizationThreshold_856e8682-07fb-43d5-85f9-78634614fa76" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTerm_c24c2240-dd1c-4580-a4c4-ef7eb4b53dc7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTerm"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_us-gaap_DebtInstrumentTerm_c24c2240-dd1c-4580-a4c4-ef7eb4b53dc7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentPeriodicPaymentPrincipal_cfd05ab2-a68c-4de3-ad4c-81be3ceddef9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentPeriodicPaymentPrincipal"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_us-gaap_DebtInstrumentPeriodicPaymentPrincipal_cfd05ab2-a68c-4de3-ad4c-81be3ceddef9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_c0f13a70-6cd0-4df3-b9ea-9866aaea0df2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_c0f13a70-6cd0-4df3-b9ea-9866aaea0df2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredFinanceCostsNet_f80ca899-329a-4a22-a30f-17f4db5b0c4c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredFinanceCostsNet"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_us-gaap_DeferredFinanceCostsNet_f80ca899-329a-4a22-a30f-17f4db5b0c4c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds_e76222e3-32d1-4edd-b350-9d3bc8f08532" xlink:href="ibp-20221231.xsd#ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds_e76222e3-32d1-4edd-b350-9d3bc8f08532" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds_4a63dba0-b6aa-49f8-b832-406817900d1b" xlink:href="ibp-20221231.xsd#ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds_4a63dba0-b6aa-49f8-b832-406817900d1b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds2_9ebf3ae5-d40b-4e65-a1a2-46a9699bb27c" xlink:href="ibp-20221231.xsd#ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds2"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds2_9ebf3ae5-d40b-4e65-a1a2-46a9699bb27c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds2_78fd8ff4-147e-4316-88f1-9ca7148680f6" xlink:href="ibp-20221231.xsd#ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds2"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds2_78fd8ff4-147e-4316-88f1-9ca7148680f6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DebtInstrumentMaximumCashProceeds_052fde21-2a3d-4f9a-9e30-cd34448ca438" xlink:href="ibp-20221231.xsd#ibp_DebtInstrumentMaximumCashProceeds"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_ibp_DebtInstrumentMaximumCashProceeds_052fde21-2a3d-4f9a-9e30-cd34448ca438" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_120fd735-7c32-47ae-8090-f6ed6f4202c1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_120fd735-7c32-47ae-8090-f6ed6f4202c1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FixedChargeCoverageRatio_0cd3e978-d0b4-4974-88a7-e184c57049b5" xlink:href="ibp-20221231.xsd#ibp_FixedChargeCoverageRatio"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_ibp_FixedChargeCoverageRatio_0cd3e978-d0b4-4974-88a7-e184c57049b5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_e3a4532d-5c87-4284-80a8-292c7c05a8fc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_e3a4532d-5c87-4284-80a8-292c7c05a8fc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_b22ea7db-4ea2-4fec-b5d7-0a6635c34c5e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization"/>
    <link:presentationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_b22ea7db-4ea2-4fec-b5d7-0a6635c34c5e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_0e9a0379-fa55-476e-86d1-02cd89c2187c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization"/>
    <link:presentationArc order="18" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_0e9a0379-fa55-476e-86d1-02cd89c2187c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_LineOfCreditFacilityAccordionFeatureIncreaseLimit_1f69d3be-9009-43ed-a174-e4bf33cc66df" xlink:href="ibp-20221231.xsd#ibp_LineOfCreditFacilityAccordionFeatureIncreaseLimit"/>
    <link:presentationArc order="19" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_be2b39f9-e8aa-4063-a2fb-55a49aae071e" xlink:to="loc_ibp_LineOfCreditFacilityAccordionFeatureIncreaseLimit_1f69d3be-9009-43ed-a174-e4bf33cc66df" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_6010dea7-294c-4778-aee7-3562745ea681" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_LeaseAssetsAbstract_27f53508-2b2b-4202-b428-6e56120d4131" xlink:href="ibp-20221231.xsd#ibp_LeaseAssetsAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_6010dea7-294c-4778-aee7-3562745ea681" xlink:to="loc_ibp_LeaseAssetsAbstract_27f53508-2b2b-4202-b428-6e56120d4131" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_NonCurrentLeaseAssetsAbstract_f1a88db6-0841-4e30-b3af-13013f1aba87" xlink:href="ibp-20221231.xsd#ibp_NonCurrentLeaseAssetsAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_LeaseAssetsAbstract_27f53508-2b2b-4202-b428-6e56120d4131" xlink:to="loc_ibp_NonCurrentLeaseAssetsAbstract_f1a88db6-0841-4e30-b3af-13013f1aba87" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_c88c2ebb-1219-4f9b-97e5-ef2bd5472fa6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_NonCurrentLeaseAssetsAbstract_f1a88db6-0841-4e30-b3af-13013f1aba87" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_c88c2ebb-1219-4f9b-97e5-ef2bd5472fa6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseRightOfUseAsset_17f45d8d-69b5-4630-9e64-c921d9428ddc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseRightOfUseAsset"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_NonCurrentLeaseAssetsAbstract_f1a88db6-0841-4e30-b3af-13013f1aba87" xlink:to="loc_us-gaap_FinanceLeaseRightOfUseAsset_17f45d8d-69b5-4630-9e64-c921d9428ddc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_LeaseAssets_7e60dcc8-f32e-4530-ba46-e7902b10bf16" xlink:href="ibp-20221231.xsd#ibp_LeaseAssets"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_NonCurrentLeaseAssetsAbstract_f1a88db6-0841-4e30-b3af-13013f1aba87" xlink:to="loc_ibp_LeaseAssets_7e60dcc8-f32e-4530-ba46-e7902b10bf16" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList_019c3cad-61e4-4433-b58e-e87a8138df35" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_NonCurrentLeaseAssetsAbstract_f1a88db6-0841-4e30-b3af-13013f1aba87" xlink:to="loc_us-gaap_FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList_019c3cad-61e4-4433-b58e-e87a8138df35" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_LeaseLiabilitiesAbstract_e5ad2ca9-4afe-46e0-9c83-4bca957064eb" xlink:href="ibp-20221231.xsd#ibp_LeaseLiabilitiesAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_6010dea7-294c-4778-aee7-3562745ea681" xlink:to="loc_ibp_LeaseLiabilitiesAbstract_e5ad2ca9-4afe-46e0-9c83-4bca957064eb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CurrentLeaseLiabilitiesAbstract_3a70d10e-619e-40e4-a0a0-711c1f8006ff" xlink:href="ibp-20221231.xsd#ibp_CurrentLeaseLiabilitiesAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_LeaseLiabilitiesAbstract_e5ad2ca9-4afe-46e0-9c83-4bca957064eb" xlink:to="loc_ibp_CurrentLeaseLiabilitiesAbstract_3a70d10e-619e-40e4-a0a0-711c1f8006ff" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_1b7a941e-1459-48a5-8604-60f8b6df05f6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_CurrentLeaseLiabilitiesAbstract_3a70d10e-619e-40e4-a0a0-711c1f8006ff" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_1b7a941e-1459-48a5-8604-60f8b6df05f6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityCurrent_75c59462-1ec9-4d88-a800-8cea268fa00e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_CurrentLeaseLiabilitiesAbstract_3a70d10e-619e-40e4-a0a0-711c1f8006ff" xlink:to="loc_us-gaap_FinanceLeaseLiabilityCurrent_75c59462-1ec9-4d88-a800-8cea268fa00e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_NoncurrentLeaseLiabilitiesAbstract_8ecacb9b-7f38-4ac4-9eac-e97cfb08d124" xlink:href="ibp-20221231.xsd#ibp_NoncurrentLeaseLiabilitiesAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_LeaseLiabilitiesAbstract_e5ad2ca9-4afe-46e0-9c83-4bca957064eb" xlink:to="loc_ibp_NoncurrentLeaseLiabilitiesAbstract_8ecacb9b-7f38-4ac4-9eac-e97cfb08d124" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_076a8f08-ff59-4bba-b54a-5565c9a7e958" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_NoncurrentLeaseLiabilitiesAbstract_8ecacb9b-7f38-4ac4-9eac-e97cfb08d124" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_076a8f08-ff59-4bba-b54a-5565c9a7e958" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityNoncurrent_c633280c-fa0f-451b-9cb2-e9477d5496aa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityNoncurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_NoncurrentLeaseLiabilitiesAbstract_8ecacb9b-7f38-4ac4-9eac-e97cfb08d124" xlink:to="loc_us-gaap_FinanceLeaseLiabilityNoncurrent_c633280c-fa0f-451b-9cb2-e9477d5496aa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_LeaseLiabilities_e34f9b50-fca3-445e-b1d0-efa40ee7335a" xlink:href="ibp-20221231.xsd#ibp_LeaseLiabilities"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_NoncurrentLeaseLiabilitiesAbstract_8ecacb9b-7f38-4ac4-9eac-e97cfb08d124" xlink:to="loc_ibp_LeaseLiabilities_e34f9b50-fca3-445e-b1d0-efa40ee7335a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_WeightedAverageRemainingLeaseTermOfOperatingFinanceLeasesAbstract_36fdad4b-0121-41d2-9697-270c8fdb2183" xlink:href="ibp-20221231.xsd#ibp_WeightedAverageRemainingLeaseTermOfOperatingFinanceLeasesAbstract"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_6010dea7-294c-4778-aee7-3562745ea681" xlink:to="loc_ibp_WeightedAverageRemainingLeaseTermOfOperatingFinanceLeasesAbstract_36fdad4b-0121-41d2-9697-270c8fdb2183" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_25737746-ebe2-4cbb-83df-a67e242398f5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_WeightedAverageRemainingLeaseTermOfOperatingFinanceLeasesAbstract_36fdad4b-0121-41d2-9697-270c8fdb2183" xlink:to="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_25737746-ebe2-4cbb-83df-a67e242398f5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1_b3f0b331-95e4-4b51-a455-6ff3a152424c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_WeightedAverageRemainingLeaseTermOfOperatingFinanceLeasesAbstract_36fdad4b-0121-41d2-9697-270c8fdb2183" xlink:to="loc_us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1_b3f0b331-95e4-4b51-a455-6ff3a152424c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_WeightedAverageDiscountRateOfOperatingFinanceLeasesAbstract_534a3ee5-70d6-4b2c-adf9-c35006a919e7" xlink:href="ibp-20221231.xsd#ibp_WeightedAverageDiscountRateOfOperatingFinanceLeasesAbstract"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_6010dea7-294c-4778-aee7-3562745ea681" xlink:to="loc_ibp_WeightedAverageDiscountRateOfOperatingFinanceLeasesAbstract_534a3ee5-70d6-4b2c-adf9-c35006a919e7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_9b592d26-febb-47bd-8b23-7ae82730a394" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_WeightedAverageDiscountRateOfOperatingFinanceLeasesAbstract_534a3ee5-70d6-4b2c-adf9-c35006a919e7" xlink:to="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_9b592d26-febb-47bd-8b23-7ae82730a394" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent_6162ffef-abae-4fc9-8dd9-c50df0753f1d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_WeightedAverageDiscountRateOfOperatingFinanceLeasesAbstract_534a3ee5-70d6-4b2c-adf9-c35006a919e7" xlink:to="loc_us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent_6162ffef-abae-4fc9-8dd9-c50df0753f1d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/LeasesLeaseCostFinanceandOperatingLeasesDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#LeasesLeaseCostFinanceandOperatingLeasesDetails"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/LeasesLeaseCostFinanceandOperatingLeasesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_fe1e8680-2b60-45bf-a24c-7111508fb5ce" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeaseDescriptionTable_0ca3b2e3-d4a7-4971-a65a-f730e4c682b0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeLeaseDescriptionTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_fe1e8680-2b60-45bf-a24c-7111508fb5ce" xlink:to="loc_us-gaap_LesseeLeaseDescriptionTable_0ca3b2e3-d4a7-4971-a65a-f730e4c682b0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseContractualTermAxis_a0018c90-44d6-4ad5-b222-f727e2cce730" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseContractualTermAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionTable_0ca3b2e3-d4a7-4971-a65a-f730e4c682b0" xlink:to="loc_us-gaap_LeaseContractualTermAxis_a0018c90-44d6-4ad5-b222-f727e2cce730" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseContractualTermDomain_60547631-8e44-4010-95c3-589c1c37db02" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseContractualTermDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeaseContractualTermAxis_a0018c90-44d6-4ad5-b222-f727e2cce730" xlink:to="loc_us-gaap_LeaseContractualTermDomain_60547631-8e44-4010-95c3-589c1c37db02" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_OperatingLeaseMember_40bdcbd2-bf32-4e6f-a478-e5d9881f2745" xlink:href="ibp-20221231.xsd#ibp_OperatingLeaseMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeaseContractualTermDomain_60547631-8e44-4010-95c3-589c1c37db02" xlink:to="loc_ibp_OperatingLeaseMember_40bdcbd2-bf32-4e6f-a478-e5d9881f2745" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FinanceLeaseMember_454f0383-f922-42cc-9ae6-20b022fb590e" xlink:href="ibp-20221231.xsd#ibp_FinanceLeaseMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeaseContractualTermDomain_60547631-8e44-4010-95c3-589c1c37db02" xlink:to="loc_ibp_FinanceLeaseMember_454f0383-f922-42cc-9ae6-20b022fb590e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeaseDescriptionLineItems_7d8e5566-447d-423d-ab80-75f76e99c846" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeLeaseDescriptionLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionTable_0ca3b2e3-d4a7-4971-a65a-f730e4c682b0" xlink:to="loc_us-gaap_LesseeLeaseDescriptionLineItems_7d8e5566-447d-423d-ab80-75f76e99c846" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseCost_cc2244f7-a33f-450f-b76c-3b9c3e402a8a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseCost"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_7d8e5566-447d-423d-ab80-75f76e99c846" xlink:to="loc_us-gaap_OperatingLeaseCost_cc2244f7-a33f-450f-b76c-3b9c3e402a8a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCostAbstract_fdd76995-ad57-4202-a7a8-2ddd26d8c75f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseCostAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_7d8e5566-447d-423d-ab80-75f76e99c846" xlink:to="loc_us-gaap_LeaseCostAbstract_fdd76995-ad57-4202-a7a8-2ddd26d8c75f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseRightOfUseAssetAmortization_5a134de6-7baf-4eae-a0c3-8cd6d0953972" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseRightOfUseAssetAmortization"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeaseCostAbstract_fdd76995-ad57-4202-a7a8-2ddd26d8c75f" xlink:to="loc_us-gaap_FinanceLeaseRightOfUseAssetAmortization_5a134de6-7baf-4eae-a0c3-8cd6d0953972" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseInterestExpense_1cc9c933-8f24-4623-ab28-d568340101b5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseInterestExpense"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeaseCostAbstract_fdd76995-ad57-4202-a7a8-2ddd26d8c75f" xlink:to="loc_us-gaap_FinanceLeaseInterestExpense_1cc9c933-8f24-4623-ab28-d568340101b5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCost_abd02a0b-54a1-4fb5-a59c-8cd4526a23d2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseCost"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeaseCostAbstract_fdd76995-ad57-4202-a7a8-2ddd26d8c75f" xlink:to="loc_us-gaap_LeaseCost_abd02a0b-54a1-4fb5-a59c-8cd4526a23d2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableLeaseCost_5bd2a7d2-fc88-423c-a058-6ff1233e334f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableLeaseCost"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeaseCostAbstract_fdd76995-ad57-4202-a7a8-2ddd26d8c75f" xlink:to="loc_us-gaap_VariableLeaseCost_5bd2a7d2-fc88-423c-a058-6ff1233e334f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermLeaseCost_fc67f0c3-e805-48c2-b62a-a1aa30b8492c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShortTermLeaseCost"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeaseCostAbstract_fdd76995-ad57-4202-a7a8-2ddd26d8c75f" xlink:to="loc_us-gaap_ShortTermLeaseCost_fc67f0c3-e805-48c2-b62a-a1aa30b8492c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalCashFlowInformationRelatedtoLeasesDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#LeasesScheduleofSupplementalCashFlowInformationRelatedtoLeasesDetails"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalCashFlowInformationRelatedtoLeasesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_75f54651-c0fa-4d28-a31f-935698fa8442" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesAbstract_fbf2e795-4b36-44b1-8b39-ec55015a75cb" xlink:href="ibp-20221231.xsd#ibp_CashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_75f54651-c0fa-4d28-a31f-935698fa8442" xlink:to="loc_ibp_CashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesAbstract_fbf2e795-4b36-44b1-8b39-ec55015a75cb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeasePayments_ac203a9c-ebae-43f6-a8cd-3a16f60ab648" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeasePayments"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_CashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesAbstract_fbf2e795-4b36-44b1-8b39-ec55015a75cb" xlink:to="loc_us-gaap_OperatingLeasePayments_ac203a9c-ebae-43f6-a8cd-3a16f60ab648" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseInterestPaymentOnLiability_262cb712-22ea-4efb-9478-17e4c746526c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseInterestPaymentOnLiability"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_CashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesAbstract_fbf2e795-4b36-44b1-8b39-ec55015a75cb" xlink:to="loc_us-gaap_FinanceLeaseInterestPaymentOnLiability_262cb712-22ea-4efb-9478-17e4c746526c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeasePrincipalPayments_ec74dfed-4e32-4026-8b44-2a2b94d255de" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeasePrincipalPayments"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_CashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesAbstract_fbf2e795-4b36-44b1-8b39-ec55015a75cb" xlink:to="loc_us-gaap_FinanceLeasePrincipalPayments_ec74dfed-4e32-4026-8b44-2a2b94d255de" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_915e7418-9d48-462c-9764-eb3591099f8b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsTable_6c850045-55bf-411b-8678-e0bce97dfae3" xlink:href="ibp-20221231.xsd#ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_915e7418-9d48-462c-9764-eb3591099f8b" xlink:to="loc_ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsTable_6c850045-55bf-411b-8678-e0bce97dfae3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis_50a3cf19-0cd9-4ed4-aab0-b91e6f20bdcb" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsTable_6c850045-55bf-411b-8678-e0bce97dfae3" xlink:to="loc_srt_RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis_50a3cf19-0cd9-4ed4-aab0-b91e6f20bdcb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RealEstateAndAccumulatedDepreciationNameOfPropertyDomain_bca1991c-113e-40ff-91b4-874cb28d3fbb" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RealEstateAndAccumulatedDepreciationNameOfPropertyDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis_50a3cf19-0cd9-4ed4-aab0-b91e6f20bdcb" xlink:to="loc_srt_RealEstateAndAccumulatedDepreciationNameOfPropertyDomain_bca1991c-113e-40ff-91b4-874cb28d3fbb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_RelatedPartyOperatingLeasesMember_977a62f4-2a54-4b89-9adb-80b3c65a3fa4" xlink:href="ibp-20221231.xsd#ibp_RelatedPartyOperatingLeasesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RealEstateAndAccumulatedDepreciationNameOfPropertyDomain_bca1991c-113e-40ff-91b4-874cb28d3fbb" xlink:to="loc_ibp_RelatedPartyOperatingLeasesMember_977a62f4-2a54-4b89-9adb-80b3c65a3fa4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_OtherPartyOperatingLeasesMember_815b8c4e-d4c2-4cc1-9b45-4951f1fe0658" xlink:href="ibp-20221231.xsd#ibp_OtherPartyOperatingLeasesMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RealEstateAndAccumulatedDepreciationNameOfPropertyDomain_bca1991c-113e-40ff-91b4-874cb28d3fbb" xlink:to="loc_ibp_OtherPartyOperatingLeasesMember_815b8c4e-d4c2-4cc1-9b45-4951f1fe0658" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsLineItems_3b85dc88-7ba1-427f-a74e-df7a14a3030c" xlink:href="ibp-20221231.xsd#ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsTable_6c850045-55bf-411b-8678-e0bce97dfae3" xlink:to="loc_ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsLineItems_3b85dc88-7ba1-427f-a74e-df7a14a3030c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityAbstract_4bdbfd2b-7820-4af6-86d2-c86303a1e185" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsLineItems_3b85dc88-7ba1-427f-a74e-df7a14a3030c" xlink:to="loc_us-gaap_FinanceLeaseLiabilityAbstract_4bdbfd2b-7820-4af6-86d2-c86303a1e185" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths_62516847-2547-4615-ab45-fdb1ad6f946a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FinanceLeaseLiabilityAbstract_4bdbfd2b-7820-4af6-86d2-c86303a1e185" xlink:to="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths_62516847-2547-4615-ab45-fdb1ad6f946a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo_67fea384-0f41-4fbf-95a7-7fa482a1944c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FinanceLeaseLiabilityAbstract_4bdbfd2b-7820-4af6-86d2-c86303a1e185" xlink:to="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo_67fea384-0f41-4fbf-95a7-7fa482a1944c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree_f09798c4-e0c0-4e36-8783-58df2451026b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FinanceLeaseLiabilityAbstract_4bdbfd2b-7820-4af6-86d2-c86303a1e185" xlink:to="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree_f09798c4-e0c0-4e36-8783-58df2451026b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour_003a372b-aea9-4046-8c34-2257833bbf54" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FinanceLeaseLiabilityAbstract_4bdbfd2b-7820-4af6-86d2-c86303a1e185" xlink:to="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour_003a372b-aea9-4046-8c34-2257833bbf54" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive_341460fe-8e1a-423a-9091-2dd51ee5d809" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FinanceLeaseLiabilityAbstract_4bdbfd2b-7820-4af6-86d2-c86303a1e185" xlink:to="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive_341460fe-8e1a-423a-9091-2dd51ee5d809" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive_cd3ef3b6-8c86-4bdb-98cd-cc84e3523a50" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FinanceLeaseLiabilityAbstract_4bdbfd2b-7820-4af6-86d2-c86303a1e185" xlink:to="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive_cd3ef3b6-8c86-4bdb-98cd-cc84e3523a50" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDue_cde35ef8-952f-447b-8876-3611c68ae541" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDue"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FinanceLeaseLiabilityAbstract_4bdbfd2b-7820-4af6-86d2-c86303a1e185" xlink:to="loc_us-gaap_FinanceLeaseLiabilityPaymentsDue_cde35ef8-952f-447b-8876-3611c68ae541" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FinanceLeaseExecutoryCosts_055cf3cb-6bcc-461f-94d5-b5937fba7b3b" xlink:href="ibp-20221231.xsd#ibp_FinanceLeaseExecutoryCosts"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FinanceLeaseLiabilityAbstract_4bdbfd2b-7820-4af6-86d2-c86303a1e185" xlink:to="loc_ibp_FinanceLeaseExecutoryCosts_055cf3cb-6bcc-461f-94d5-b5937fba7b3b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount_c292ed18-b207-4177-a568-46a22e3d4bb0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FinanceLeaseLiabilityAbstract_4bdbfd2b-7820-4af6-86d2-c86303a1e185" xlink:to="loc_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount_c292ed18-b207-4177-a568-46a22e3d4bb0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiability_798d088c-7dcd-4b1c-a6c1-a42c0ebe0311" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiability"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FinanceLeaseLiabilityAbstract_4bdbfd2b-7820-4af6-86d2-c86303a1e185" xlink:to="loc_us-gaap_FinanceLeaseLiability_798d088c-7dcd-4b1c-a6c1-a42c0ebe0311" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityCurrent_b79e894a-a8da-4b8a-9e85-505b7d0ec8ef" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityCurrent"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FinanceLeaseLiabilityAbstract_4bdbfd2b-7820-4af6-86d2-c86303a1e185" xlink:to="loc_us-gaap_FinanceLeaseLiabilityCurrent_b79e894a-a8da-4b8a-9e85-505b7d0ec8ef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityNoncurrent_4ee0fd87-e98e-4328-b5ae-a532fab3c09a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityNoncurrent"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FinanceLeaseLiabilityAbstract_4bdbfd2b-7820-4af6-86d2-c86303a1e185" xlink:to="loc_us-gaap_FinanceLeaseLiabilityNoncurrent_4ee0fd87-e98e-4328-b5ae-a532fab3c09a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityAbstract_c9b2a660-e039-458c-8d54-93d7dc9a5485" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsLineItems_3b85dc88-7ba1-427f-a74e-df7a14a3030c" xlink:to="loc_us-gaap_OperatingLeaseLiabilityAbstract_c9b2a660-e039-458c-8d54-93d7dc9a5485" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_e8392821-4cfe-4dda-8aa5-0c73ba0b37ed" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilityAbstract_c9b2a660-e039-458c-8d54-93d7dc9a5485" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_e8392821-4cfe-4dda-8aa5-0c73ba0b37ed" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_6d311639-6ae4-479e-8626-c437c72bc537" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilityAbstract_c9b2a660-e039-458c-8d54-93d7dc9a5485" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_6d311639-6ae4-479e-8626-c437c72bc537" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_70f92697-cbbc-4d70-95fa-61b0a70eb3d5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilityAbstract_c9b2a660-e039-458c-8d54-93d7dc9a5485" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_70f92697-cbbc-4d70-95fa-61b0a70eb3d5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_db5159ce-0c13-4184-b8bf-e27dad8c2faf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilityAbstract_c9b2a660-e039-458c-8d54-93d7dc9a5485" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_db5159ce-0c13-4184-b8bf-e27dad8c2faf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_b5f67c2e-0ea6-4d51-a2d5-7a97e7fec106" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilityAbstract_c9b2a660-e039-458c-8d54-93d7dc9a5485" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_b5f67c2e-0ea6-4d51-a2d5-7a97e7fec106" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_9d4c5370-3028-4725-bf3d-7d58351349c7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilityAbstract_c9b2a660-e039-458c-8d54-93d7dc9a5485" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_9d4c5370-3028-4725-bf3d-7d58351349c7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_4076963a-592a-42e0-a04e-5c294b5eba31" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilityAbstract_c9b2a660-e039-458c-8d54-93d7dc9a5485" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_4076963a-592a-42e0-a04e-5c294b5eba31" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_148733ec-3907-4ba7-8d13-65dd334cf9e8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilityAbstract_c9b2a660-e039-458c-8d54-93d7dc9a5485" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_148733ec-3907-4ba7-8d13-65dd334cf9e8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability_7a33db79-71d2-4b83-a04f-89882d4f461f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilityAbstract_c9b2a660-e039-458c-8d54-93d7dc9a5485" xlink:to="loc_us-gaap_OperatingLeaseLiability_7a33db79-71d2-4b83-a04f-89882d4f461f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_1d58ce78-1202-4c9b-9f45-a7e9c324b04f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilityAbstract_c9b2a660-e039-458c-8d54-93d7dc9a5485" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_1d58ce78-1202-4c9b-9f45-a7e9c324b04f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_3db6b5f6-7a1f-4a9e-9424-4514461d58f8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilityAbstract_c9b2a660-e039-458c-8d54-93d7dc9a5485" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_3db6b5f6-7a1f-4a9e-9424-4514461d58f8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail_1" xlink:type="simple" xlink:href="ibp-20221231.xsd#LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail_1"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail_1" xlink:type="extended"/>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_abbeaec9-6b50-4e03-b49b-391de5c0a2e1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_e6932b8d-3c0a-4d57-90da-ee55f9b419ae" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_abbeaec9-6b50-4e03-b49b-391de5c0a2e1" xlink:to="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_e6932b8d-3c0a-4d57-90da-ee55f9b419ae" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_e87fc028-5f46-47ce-a57a-5f6f648dd8ff" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_e6932b8d-3c0a-4d57-90da-ee55f9b419ae" xlink:to="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_e87fc028-5f46-47ce-a57a-5f6f648dd8ff" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_e2580403-f0ce-4132-aa96-0acfa6881706" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_e87fc028-5f46-47ce-a57a-5f6f648dd8ff" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_e2580403-f0ce-4132-aa96-0acfa6881706" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel1Member_67fdd764-8d43-4015-a74e-bba2fc15411d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel1Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_e2580403-f0ce-4132-aa96-0acfa6881706" xlink:to="loc_us-gaap_FairValueInputsLevel1Member_67fdd764-8d43-4015-a74e-bba2fc15411d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel2Member_01d4bd86-f15d-4b0c-9e71-f94a4f45fd25" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel2Member"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_e2580403-f0ce-4132-aa96-0acfa6881706" xlink:to="loc_us-gaap_FairValueInputsLevel2Member_01d4bd86-f15d-4b0c-9e71-f94a4f45fd25" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel3Member_cf37b113-7a71-4448-b9e9-c8453319367c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel3Member"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_e2580403-f0ce-4132-aa96-0acfa6881706" xlink:to="loc_us-gaap_FairValueInputsLevel3Member_cf37b113-7a71-4448-b9e9-c8453319367c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_7b135a8a-654a-4276-9f64-14613222b9af" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_e6932b8d-3c0a-4d57-90da-ee55f9b419ae" xlink:to="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_7b135a8a-654a-4276-9f64-14613222b9af" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsFairValueDisclosureAbstract_a0426dc8-cf19-4aed-9bf8-46025b738c87" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsFairValueDisclosureAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_7b135a8a-654a-4276-9f64-14613222b9af" xlink:to="loc_us-gaap_AssetsFairValueDisclosureAbstract_a0426dc8-cf19-4aed-9bf8-46025b738c87" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsFairValueDisclosure_991f37f6-849b-4ac9-9aa9-c3eeb44f6e14" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsFairValueDisclosure"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsFairValueDisclosureAbstract_a0426dc8-cf19-4aed-9bf8-46025b738c87" xlink:to="loc_us-gaap_CashAndCashEquivalentsFairValueDisclosure_991f37f6-849b-4ac9-9aa9-c3eeb44f6e14" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeAssets_1aa06ba1-f294-498b-b334-00aedc5a8788" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeAssets"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsFairValueDisclosureAbstract_a0426dc8-cf19-4aed-9bf8-46025b738c87" xlink:to="loc_us-gaap_DerivativeAssets_1aa06ba1-f294-498b-b334-00aedc5a8788" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeAssetStatementOfFinancialPositionExtensibleEnumeration_a6dd6d00-42cf-447d-8bfe-951532b764c3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeAssetStatementOfFinancialPositionExtensibleEnumeration"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsFairValueDisclosureAbstract_a0426dc8-cf19-4aed-9bf8-46025b738c87" xlink:to="loc_us-gaap_DerivativeAssetStatementOfFinancialPositionExtensibleEnumeration_a6dd6d00-42cf-447d-8bfe-951532b764c3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsFairValueDisclosure_cdb4d9a5-7228-45c6-ad2f-169d194a177f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsFairValueDisclosure"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_7b135a8a-654a-4276-9f64-14613222b9af" xlink:to="loc_us-gaap_AssetsFairValueDisclosure_cdb4d9a5-7228-45c6-ad2f-169d194a177f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_ae3ee1ed-196c-41da-9761-d7ad61af582c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesFairValueDisclosureAbstract"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_7b135a8a-654a-4276-9f64-14613222b9af" xlink:to="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_ae3ee1ed-196c-41da-9761-d7ad61af582c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationLiability_854a9da7-20e3-4d0c-9b4c-90086a658972" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationContingentConsiderationLiability"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_ae3ee1ed-196c-41da-9761-d7ad61af582c" xlink:to="loc_us-gaap_BusinessCombinationContingentConsiderationLiability_854a9da7-20e3-4d0c-9b4c-90086a658972" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeLiabilities_adddc9b4-9857-4b8d-b3d1-8782da259f45" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeLiabilities"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_ae3ee1ed-196c-41da-9761-d7ad61af582c" xlink:to="loc_us-gaap_DerivativeLiabilities_adddc9b4-9857-4b8d-b3d1-8782da259f45" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeLiabilityStatementOfFinancialPositionExtensibleEnumeration_fb46253c-fdfb-46ad-8608-adc5412c79ec" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeLiabilityStatementOfFinancialPositionExtensibleEnumeration"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_ae3ee1ed-196c-41da-9761-d7ad61af582c" xlink:to="loc_us-gaap_DerivativeLiabilityStatementOfFinancialPositionExtensibleEnumeration_fb46253c-fdfb-46ad-8608-adc5412c79ec" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesFairValueDisclosure_c9596030-b7f2-49e4-989d-2694fc68eff5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesFairValueDisclosure"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_7b135a8a-654a-4276-9f64-14613222b9af" xlink:to="loc_us-gaap_LiabilitiesFairValueDisclosure_c9596030-b7f2-49e4-989d-2694fc68eff5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/FairvaluemeasurementsSummaryofChangeinFairValueofContingentConsiderationDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#FairvaluemeasurementsSummaryofChangeinFairValueofContingentConsiderationDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/FairvaluemeasurementsSummaryofChangeinFairValueofContingentConsiderationDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_5c2dd7f8-56cc-40ec-931d-a17f1b690c65" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_c3aeed51-0add-4fc4-95a9-afb6e28fcc59" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_5c2dd7f8-56cc-40ec-931d-a17f1b690c65" xlink:to="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_c3aeed51-0add-4fc4-95a9-afb6e28fcc59" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_8367c49d-ee33-4622-acf7-f9932dfb23f3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_c3aeed51-0add-4fc4-95a9-afb6e28fcc59" xlink:to="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_8367c49d-ee33-4622-acf7-f9932dfb23f3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases_06e9efdb-e3c7-4dd4-a321-9a66f7386469" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_c3aeed51-0add-4fc4-95a9-afb6e28fcc59" xlink:to="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases_06e9efdb-e3c7-4dd4-a321-9a66f7386469" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings_a3074137-5dd2-40fe-9a82-a2ce934bf113" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_c3aeed51-0add-4fc4-95a9-afb6e28fcc59" xlink:to="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings_a3074137-5dd2-40fe-9a82-a2ce934bf113" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityAccretionExpense_4103164d-8a95-4a10-9594-ea06aa6e95c4" xlink:href="ibp-20221231.xsd#ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityAccretionExpense"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_c3aeed51-0add-4fc4-95a9-afb6e28fcc59" xlink:to="loc_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityAccretionExpense_4103164d-8a95-4a10-9594-ea06aa6e95c4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnContingentConsideration_508f49d9-0ebf-4cc3-bf9a-629547ff8648" xlink:href="ibp-20221231.xsd#ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnContingentConsideration"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_c3aeed51-0add-4fc4-95a9-afb6e28fcc59" xlink:to="loc_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnContingentConsideration_508f49d9-0ebf-4cc3-bf9a-629547ff8648" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements_2dd0a7e4-fdd7-4ec8-8c33-c2890a7ee3a1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_c3aeed51-0add-4fc4-95a9-afb6e28fcc59" xlink:to="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements_2dd0a7e4-fdd7-4ec8-8c33-c2890a7ee3a1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchasesSalesIssuancesSettlements_e6818fa3-f583-451d-bbd0-d9ebfe66f484" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchasesSalesIssuancesSettlements"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_c3aeed51-0add-4fc4-95a9-afb6e28fcc59" xlink:to="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchasesSalesIssuancesSettlements_e6818fa3-f583-451d-bbd0-d9ebfe66f484" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_10919bd0-af4b-489a-8296-c2928c404acd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_c3aeed51-0add-4fc4-95a9-afb6e28fcc59" xlink:to="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_10919bd0-af4b-489a-8296-c2928c404acd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnEarnoutLiability_bff0f729-4033-42a0-a7d9-7e6b501d9bee" xlink:href="ibp-20221231.xsd#ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnEarnoutLiability"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_5c2dd7f8-56cc-40ec-931d-a17f1b690c65" xlink:to="loc_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnEarnoutLiability_bff0f729-4033-42a0-a7d9-7e6b501d9bee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueRecurringBasisUnobservableInputReconciliationLiabilityGainLossStatementOfIncomeExtensibleList_44f3778c-4315-4ee8-b405-502c43b3f53e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueRecurringBasisUnobservableInputReconciliationLiabilityGainLossStatementOfIncomeExtensibleList"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_5c2dd7f8-56cc-40ec-931d-a17f1b690c65" xlink:to="loc_us-gaap_FairValueRecurringBasisUnobservableInputReconciliationLiabilityGainLossStatementOfIncomeExtensibleList_44f3778c-4315-4ee8-b405-502c43b3f53e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/FairValuemeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#FairValuemeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/FairValuemeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_75264901-b986-4ba2-8ecf-e7b28e464dfa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByBalanceSheetGroupingTable_dc2dcd9a-c2e1-4d5d-ba29-653c7d82fa5b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueByBalanceSheetGroupingTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_75264901-b986-4ba2-8ecf-e7b28e464dfa" xlink:to="loc_us-gaap_FairValueByBalanceSheetGroupingTable_dc2dcd9a-c2e1-4d5d-ba29-653c7d82fa5b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByMeasurementBasisAxis_389996b4-ac87-4b04-a7e7-17a47ca894a6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueByMeasurementBasisAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_dc2dcd9a-c2e1-4d5d-ba29-653c7d82fa5b" xlink:to="loc_us-gaap_FairValueByMeasurementBasisAxis_389996b4-ac87-4b04-a7e7-17a47ca894a6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosureItemAmountsDomain_a754df53-c446-45bc-ae4a-e22db1eb1a87" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueDisclosureItemAmountsDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByMeasurementBasisAxis_389996b4-ac87-4b04-a7e7-17a47ca894a6" xlink:to="loc_us-gaap_FairValueDisclosureItemAmountsDomain_a754df53-c446-45bc-ae4a-e22db1eb1a87" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PortionAtFairValueFairValueDisclosureMember_b20e7f66-0873-4bba-92ae-b7fa163c77c2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PortionAtFairValueFairValueDisclosureMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosureItemAmountsDomain_a754df53-c446-45bc-ae4a-e22db1eb1a87" xlink:to="loc_us-gaap_PortionAtFairValueFairValueDisclosureMember_b20e7f66-0873-4bba-92ae-b7fa163c77c2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CarryingReportedAmountFairValueDisclosureMember_199e7b8e-188c-4a30-a12d-4d5b32282c6d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CarryingReportedAmountFairValueDisclosureMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PortionAtFairValueFairValueDisclosureMember_b20e7f66-0873-4bba-92ae-b7fa163c77c2" xlink:to="loc_us-gaap_CarryingReportedAmountFairValueDisclosureMember_199e7b8e-188c-4a30-a12d-4d5b32282c6d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_cfb9aa65-ba6c-442f-9d29-f105245443cb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_dc2dcd9a-c2e1-4d5d-ba29-653c7d82fa5b" xlink:to="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_cfb9aa65-ba6c-442f-9d29-f105245443cb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_653d9066-42b5-4cf3-a42d-fe5f8566335b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_cfb9aa65-ba6c-442f-9d29-f105245443cb" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_653d9066-42b5-4cf3-a42d-fe5f8566335b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel2Member_3dd5b47f-b716-40b5-ae06-1262c72edbb5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel2Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_653d9066-42b5-4cf3-a42d-fe5f8566335b" xlink:to="loc_us-gaap_FairValueInputsLevel2Member_3dd5b47f-b716-40b5-ae06-1262c72edbb5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_f5b321ce-336d-4024-891e-d95cda90dece" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_dc2dcd9a-c2e1-4d5d-ba29-653c7d82fa5b" xlink:to="loc_us-gaap_DebtInstrumentAxis_f5b321ce-336d-4024-891e-d95cda90dece" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_062c6569-4b98-441f-86d6-67040e60eccb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_f5b321ce-336d-4024-891e-d95cda90dece" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_062c6569-4b98-441f-86d6-67040e60eccb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember_a737e3df-7f46-4fcd-84ef-58d528228164" xlink:href="ibp-20221231.xsd#ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_062c6569-4b98-441f-86d6-67040e60eccb" xlink:to="loc_ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember_a737e3df-7f46-4fcd-84ef-58d528228164" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_83f1e040-c80f-4e16-9d09-c0ec81ac4e3a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_dc2dcd9a-c2e1-4d5d-ba29-653c7d82fa5b" xlink:to="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_83f1e040-c80f-4e16-9d09-c0ec81ac4e3a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtFairValue_7f1887b4-33f8-4ff4-b222-7cd028a929ef" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtFairValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_83f1e040-c80f-4e16-9d09-c0ec81ac4e3a" xlink:to="loc_us-gaap_LongTermDebtFairValue_7f1887b4-33f8-4ff4-b222-7cd028a929ef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/InformationonSegmentsDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#InformationonSegmentsDetails"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/InformationonSegmentsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_f5bb663d-ade0-4acc-9671-1bd439dcb316" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_d6774ef5-f4b3-4c45-a1e7-8c1a3f3e36f4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_f5bb663d-ade0-4acc-9671-1bd439dcb316" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_d6774ef5-f4b3-4c45-a1e7-8c1a3f3e36f4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_0cee6c92-cbd9-480e-af9e-fb1a5173d153" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_d6774ef5-f4b3-4c45-a1e7-8c1a3f3e36f4" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_0cee6c92-cbd9-480e-af9e-fb1a5173d153" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_a64369a1-b9a3-49a8-9634-d2a00dd49e86" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_0cee6c92-cbd9-480e-af9e-fb1a5173d153" xlink:to="loc_us-gaap_SegmentDomain_a64369a1-b9a3-49a8-9634-d2a00dd49e86" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_InstallationSegmentMember_3d1db597-3ed6-47ae-a171-19fb7cf44908" xlink:href="ibp-20221231.xsd#ibp_InstallationSegmentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_a64369a1-b9a3-49a8-9634-d2a00dd49e86" xlink:to="loc_ibp_InstallationSegmentMember_3d1db597-3ed6-47ae-a171-19fb7cf44908" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllOtherSegmentsMember_c27fa8d5-5c47-46ea-befa-3be6d9344306" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllOtherSegmentsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_a64369a1-b9a3-49a8-9634-d2a00dd49e86" xlink:to="loc_us-gaap_AllOtherSegmentsMember_c27fa8d5-5c47-46ea-befa-3be6d9344306" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis_c737bfe8-cb30-4ec2-9e35-e1d498f7964c" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ConsolidationItemsAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_d6774ef5-f4b3-4c45-a1e7-8c1a3f3e36f4" xlink:to="loc_srt_ConsolidationItemsAxis_c737bfe8-cb30-4ec2-9e35-e1d498f7964c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_29c8148d-aec4-407b-b02d-451985948a81" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ConsolidationItemsDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsAxis_c737bfe8-cb30-4ec2-9e35-e1d498f7964c" xlink:to="loc_srt_ConsolidationItemsDomain_29c8148d-aec4-407b-b02d-451985948a81" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingSegmentsMember_17466fa7-cd61-4f98-a777-8561496ae412" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingSegmentsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_29c8148d-aec4-407b-b02d-451985948a81" xlink:to="loc_us-gaap_OperatingSegmentsMember_17466fa7-cd61-4f98-a777-8561496ae412" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntersegmentEliminationMember_0a667070-d82f-4d5f-bde8-0a0206154d48" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IntersegmentEliminationMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_29c8148d-aec4-407b-b02d-451985948a81" xlink:to="loc_us-gaap_IntersegmentEliminationMember_0a667070-d82f-4d5f-bde8-0a0206154d48" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementAxis_629c538a-b585-4c97-8607-7322f3c67e94" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_d6774ef5-f4b3-4c45-a1e7-8c1a3f3e36f4" xlink:to="loc_srt_RestatementAxis_629c538a-b585-4c97-8607-7322f3c67e94" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementDomain_14723b00-2c12-4265-9017-11a2a6841f1d" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RestatementAxis_629c538a-b585-4c97-8607-7322f3c67e94" xlink:to="loc_srt_RestatementDomain_14723b00-2c12-4265-9017-11a2a6841f1d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementAdjustmentMember_61d3aef8-0350-4b75-9041-67b5a0dca4e2" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementAdjustmentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RestatementDomain_14723b00-2c12-4265-9017-11a2a6841f1d" xlink:to="loc_srt_RestatementAdjustmentMember_61d3aef8-0350-4b75-9041-67b5a0dca4e2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_c77ec9a6-f52c-4f3a-9049-aed93fba7330" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingInformationLineItems"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_d6774ef5-f4b3-4c45-a1e7-8c1a3f3e36f4" xlink:to="loc_us-gaap_SegmentReportingInformationLineItems_c77ec9a6-f52c-4f3a-9049-aed93fba7330" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfOperatingSegments_cc852885-1354-4941-9707-1a45283dd9f1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NumberOfOperatingSegments"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_c77ec9a6-f52c-4f3a-9049-aed93fba7330" xlink:to="loc_us-gaap_NumberOfOperatingSegments_cc852885-1354-4941-9707-1a45283dd9f1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfReportableSegments_482dd843-4b51-4c28-b1da-e2a9f768507d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NumberOfReportableSegments"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_c77ec9a6-f52c-4f3a-9049-aed93fba7330" xlink:to="loc_us-gaap_NumberOfReportableSegments_482dd843-4b51-4c28-b1da-e2a9f768507d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_b723a169-df99-4f2b-9865-b4690db2eb5f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_c77ec9a6-f52c-4f3a-9049-aed93fba7330" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_b723a169-df99-4f2b-9865-b4690db2eb5f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization_e04fa01c-32d3-4b48-b91e-012062500aad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_c77ec9a6-f52c-4f3a-9049-aed93fba7330" xlink:to="loc_us-gaap_CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization_e04fa01c-32d3-4b48-b91e-012062500aad" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion_5fdc46f3-5320-4ef9-9109-6fd3e959aad3" xlink:href="ibp-20221231.xsd#ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_c77ec9a6-f52c-4f3a-9049-aed93fba7330" xlink:to="loc_ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion_5fdc46f3-5320-4ef9-9109-6fd3e959aad3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_AdjustedGrossProfitPercentage_bccaeae7-dad0-4925-a631-04edbfe822d2" xlink:href="ibp-20221231.xsd#ibp_AdjustedGrossProfitPercentage"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_c77ec9a6-f52c-4f3a-9049-aed93fba7330" xlink:to="loc_ibp_AdjustedGrossProfitPercentage_bccaeae7-dad0-4925-a631-04edbfe822d2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization_67453dda-4254-4ee1-8830-35bd416c64fd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DepreciationDepletionAndAmortization"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_c77ec9a6-f52c-4f3a-9049-aed93fba7330" xlink:to="loc_us-gaap_DepreciationDepletionAndAmortization_67453dda-4254-4ee1-8830-35bd416c64fd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_a84dda58-8e21-4bba-bec5-9fce4c64be60" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GrossProfit"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_c77ec9a6-f52c-4f3a-9049-aed93fba7330" xlink:to="loc_us-gaap_GrossProfit_a84dda58-8e21-4bba-bec5-9fce4c64be60" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingExpenses_a7ccbe54-6080-4a59-b414-7ee184ed6c47" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingExpenses"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_c77ec9a6-f52c-4f3a-9049-aed93fba7330" xlink:to="loc_us-gaap_OperatingExpenses_a7ccbe54-6080-4a59-b414-7ee184ed6c47" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingExpense_c15a76dd-1ea1-44fc-b0bb-e6e8fdf081d0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingExpense"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_c77ec9a6-f52c-4f3a-9049-aed93fba7330" xlink:to="loc_us-gaap_SellingExpense_c15a76dd-1ea1-44fc-b0bb-e6e8fdf081d0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_0c136b5c-f23c-4ab5-9e15-7ae3471d10e1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_c77ec9a6-f52c-4f3a-9049-aed93fba7330" xlink:to="loc_us-gaap_OperatingIncomeLoss_0c136b5c-f23c-4ab5-9e15-7ae3471d10e1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingExpense_ffa290d2-5521-4d3d-9505-00643bbba183" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNonoperatingExpense"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_c77ec9a6-f52c-4f3a-9049-aed93fba7330" xlink:to="loc_us-gaap_OtherNonoperatingExpense_ffa290d2-5521-4d3d-9505-00643bbba183" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestExpense_cb3c0b76-965d-4bd5-b830-85b570927fd6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestExpense"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_c77ec9a6-f52c-4f3a-9049-aed93fba7330" xlink:to="loc_us-gaap_InterestExpense_cb3c0b76-965d-4bd5-b830-85b570927fd6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_3d41590e-6d67-472d-96d5-f98abd184df2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_c77ec9a6-f52c-4f3a-9049-aed93fba7330" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_3d41590e-6d67-472d-96d5-f98abd184df2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesOpenInterestSwapContractSummaryDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#DerivativeandHedgingActivitiesOpenInterestSwapContractSummaryDetails"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesOpenInterestSwapContractSummaryDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_906bf738-eb2c-43a7-a638-75e2a1735676" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_cfa4b00e-f14f-4901-8019-3d6c0920c9ae" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_906bf738-eb2c-43a7-a638-75e2a1735676" xlink:to="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_cfa4b00e-f14f-4901-8019-3d6c0920c9ae" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentRiskAxis_ce9aa6f7-d35b-4fa8-9647-cd1bf41c51f9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentRiskAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_cfa4b00e-f14f-4901-8019-3d6c0920c9ae" xlink:to="loc_us-gaap_DerivativeInstrumentRiskAxis_ce9aa6f7-d35b-4fa8-9647-cd1bf41c51f9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_32eee44d-6455-4276-aa75-fcbd01ab024d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeContractTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_ce9aa6f7-d35b-4fa8-9647-cd1bf41c51f9" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_32eee44d-6455-4276-aa75-fcbd01ab024d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_InterestRateSwapOneEffectiveJuly202021Member_9050ba22-fa16-4029-abd9-de6c6f009321" xlink:href="ibp-20221231.xsd#ibp_InterestRateSwapOneEffectiveJuly202021Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_32eee44d-6455-4276-aa75-fcbd01ab024d" xlink:to="loc_ibp_InterestRateSwapOneEffectiveJuly202021Member_9050ba22-fa16-4029-abd9-de6c6f009321" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_InterestRateSwapTwoEffectiveDecember312021Member_1237f7da-fff3-471a-97cc-6ffbab83f196" xlink:href="ibp-20221231.xsd#ibp_InterestRateSwapTwoEffectiveDecember312021Member"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_32eee44d-6455-4276-aa75-fcbd01ab024d" xlink:to="loc_ibp_InterestRateSwapTwoEffectiveDecember312021Member_1237f7da-fff3-471a-97cc-6ffbab83f196" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_InterestRateSwapThreeEffectiveDecember312021Member_7b0d1483-fb09-4aa2-8730-3e8dd0f28fbd" xlink:href="ibp-20221231.xsd#ibp_InterestRateSwapThreeEffectiveDecember312021Member"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_32eee44d-6455-4276-aa75-fcbd01ab024d" xlink:to="loc_ibp_InterestRateSwapThreeEffectiveDecember312021Member_7b0d1483-fb09-4aa2-8730-3e8dd0f28fbd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_InterestRateSwapFourEffectiveDecember312025Member_2dda3898-96f4-45d0-9ae6-350f8101905d" xlink:href="ibp-20221231.xsd#ibp_InterestRateSwapFourEffectiveDecember312025Member"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_32eee44d-6455-4276-aa75-fcbd01ab024d" xlink:to="loc_ibp_InterestRateSwapFourEffectiveDecember312025Member_2dda3898-96f4-45d0-9ae6-350f8101905d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_InterestRateSwapFiveEffectiveDecember312025Member_1cc0f6bd-41b3-4a3f-bf75-eb642f3391fe" xlink:href="ibp-20221231.xsd#ibp_InterestRateSwapFiveEffectiveDecember312025Member"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_32eee44d-6455-4276-aa75-fcbd01ab024d" xlink:to="loc_ibp_InterestRateSwapFiveEffectiveDecember312025Member_1cc0f6bd-41b3-4a3f-bf75-eb642f3391fe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_abdab19f-e1fa-42bf-847f-8225dad7ee1e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_cfa4b00e-f14f-4901-8019-3d6c0920c9ae" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_abdab19f-e1fa-42bf-847f-8225dad7ee1e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingRelationshipDomain_6aebb1c6-2b0c-4cf4-848e-4f81a22fa775" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_HedgingRelationshipDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_abdab19f-e1fa-42bf-847f-8225dad7ee1e" xlink:to="loc_us-gaap_HedgingRelationshipDomain_6aebb1c6-2b0c-4cf4-848e-4f81a22fa775" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashFlowHedgingMember_3cac1a97-2f6c-41a1-a66a-11ce47366559" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashFlowHedgingMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingRelationshipDomain_6aebb1c6-2b0c-4cf4-848e-4f81a22fa775" xlink:to="loc_us-gaap_CashFlowHedgingMember_3cac1a97-2f6c-41a1-a66a-11ce47366559" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationAxis_6df17287-0185-4949-8f9c-3e47ac22ab09" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_HedgingDesignationAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_cfa4b00e-f14f-4901-8019-3d6c0920c9ae" xlink:to="loc_us-gaap_HedgingDesignationAxis_6df17287-0185-4949-8f9c-3e47ac22ab09" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationDomain_639462b3-b2c7-4c76-9132-c6edbbe45393" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_HedgingDesignationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingDesignationAxis_6df17287-0185-4949-8f9c-3e47ac22ab09" xlink:to="loc_us-gaap_HedgingDesignationDomain_639462b3-b2c7-4c76-9132-c6edbbe45393" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DesignatedAsHedgingInstrumentMember_a5eb23c5-07fb-4d21-9e14-3a9425fd00a9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DesignatedAsHedgingInstrumentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingDesignationDomain_639462b3-b2c7-4c76-9132-c6edbbe45393" xlink:to="loc_us-gaap_DesignatedAsHedgingInstrumentMember_a5eb23c5-07fb-4d21-9e14-3a9425fd00a9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_3a10a22f-e07c-41da-8871-00e978ac3bc0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_cfa4b00e-f14f-4901-8019-3d6c0920c9ae" xlink:to="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_3a10a22f-e07c-41da-8871-00e978ac3bc0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeNotionalAmount_10e7ff92-bd80-4ac8-a878-b5ed3f6c3dc6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeNotionalAmount"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_3a10a22f-e07c-41da-8871-00e978ac3bc0" xlink:to="loc_us-gaap_DerivativeNotionalAmount_10e7ff92-bd80-4ac8-a878-b5ed3f6c3dc6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeFixedInterestRate_d063e3f8-8349-4b74-a52e-78f2915fd5bb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeFixedInterestRate"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_3a10a22f-e07c-41da-8871-00e978ac3bc0" xlink:to="loc_us-gaap_DerivativeFixedInterestRate_d063e3f8-8349-4b74-a52e-78f2915fd5bb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesNarrativeDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#DerivativeandHedgingActivitiesNarrativeDetails"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_e1043a2f-975e-4b23-9e92-4ed366b82cf4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_b8d9dcd1-7b0b-4651-b170-63e860de0ca0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_e1043a2f-975e-4b23-9e92-4ed366b82cf4" xlink:to="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_b8d9dcd1-7b0b-4651-b170-63e860de0ca0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentRiskAxis_42d7785e-7910-4b64-ab3a-3b893ffd77db" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentRiskAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_b8d9dcd1-7b0b-4651-b170-63e860de0ca0" xlink:to="loc_us-gaap_DerivativeInstrumentRiskAxis_42d7785e-7910-4b64-ab3a-3b893ffd77db" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_559780c3-a0cf-45d6-a752-e4c96b29306b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeContractTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_42d7785e-7910-4b64-ab3a-3b893ffd77db" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_559780c3-a0cf-45d6-a752-e4c96b29306b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestRateSwapMember_8676b1e1-818e-4956-a5ff-06cc4452e3d2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestRateSwapMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_559780c3-a0cf-45d6-a752-e4c96b29306b" xlink:to="loc_us-gaap_InterestRateSwapMember_8676b1e1-818e-4956-a5ff-06cc4452e3d2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationAxis_98846d1e-ec67-4969-86a7-1204bf0655fb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_HedgingDesignationAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_b8d9dcd1-7b0b-4651-b170-63e860de0ca0" xlink:to="loc_us-gaap_HedgingDesignationAxis_98846d1e-ec67-4969-86a7-1204bf0655fb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationDomain_bdfb47b3-1e01-4342-8d51-4fa062ab7b3e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_HedgingDesignationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingDesignationAxis_98846d1e-ec67-4969-86a7-1204bf0655fb" xlink:to="loc_us-gaap_HedgingDesignationDomain_bdfb47b3-1e01-4342-8d51-4fa062ab7b3e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DesignatedAsHedgingInstrumentMember_878f930b-7006-4c61-9528-a478179c1f31" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DesignatedAsHedgingInstrumentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingDesignationDomain_bdfb47b3-1e01-4342-8d51-4fa062ab7b3e" xlink:to="loc_us-gaap_DesignatedAsHedgingInstrumentMember_878f930b-7006-4c61-9528-a478179c1f31" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_29b98b93-0ddf-430a-995b-00c5ad34ee4e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_b8d9dcd1-7b0b-4651-b170-63e860de0ca0" xlink:to="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_29b98b93-0ddf-430a-995b-00c5ad34ee4e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_NumberOfSwaps_ccf5c698-2d20-438b-87e4-def40830d794" xlink:href="ibp-20221231.xsd#ibp_NumberOfSwaps"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_29b98b93-0ddf-430a-995b-00c5ad34ee4e" xlink:to="loc_ibp_NumberOfSwaps_ccf5c698-2d20-438b-87e4-def40830d794" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeNotionalAmount_b21e8e11-285c-4d55-b076-680f3fc5bfd6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeNotionalAmount"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_29b98b93-0ddf-430a-995b-00c5ad34ee4e" xlink:to="loc_us-gaap_DerivativeNotionalAmount_b21e8e11-285c-4d55-b076-680f3fc5bfd6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeFixedInterestRate_defd8f14-2f0c-4c66-9cbe-64d294527e2d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeFixedInterestRate"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_29b98b93-0ddf-430a-995b-00c5ad34ee4e" xlink:to="loc_us-gaap_DerivativeFixedInterestRate_defd8f14-2f0c-4c66-9cbe-64d294527e2d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrealizedGainLossOnDerivatives_2b2a5c37-9836-4c1e-a898-b8d2f078121f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrealizedGainLossOnDerivatives"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_29b98b93-0ddf-430a-995b-00c5ad34ee4e" xlink:to="loc_us-gaap_UnrealizedGainLossOnDerivatives_2b2a5c37-9836-4c1e-a898-b8d2f078121f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationTax_3c644031-6a07-4c1c-ba44-6850a4cd7ddf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationTax"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_29b98b93-0ddf-430a-995b-00c5ad34ee4e" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationTax_3c644031-6a07-4c1c-ba44-6850a4cd7ddf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_ProceedsFromTerminationOfDerivativeInstruments_7fcb8b19-db97-4caf-a053-952095255424" xlink:href="ibp-20221231.xsd#ibp_ProceedsFromTerminationOfDerivativeInstruments"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_29b98b93-0ddf-430a-995b-00c5ad34ee4e" xlink:to="loc_ibp_ProceedsFromTerminationOfDerivativeInstruments_7fcb8b19-db97-4caf-a053-952095255424" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_SwapOffMarketTermsCapitalized_c0e576dc-8c3d-430c-9015-be61cde55707" xlink:href="ibp-20221231.xsd#ibp_SwapOffMarketTermsCapitalized"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_29b98b93-0ddf-430a-995b-00c5ad34ee4e" xlink:to="loc_ibp_SwapOffMarketTermsCapitalized_c0e576dc-8c3d-430c-9015-be61cde55707" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax_531d4e27-e522-4e61-86eb-b5e9d29e4833" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_29b98b93-0ddf-430a-995b-00c5ad34ee4e" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax_531d4e27-e522-4e61-86eb-b5e9d29e4833" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeNumberOfInstrumentsHeld_6992e840-3f9a-419a-864f-1ca288ddd06f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeNumberOfInstrumentsHeld"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_29b98b93-0ddf-430a-995b-00c5ad34ee4e" xlink:to="loc_us-gaap_DerivativeNumberOfInstrumentsHeld_6992e840-3f9a-419a-864f-1ca288ddd06f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax_df904eb2-a16e-4348-b3c0-c94eb6a2f03f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_29b98b93-0ddf-430a-995b-00c5ad34ee4e" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax_df904eb2-a16e-4348-b3c0-c94eb6a2f03f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossReclassificationFromAccumulatedOCIToIncomeEstimatedNetAmountToBeTransferred_f7bd70ec-54af-4d01-83fc-af00de6f496a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsGainLossReclassificationFromAccumulatedOCIToIncomeEstimatedNetAmountToBeTransferred"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_29b98b93-0ddf-430a-995b-00c5ad34ee4e" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossReclassificationFromAccumulatedOCIToIncomeEstimatedNetAmountToBeTransferred_f7bd70ec-54af-4d01-83fc-af00de6f496a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesInterestRateSwapSummaryDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#DerivativeandHedgingActivitiesInterestRateSwapSummaryDetails"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesInterestRateSwapSummaryDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_a0dafd35-ad34-44a8-a7d0-b9f9a04b25a7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_6080e37f-065e-4c84-934e-937f35254274" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_a0dafd35-ad34-44a8-a7d0-b9f9a04b25a7" xlink:to="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_6080e37f-065e-4c84-934e-937f35254274" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentRiskAxis_af8b1896-97fd-4239-a475-8eb15f7ead24" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentRiskAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_6080e37f-065e-4c84-934e-937f35254274" xlink:to="loc_us-gaap_DerivativeInstrumentRiskAxis_af8b1896-97fd-4239-a475-8eb15f7ead24" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_99e266d0-2acd-4006-aa50-ef95e3ef9584" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeContractTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_af8b1896-97fd-4239-a475-8eb15f7ead24" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_99e266d0-2acd-4006-aa50-ef95e3ef9584" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestRateSwapMember_c84d7e30-2602-4cc5-a85c-11aa643ab216" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestRateSwapMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_99e266d0-2acd-4006-aa50-ef95e3ef9584" xlink:to="loc_us-gaap_InterestRateSwapMember_c84d7e30-2602-4cc5-a85c-11aa643ab216" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_b58d0662-e014-469a-bfa7-dbf7f8a1071d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_6080e37f-065e-4c84-934e-937f35254274" xlink:to="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_b58d0662-e014-469a-bfa7-dbf7f8a1071d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax_87f6e111-dedb-400b-8b2c-b1e43b04b518" xlink:href="ibp-20221231.xsd#ibp_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_b58d0662-e014-469a-bfa7-dbf7f8a1071d" xlink:to="loc_ibp_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax_87f6e111-dedb-400b-8b2c-b1e43b04b518" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax_751e171b-7d8e-47cc-8869-69f3e9eba8ee" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_b58d0662-e014-469a-bfa7-dbf7f8a1071d" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax_751e171b-7d8e-47cc-8869-69f3e9eba8ee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OciCashFlowHedgeReclassificationForDiscontinuanceStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration_456443b6-8641-46d8-af76-2b43cbd2d615" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OciCashFlowHedgeReclassificationForDiscontinuanceStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_b58d0662-e014-469a-bfa7-dbf7f8a1071d" xlink:to="loc_us-gaap_OciCashFlowHedgeReclassificationForDiscontinuanceStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration_456443b6-8641-46d8-af76-2b43cbd2d615" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/StockholdersEquityChangeinAOCIDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#StockholdersEquityChangeinAOCIDetails"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/StockholdersEquityChangeinAOCIDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract_a4c885b5-92ca-4f1b-9861-72be05cd1ac2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_685064a5-c293-4b92-90b8-f1b67507a775" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_a4c885b5-92ca-4f1b-9861-72be05cd1ac2" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_685064a5-c293-4b92-90b8-f1b67507a775" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_954c802d-2f2c-4c71-bf14-7790cdaf51cb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_685064a5-c293-4b92-90b8-f1b67507a775" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_954c802d-2f2c-4c71-bf14-7790cdaf51cb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_a5611d0a-8077-43ce-866a-4f46d62f2f9d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_954c802d-2f2c-4c71-bf14-7790cdaf51cb" xlink:to="loc_us-gaap_EquityComponentDomain_a5611d0a-8077-43ce-866a-4f46d62f2f9d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember_216f3ca6-fefd-4222-9458-81eb46bc35af" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_a5611d0a-8077-43ce-866a-4f46d62f2f9d" xlink:to="loc_us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember_216f3ca6-fefd-4222-9458-81eb46bc35af" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_84cde0eb-f25c-4296-88e8-44f7b7f7ff8c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_685064a5-c293-4b92-90b8-f1b67507a775" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_84cde0eb-f25c-4296-88e8-44f7b7f7ff8c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract_cca769b2-48c7-4ae9-be51-2b3bda57bbad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_84cde0eb-f25c-4296-88e8-44f7b7f7ff8c" xlink:to="loc_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract_cca769b2-48c7-4ae9-be51-2b3bda57bbad" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_f27b5389-141c-4371-943c-964aa08f82fe" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract_cca769b2-48c7-4ae9-be51-2b3bda57bbad" xlink:to="loc_us-gaap_StockholdersEquity_f27b5389-141c-4371-943c-964aa08f82fe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax_42ff1100-f048-42f6-99fb-393b2bf85315" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract_cca769b2-48c7-4ae9-be51-2b3bda57bbad" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax_42ff1100-f048-42f6-99fb-393b2bf85315" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax_5dde22c4-34c4-4977-8b3f-32953c6a1d30" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract_cca769b2-48c7-4ae9-be51-2b3bda57bbad" xlink:to="loc_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax_5dde22c4-34c4-4977-8b3f-32953c6a1d30" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_0e2e860f-fd76-4c93-8b74-b01464d50bed" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract_cca769b2-48c7-4ae9-be51-2b3bda57bbad" xlink:to="loc_us-gaap_StockholdersEquity_0e2e860f-fd76-4c93-8b74-b01464d50bed" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/StockholdersEquityAdditionalInformationDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#StockholdersEquityAdditionalInformationDetails"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/StockholdersEquityAdditionalInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract_5adb7569-c074-48d2-a6be-b16d1d799c2c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockSharesAcquired_4e9d0c3e-a1af-40d9-8ee3-0d1acf26b346" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockSharesAcquired"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_5adb7569-c074-48d2-a6be-b16d1d799c2c" xlink:to="loc_us-gaap_TreasuryStockSharesAcquired_4e9d0c3e-a1af-40d9-8ee3-0d1acf26b346" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_08565ca1-7b49-4f1d-a913-d1176525ad48" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_5adb7569-c074-48d2-a6be-b16d1d799c2c" xlink:to="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_08565ca1-7b49-4f1d-a913-d1176525ad48" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockAcquiredAverageCostPerShare_3f0d9119-abcf-421b-aa8c-7acd4744913e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockAcquiredAverageCostPerShare"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_5adb7569-c074-48d2-a6be-b16d1d799c2c" xlink:to="loc_us-gaap_TreasuryStockAcquiredAverageCostPerShare_3f0d9119-abcf-421b-aa8c-7acd4744913e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1_1bc6c911-5263-4f62-a8c5-3d847f040b26" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockRepurchaseProgramAuthorizedAmount1"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_5adb7569-c074-48d2-a6be-b16d1d799c2c" xlink:to="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1_1bc6c911-5263-4f62-a8c5-3d847f040b26" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1_28229544-9df7-486f-a900-e3a3d2f42462" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_5adb7569-c074-48d2-a6be-b16d1d799c2c" xlink:to="loc_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1_28229544-9df7-486f-a900-e3a3d2f42462" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsPayableTable_5ba1290a-aac6-4908-803a-596582de7853" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DividendsPayableTable"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_5adb7569-c074-48d2-a6be-b16d1d799c2c" xlink:to="loc_us-gaap_DividendsPayableTable_5ba1290a-aac6-4908-803a-596582de7853" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_e08d43d2-82d4-4c2e-b94a-532bbbd38693" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DividendsPayableTable_5ba1290a-aac6-4908-803a-596582de7853" xlink:to="loc_us-gaap_AwardTypeAxis_e08d43d2-82d4-4c2e-b94a-532bbbd38693" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_e8452870-d5d3-451a-9447-9d413f7a6aaf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_e08d43d2-82d4-4c2e-b94a-532bbbd38693" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_e8452870-d5d3-451a-9447-9d413f7a6aaf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockMember_2cca378f-5443-41ff-9b31-4d24dd4a3a63" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_e8452870-d5d3-451a-9447-9d413f7a6aaf" xlink:to="loc_us-gaap_RestrictedStockMember_2cca378f-5443-41ff-9b31-4d24dd4a3a63" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsPayableLineItems_1793a60f-1fff-40f4-a717-2755c498f9e1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DividendsPayableLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DividendsPayableTable_5ba1290a-aac6-4908-803a-596582de7853" xlink:to="loc_us-gaap_DividendsPayableLineItems_1793a60f-1fff-40f4-a717-2755c498f9e1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfDividends_8534a31d-a19b-4429-9fb9-afa8efa28a5e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfDividends"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DividendsPayableLineItems_1793a60f-1fff-40f4-a717-2755c498f9e1" xlink:to="loc_us-gaap_PaymentsOfDividends_8534a31d-a19b-4429-9fb9-afa8efa28a5e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/StockholdersEquityScheduleofDividendsDeclaredDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#StockholdersEquityScheduleofDividendsDeclaredDetails"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/StockholdersEquityScheduleofDividendsDeclaredDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract_d46baec7-95ff-4bad-ad6c-9d23655f54b3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsPayableTable_6dc5b072-446b-4911-b223-c7c2fa8204be" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DividendsPayableTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_d46baec7-95ff-4bad-ad6c-9d23655f54b3" xlink:to="loc_us-gaap_DividendsPayableTable_6dc5b072-446b-4911-b223-c7c2fa8204be" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsAxis_ab8bd700-2c9c-4e29-a425-83d4f54e5a2a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DividendsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DividendsPayableTable_6dc5b072-446b-4911-b223-c7c2fa8204be" xlink:to="loc_us-gaap_DividendsAxis_ab8bd700-2c9c-4e29-a425-83d4f54e5a2a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsDomain_255c6c69-f0ef-43d1-9bd2-05c5a0feca11" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DividendsDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DividendsAxis_ab8bd700-2c9c-4e29-a425-83d4f54e5a2a" xlink:to="loc_us-gaap_DividendsDomain_255c6c69-f0ef-43d1-9bd2-05c5a0feca11" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DividendsDeclaredAndPaid1Member_bc46a4f8-7174-4db4-9237-0e4a3a19e6ad" xlink:href="ibp-20221231.xsd#ibp_DividendsDeclaredAndPaid1Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DividendsDomain_255c6c69-f0ef-43d1-9bd2-05c5a0feca11" xlink:to="loc_ibp_DividendsDeclaredAndPaid1Member_bc46a4f8-7174-4db4-9237-0e4a3a19e6ad" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DividendsDeclaredAndPaid2Member_b176decd-7921-4372-aa03-cc492e8970d1" xlink:href="ibp-20221231.xsd#ibp_DividendsDeclaredAndPaid2Member"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DividendsDomain_255c6c69-f0ef-43d1-9bd2-05c5a0feca11" xlink:to="loc_ibp_DividendsDeclaredAndPaid2Member_b176decd-7921-4372-aa03-cc492e8970d1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsPayableLineItems_82e5e588-ee7a-49c4-a902-a63cef503b62" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DividendsPayableLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DividendsPayableTable_6dc5b072-446b-4911-b223-c7c2fa8204be" xlink:to="loc_us-gaap_DividendsPayableLineItems_82e5e588-ee7a-49c4-a902-a63cef503b62" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockDividendsPerShareDeclared_aab92f48-a0fa-4dc0-b335-7398393f3388" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockDividendsPerShareDeclared"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DividendsPayableLineItems_82e5e588-ee7a-49c4-a902-a63cef503b62" xlink:to="loc_us-gaap_CommonStockDividendsPerShareDeclared_aab92f48-a0fa-4dc0-b335-7398393f3388" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsCommonStockCash_af96eb22-9f72-42d6-9b1f-c60167265b9f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DividendsCommonStockCash"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DividendsPayableLineItems_82e5e588-ee7a-49c4-a902-a63cef503b62" xlink:to="loc_us-gaap_DividendsCommonStockCash_af96eb22-9f72-42d6-9b1f-c60167265b9f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfDividends_d424d81c-a8e4-422a-b293-e7d7e541eb32" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfDividends"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DividendsPayableLineItems_82e5e588-ee7a-49c4-a902-a63cef503b62" xlink:to="loc_us-gaap_PaymentsOfDividends_d424d81c-a8e4-422a-b293-e7d7e541eb32" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#EmployeeBenefitsAdditionalInformationDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_33b98a83-2ead-4e76-ae36-4dd6c737495c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsTable_75775416-2252-4985-9f2b-06063909ab61" xlink:href="ibp-20221231.xsd#ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_33b98a83-2ead-4e76-ae36-4dd6c737495c" xlink:to="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsTable_75775416-2252-4985-9f2b-06063909ab61" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_74221af7-815f-4bec-ae62-4d91cd1ccb38" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsTable_75775416-2252-4985-9f2b-06063909ab61" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_74221af7-815f-4bec-ae62-4d91cd1ccb38" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_e507a226-fabf-463c-ab7f-a7e27d26f25a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeAxis_74221af7-815f-4bec-ae62-4d91cd1ccb38" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_e507a226-fabf-463c-ab7f-a7e27d26f25a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_fded9bc1-9e7b-4d7a-8296-f16840041dd2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPostretirementHealthCoverageMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_e507a226-fabf-463c-ab7f-a7e27d26f25a" xlink:to="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_fded9bc1-9e7b-4d7a-8296-f16840041dd2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_109aac9a-d6cd-48c9-ae18-6c8b0f8d491f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsTable_75775416-2252-4985-9f2b-06063909ab61" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_109aac9a-d6cd-48c9-ae18-6c8b0f8d491f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_6cff5c7e-6692-4500-b658-958cdc52e249" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_109aac9a-d6cd-48c9-ae18-6c8b0f8d491f" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_6cff5c7e-6692-4500-b658-958cdc52e249" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfSalesMember_2f673efa-9fda-4e1d-8e66-5d993f8eb481" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfSalesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_6cff5c7e-6692-4500-b658-958cdc52e249" xlink:to="loc_us-gaap_CostOfSalesMember_2f673efa-9fda-4e1d-8e66-5d993f8eb481" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_TitleOfIndividualAxis_bba55a9f-b99e-4d72-92c3-440abb8ad021" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsTable_75775416-2252-4985-9f2b-06063909ab61" xlink:to="loc_srt_TitleOfIndividualAxis_bba55a9f-b99e-4d72-92c3-440abb8ad021" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_8f66d9b9-e1aa-4f1e-822e-cd4e766636fe" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_TitleOfIndividualAxis_bba55a9f-b99e-4d72-92c3-440abb8ad021" xlink:to="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_8f66d9b9-e1aa-4f1e-822e-cd4e766636fe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_DirectorMember_3610857b-8fdd-410c-9cf5-e36aae6b707b" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_DirectorMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_8f66d9b9-e1aa-4f1e-822e-cd4e766636fe" xlink:to="loc_srt_DirectorMember_3610857b-8fdd-410c-9cf5-e36aae6b707b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_OfficerMember_b381141c-598e-4cde-b8b2-22973963c0f9" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_OfficerMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_8f66d9b9-e1aa-4f1e-822e-cd4e766636fe" xlink:to="loc_srt_OfficerMember_b381141c-598e-4cde-b8b2-22973963c0f9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CertainEmployeesMember_99ef7dc0-6131-462f-a13c-4494c2a65cc9" xlink:href="ibp-20221231.xsd#ibp_CertainEmployeesMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_8f66d9b9-e1aa-4f1e-822e-cd4e766636fe" xlink:to="loc_ibp_CertainEmployeesMember_99ef7dc0-6131-462f-a13c-4494c2a65cc9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_9a2e6bbd-3fe5-4292-8d92-469d9eac196c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsTable_75775416-2252-4985-9f2b-06063909ab61" xlink:to="loc_us-gaap_AwardTypeAxis_9a2e6bbd-3fe5-4292-8d92-469d9eac196c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_ae9f01ff-4f82-4bc1-a42b-f4631aa70a8a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_9a2e6bbd-3fe5-4292-8d92-469d9eac196c" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_ae9f01ff-4f82-4bc1-a42b-f4631aa70a8a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_PerformanceBasedAwardsMember_fd5f4fa0-9b55-49b6-9ba8-52b7e3ce00ff" xlink:href="ibp-20221231.xsd#ibp_PerformanceBasedAwardsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_ae9f01ff-4f82-4bc1-a42b-f4631aa70a8a" xlink:to="loc_ibp_PerformanceBasedAwardsMember_fd5f4fa0-9b55-49b6-9ba8-52b7e3ce00ff" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_LiabilityPerformanceBasedStockAwardsMember_52484766-58f7-45d4-9d37-96e687fd33fe" xlink:href="ibp-20221231.xsd#ibp_LiabilityPerformanceBasedStockAwardsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_ae9f01ff-4f82-4bc1-a42b-f4631aa70a8a" xlink:to="loc_ibp_LiabilityPerformanceBasedStockAwardsMember_52484766-58f7-45d4-9d37-96e687fd33fe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_PerformanceBasedRestrictedStockUnitsMember_e9c00145-fb3d-48df-bb80-773dd99734f4" xlink:href="ibp-20221231.xsd#ibp_PerformanceBasedRestrictedStockUnitsMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_ae9f01ff-4f82-4bc1-a42b-f4631aa70a8a" xlink:to="loc_ibp_PerformanceBasedRestrictedStockUnitsMember_e9c00145-fb3d-48df-bb80-773dd99734f4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeStockOptionMember_4d54bc39-6496-4d35-8b9e-f605c202564c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeStockOptionMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_ae9f01ff-4f82-4bc1-a42b-f4631aa70a8a" xlink:to="loc_us-gaap_EmployeeStockOptionMember_4d54bc39-6496-4d35-8b9e-f605c202564c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_570e0286-8b32-43f8-9717-dcae472fe36a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsTable_75775416-2252-4985-9f2b-06063909ab61" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_570e0286-8b32-43f8-9717-dcae472fe36a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_f116aa9a-f08c-49de-8dec-eb6d254efc2c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_570e0286-8b32-43f8-9717-dcae472fe36a" xlink:to="loc_us-gaap_EquityComponentDomain_f116aa9a-f08c-49de-8dec-eb6d254efc2c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_dda731de-6292-443e-bca0-ad5a1a58d603" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_f116aa9a-f08c-49de-8dec-eb6d254efc2c" xlink:to="loc_us-gaap_CommonStockMember_dda731de-6292-443e-bca0-ad5a1a58d603" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameAxis_1e26b11b-6e35-4581-b32f-73554ce30ce0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameAxis"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsTable_75775416-2252-4985-9f2b-06063909ab61" xlink:to="loc_us-gaap_PlanNameAxis_1e26b11b-6e35-4581-b32f-73554ce30ce0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_4121df9a-1690-4cd5-8db1-392bc55f5381" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameAxis_1e26b11b-6e35-4581-b32f-73554ce30ce0" xlink:to="loc_us-gaap_PlanNameDomain_4121df9a-1690-4cd5-8db1-392bc55f5381" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember_e260afc7-54fb-4002-9997-6525d115c02c" xlink:href="ibp-20221231.xsd#ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameDomain_4121df9a-1690-4cd5-8db1-392bc55f5381" xlink:to="loc_ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember_e260afc7-54fb-4002-9997-6525d115c02c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VestingAxis_8161f61c-8925-4bf6-8d4d-a54cc5099948" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VestingAxis"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsTable_75775416-2252-4985-9f2b-06063909ab61" xlink:to="loc_us-gaap_VestingAxis_8161f61c-8925-4bf6-8d4d-a54cc5099948" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VestingDomain_93a2d365-689f-4706-9288-2d692aed3133" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VestingDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VestingAxis_8161f61c-8925-4bf6-8d4d-a54cc5099948" xlink:to="loc_us-gaap_VestingDomain_93a2d365-689f-4706-9288-2d692aed3133" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationAwardTrancheOneMember_9084e135-e923-4e20-9208-e959f1eba3e6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationAwardTrancheOneMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VestingDomain_93a2d365-689f-4706-9288-2d692aed3133" xlink:to="loc_us-gaap_ShareBasedCompensationAwardTrancheOneMember_9084e135-e923-4e20-9208-e959f1eba3e6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationAwardTrancheTwoMember_9a2060bd-3b46-4471-b20d-418cf0438c3e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationAwardTrancheTwoMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VestingDomain_93a2d365-689f-4706-9288-2d692aed3133" xlink:to="loc_us-gaap_ShareBasedCompensationAwardTrancheTwoMember_9a2060bd-3b46-4471-b20d-418cf0438c3e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationAwardTrancheThreeMember_fe2b8ea0-187a-4026-a5bb-60d0d455a776" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationAwardTrancheThreeMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VestingDomain_93a2d365-689f-4706-9288-2d692aed3133" xlink:to="loc_us-gaap_ShareBasedCompensationAwardTrancheThreeMember_fe2b8ea0-187a-4026-a5bb-60d0d455a776" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems_b6849d2a-bd96-42d6-94b0-958cb229516a" xlink:href="ibp-20221231.xsd#ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsTable_75775416-2252-4985-9f2b-06063909ab61" xlink:to="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems_b6849d2a-bd96-42d6-94b0-958cb229516a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_HealthInsuranceExpense_88d51373-14a2-4b4c-925f-ffe4bd4fa359" xlink:href="ibp-20221231.xsd#ibp_HealthInsuranceExpense"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems_b6849d2a-bd96-42d6-94b0-958cb229516a" xlink:to="loc_ibp_HealthInsuranceExpense_88d51373-14a2-4b4c-925f-ffe4bd4fa359" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_35bccd20-1640-48e1-a1d7-ecd254e9447f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems_b6849d2a-bd96-42d6-94b0-958cb229516a" xlink:to="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_35bccd20-1640-48e1-a1d7-ecd254e9447f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_WorkersCompensationExpense_c289ffca-537e-4076-8100-a0606ebb671d" xlink:href="ibp-20221231.xsd#ibp_WorkersCompensationExpense"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems_b6849d2a-bd96-42d6-94b0-958cb229516a" xlink:to="loc_ibp_WorkersCompensationExpense_c289ffca-537e-4076-8100-a0606ebb671d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedContributionPlanAdministrativeExpenses_bc26443f-5821-4908-aa2c-c2ee943c9e3d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedContributionPlanAdministrativeExpenses"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems_b6849d2a-bd96-42d6-94b0-958cb229516a" xlink:to="loc_us-gaap_DefinedContributionPlanAdministrativeExpenses_bc26443f-5821-4908-aa2c-c2ee943c9e3d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_9508ff69-d9e7-4d62-89b7-20aa10cbf052" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems_b6849d2a-bd96-42d6-94b0-958cb229516a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_9508ff69-d9e7-4d62-89b7-20aa10cbf052" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_7efcf632-8b9c-47ff-9180-c1007771211a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems_b6849d2a-bd96-42d6-94b0-958cb229516a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_7efcf632-8b9c-47ff-9180-c1007771211a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfEqualInstallmentsForVestingOfStockAwards_d6afac4f-a35c-4179-9162-480daab844f3" xlink:href="ibp-20221231.xsd#ibp_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfEqualInstallmentsForVestingOfStockAwards"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems_b6849d2a-bd96-42d6-94b0-958cb229516a" xlink:to="loc_ibp_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfEqualInstallmentsForVestingOfStockAwards_d6afac4f-a35c-4179-9162-480daab844f3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_515c8809-288e-4ae1-8f1c-750fcff1e118" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems_b6849d2a-bd96-42d6-94b0-958cb229516a" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_515c8809-288e-4ae1-8f1c-750fcff1e118" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_577eac4f-198e-4265-8e6a-f2b3390cb502" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems_b6849d2a-bd96-42d6-94b0-958cb229516a" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_577eac4f-198e-4265-8e6a-f2b3390cb502" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_4ce84d27-918b-4277-ac29-7ecb78b17e44" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems_b6849d2a-bd96-42d6-94b0-958cb229516a" xlink:to="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_4ce84d27-918b-4277-ac29-7ecb78b17e44" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_26235bcd-5615-4178-a77b-06a36b3ba551" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems_b6849d2a-bd96-42d6-94b0-958cb229516a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_26235bcd-5615-4178-a77b-06a36b3ba551" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_a8214fc1-16d9-412a-abef-2d5fc5ad08c5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems_b6849d2a-bd96-42d6-94b0-958cb229516a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_a8214fc1-16d9-412a-abef-2d5fc5ad08c5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofWorkersCompensationKnownClaimsandIBNRReservesDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#EmployeeBenefitsSummaryofWorkersCompensationKnownClaimsandIBNRReservesDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofWorkersCompensationKnownClaimsandIBNRReservesDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_2832e4bc-7de5-43f4-ac36-f0b0c69a50e1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WorkersCompensationLiabilityCurrent_1e969c71-d8ce-41ad-b3de-2bc8e6c9d717" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WorkersCompensationLiabilityCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_2832e4bc-7de5-43f4-ac36-f0b0c69a50e1" xlink:to="loc_us-gaap_WorkersCompensationLiabilityCurrent_1e969c71-d8ce-41ad-b3de-2bc8e6c9d717" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WorkersCompensationLiabilityNoncurrent_68a7ae8b-f5c3-425a-9718-b5a029332caa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WorkersCompensationLiabilityNoncurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_2832e4bc-7de5-43f4-ac36-f0b0c69a50e1" xlink:to="loc_us-gaap_WorkersCompensationLiabilityNoncurrent_68a7ae8b-f5c3-425a-9718-b5a029332caa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WorkersCompensationLiabilityCurrentAndNoncurrent_386c43c9-04d2-40ac-81e2-841b2daf8d00" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WorkersCompensationLiabilityCurrentAndNoncurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_2832e4bc-7de5-43f4-ac36-f0b0c69a50e1" xlink:to="loc_us-gaap_WorkersCompensationLiabilityCurrentAndNoncurrent_386c43c9-04d2-40ac-81e2-841b2daf8d00" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/EmployeeBenefitsScheduleofInsuranceReceivableforClaimsDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#EmployeeBenefitsScheduleofInsuranceReceivableforClaimsDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/EmployeeBenefitsScheduleofInsuranceReceivableforClaimsDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_aa820298-3191-4cc4-bdd8-fa7078104aa0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InsuranceSettlementsReceivableNoncurrent_ce092f02-925d-45b4-ade5-11eb1c540097" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InsuranceSettlementsReceivableNoncurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_aa820298-3191-4cc4-bdd8-fa7078104aa0" xlink:to="loc_us-gaap_InsuranceSettlementsReceivableNoncurrent_ce092f02-925d-45b4-ade5-11eb1c540097" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/EmployeeBenefitsContributionstoMultiemployerPensionsandHealthandWelfareBenefitPlansDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#EmployeeBenefitsContributionstoMultiemployerPensionsandHealthandWelfareBenefitPlansDetails"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/EmployeeBenefitsContributionstoMultiemployerPensionsandHealthandWelfareBenefitPlansDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_bf9766ae-6192-4f90-b565-a7dbf4a1b021" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfMultiemployerPlansTable_26c15bcb-5656-4715-a26a-60f1f5482270" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfMultiemployerPlansTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_bf9766ae-6192-4f90-b565-a7dbf4a1b021" xlink:to="loc_us-gaap_ScheduleOfMultiemployerPlansTable_26c15bcb-5656-4715-a26a-60f1f5482270" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_db073168-21a5-4904-99bb-a97f48a0b5b5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfMultiemployerPlansTable_26c15bcb-5656-4715-a26a-60f1f5482270" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_db073168-21a5-4904-99bb-a97f48a0b5b5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_5bb65361-e766-4521-a0c3-b8b452c6470f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeAxis_db073168-21a5-4904-99bb-a97f48a0b5b5" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_5bb65361-e766-4521-a0c3-b8b452c6470f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionPlansDefinedBenefitMember_ee87e9d3-3922-4144-b9f6-a0a9abb14737" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PensionPlansDefinedBenefitMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_5bb65361-e766-4521-a0c3-b8b452c6470f" xlink:to="loc_us-gaap_PensionPlansDefinedBenefitMember_ee87e9d3-3922-4144-b9f6-a0a9abb14737" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_b80c1b63-dd57-4b65-8978-0d315549ab6b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPostretirementHealthCoverageMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_5bb65361-e766-4521-a0c3-b8b452c6470f" xlink:to="loc_us-gaap_DefinedBenefitPostretirementHealthCoverageMember_b80c1b63-dd57-4b65-8978-0d315549ab6b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MultiemployerPlansLineItems_2aa42e9d-9c8a-452f-bc7a-0319067fa9a1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MultiemployerPlansLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfMultiemployerPlansTable_26c15bcb-5656-4715-a26a-60f1f5482270" xlink:to="loc_us-gaap_MultiemployerPlansLineItems_2aa42e9d-9c8a-452f-bc7a-0319067fa9a1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MultiemployerPlanEmployerContributionCost_2785f1bf-b332-4a35-8414-6afb5b959c3c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MultiemployerPlanEmployerContributionCost"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MultiemployerPlansLineItems_2aa42e9d-9c8a-452f-bc7a-0319067fa9a1" xlink:to="loc_us-gaap_MultiemployerPlanEmployerContributionCost_2785f1bf-b332-4a35-8414-6afb5b959c3c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_80cf2f72-d7a8-4a33-8e62-3103f7104e5c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_83e8e987-8549-4b80-befc-a7b30f314227" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_80cf2f72-d7a8-4a33-8e62-3103f7104e5c" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_83e8e987-8549-4b80-befc-a7b30f314227" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_b7db6ac9-e7a1-4714-b524-d4f46fcc1eeb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_83e8e987-8549-4b80-befc-a7b30f314227" xlink:to="loc_us-gaap_AwardTypeAxis_b7db6ac9-e7a1-4714-b524-d4f46fcc1eeb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_83fbef71-0226-41cc-af2a-fa2c56a312a3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_b7db6ac9-e7a1-4714-b524-d4f46fcc1eeb" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_83fbef71-0226-41cc-af2a-fa2c56a312a3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CommonStockAwardsMember_675ac2e5-bd08-4aca-8cbe-0430f7c28b57" xlink:href="ibp-20221231.xsd#ibp_CommonStockAwardsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_83fbef71-0226-41cc-af2a-fa2c56a312a3" xlink:to="loc_ibp_CommonStockAwardsMember_675ac2e5-bd08-4aca-8cbe-0430f7c28b57" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_PerformanceBasedAwardsMember_1c1be737-12d8-447c-b592-52240d0e56b9" xlink:href="ibp-20221231.xsd#ibp_PerformanceBasedAwardsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_83fbef71-0226-41cc-af2a-fa2c56a312a3" xlink:to="loc_ibp_PerformanceBasedAwardsMember_1c1be737-12d8-447c-b592-52240d0e56b9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_PerformanceBasedStockUnitsMember_5f9bf8df-a3e5-4665-965c-63229522e767" xlink:href="ibp-20221231.xsd#ibp_PerformanceBasedStockUnitsMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_83fbef71-0226-41cc-af2a-fa2c56a312a3" xlink:to="loc_ibp_PerformanceBasedStockUnitsMember_5f9bf8df-a3e5-4665-965c-63229522e767" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1c182551-0339-4dfe-a5c2-6d7670b2c6f1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_83e8e987-8549-4b80-befc-a7b30f314227" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1c182551-0339-4dfe-a5c2-6d7670b2c6f1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_9c253faf-59b0-4b9b-98af-c3edd0e4246d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1c182551-0339-4dfe-a5c2-6d7670b2c6f1" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_9c253faf-59b0-4b9b-98af-c3edd0e4246d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_09934a7c-ae92-4efb-8321-3c00fa19ff66" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_9c253faf-59b0-4b9b-98af-c3edd0e4246d" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_09934a7c-ae92-4efb-8321-3c00fa19ff66" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_550e0642-b322-41e0-b028-f3b7d1f6787c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_9c253faf-59b0-4b9b-98af-c3edd0e4246d" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_550e0642-b322-41e0-b028-f3b7d1f6787c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares_9b052314-43d4-4ee5-a97f-0a540fad0fa2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_9c253faf-59b0-4b9b-98af-c3edd0e4246d" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares_9b052314-43d4-4ee5-a97f-0a540fad0fa2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares_c1e81f30-f2d7-42ff-b0bc-77def7ec1761" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_9c253faf-59b0-4b9b-98af-c3edd0e4246d" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares_c1e81f30-f2d7-42ff-b0bc-77def7ec1761" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_a703b1a0-11e8-4b2a-b6af-b17a274631de" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_9c253faf-59b0-4b9b-98af-c3edd0e4246d" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_a703b1a0-11e8-4b2a-b6af-b17a274631de" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueAbstract_a18f8cbe-c8e6-4c76-b23f-e4f55b6cb3db" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1c182551-0339-4dfe-a5c2-6d7670b2c6f1" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueAbstract_a18f8cbe-c8e6-4c76-b23f-e4f55b6cb3db" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_451dcefd-f656-467f-8563-76418fd628e5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueAbstract_a18f8cbe-c8e6-4c76-b23f-e4f55b6cb3db" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_451dcefd-f656-467f-8563-76418fd628e5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_ec295337-5b96-44cc-8114-afb7275f39b6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueAbstract_a18f8cbe-c8e6-4c76-b23f-e4f55b6cb3db" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_ec295337-5b96-44cc-8114-afb7275f39b6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue_4cd0ce91-1f2f-4732-9483-535b3fe7a805" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueAbstract_a18f8cbe-c8e6-4c76-b23f-e4f55b6cb3db" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue_4cd0ce91-1f2f-4732-9483-535b3fe7a805" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue_bacb301f-3bdf-4e6a-afdb-d47eb3be0f67" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueAbstract_a18f8cbe-c8e6-4c76-b23f-e4f55b6cb3db" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue_bacb301f-3bdf-4e6a-afdb-d47eb3be0f67" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_d836370f-ff0a-4884-a13b-42afa8af0b35" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueAbstract_a18f8cbe-c8e6-4c76-b23f-e4f55b6cb3db" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_d836370f-ff0a-4884-a13b-42afa8af0b35" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_ac357c90-2f11-440b-b11c-a92471f286a3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1c182551-0339-4dfe-a5c2-6d7670b2c6f1" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_ac357c90-2f11-440b-b11c-a92471f286a3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_825e289b-dab7-4974-a53d-57e78d65cbad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_ac357c90-2f11-440b-b11c-a92471f286a3" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_825e289b-dab7-4974-a53d-57e78d65cbad" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_36fa7458-db81-49e1-b56b-d0c9d1897904" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_ac357c90-2f11-440b-b11c-a92471f286a3" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_36fa7458-db81-49e1-b56b-d0c9d1897904" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_967126d6-7563-4768-b06f-2f8a40599589" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_ac357c90-2f11-440b-b11c-a92471f286a3" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_967126d6-7563-4768-b06f-2f8a40599589" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_b7d8c9a7-20d3-4b32-82a3-679b17800dbc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_ac357c90-2f11-440b-b11c-a92471f286a3" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_b7d8c9a7-20d3-4b32-82a3-679b17800dbc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_70a79feb-93f2-4a5f-93c8-e0076211b313" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_ac357c90-2f11-440b-b11c-a92471f286a3" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_70a79feb-93f2-4a5f-93c8-e0076211b313" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_0ee49fa4-b260-4d9d-bf7b-90397117ab80" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_1c182551-0339-4dfe-a5c2-6d7670b2c6f1" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_0ee49fa4-b260-4d9d-bf7b-90397117ab80" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_2b542389-3fe6-4d30-983b-bec579c9e189" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_0ee49fa4-b260-4d9d-bf7b-90397117ab80" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_2b542389-3fe6-4d30-983b-bec579c9e189" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_b425f343-e340-427c-a20c-9424d67bd2b6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_0ee49fa4-b260-4d9d-bf7b-90397117ab80" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_b425f343-e340-427c-a20c-9424d67bd2b6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_11a0c228-aa6f-415f-bf53-840434927e8e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_0ee49fa4-b260-4d9d-bf7b-90397117ab80" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_11a0c228-aa6f-415f-bf53-840434927e8e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_bb8286c0-132b-41be-a714-4ace819dd1a0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_0ee49fa4-b260-4d9d-bf7b-90397117ab80" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_bb8286c0-132b-41be-a714-4ace819dd1a0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_ca180b9e-d813-400c-b094-78b943407326" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_0ee49fa4-b260-4d9d-bf7b-90397117ab80" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_ca180b9e-d813-400c-b094-78b943407326" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_510d5980-7939-478e-8767-bbcc4b86f05b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_f1de1ca4-ea02-4b12-93c4-145c1b389b0e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_510d5980-7939-478e-8767-bbcc4b86f05b" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_f1de1ca4-ea02-4b12-93c4-145c1b389b0e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameAxis_9f12563d-7882-482e-afde-68ef85e1b315" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_f1de1ca4-ea02-4b12-93c4-145c1b389b0e" xlink:to="loc_us-gaap_PlanNameAxis_9f12563d-7882-482e-afde-68ef85e1b315" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_18d8dde7-c1ee-4bf6-8261-9ae7ba783b91" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameAxis_9f12563d-7882-482e-afde-68ef85e1b315" xlink:to="loc_us-gaap_PlanNameDomain_18d8dde7-c1ee-4bf6-8261-9ae7ba783b91" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember_7c64993c-c201-4a49-9662-116be5832995" xlink:href="ibp-20221231.xsd#ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameDomain_18d8dde7-c1ee-4bf6-8261-9ae7ba783b91" xlink:to="loc_ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember_7c64993c-c201-4a49-9662-116be5832995" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_2d57c3dc-e197-4d27-838b-d5ec8928a94a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_f1de1ca4-ea02-4b12-93c4-145c1b389b0e" xlink:to="loc_us-gaap_AwardTypeAxis_2d57c3dc-e197-4d27-838b-d5ec8928a94a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_69dfa4f0-16f9-4e0a-90ea-4098514bff0d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_2d57c3dc-e197-4d27-838b-d5ec8928a94a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_69dfa4f0-16f9-4e0a-90ea-4098514bff0d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CommonStockAwardsMember_f1a4c1c6-2709-42f8-a7f3-6a9c63bdf171" xlink:href="ibp-20221231.xsd#ibp_CommonStockAwardsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_69dfa4f0-16f9-4e0a-90ea-4098514bff0d" xlink:to="loc_ibp_CommonStockAwardsMember_f1a4c1c6-2709-42f8-a7f3-6a9c63bdf171" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_PerformanceBasedAwardsMember_99553d88-dd9b-49a6-87b7-14662d977406" xlink:href="ibp-20221231.xsd#ibp_PerformanceBasedAwardsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_69dfa4f0-16f9-4e0a-90ea-4098514bff0d" xlink:to="loc_ibp_PerformanceBasedAwardsMember_99553d88-dd9b-49a6-87b7-14662d977406" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_LiabilityPerformanceBasedStockAwardsMember_fad37428-c6b1-4fff-9a3f-1d2b877588e3" xlink:href="ibp-20221231.xsd#ibp_LiabilityPerformanceBasedStockAwardsMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_69dfa4f0-16f9-4e0a-90ea-4098514bff0d" xlink:to="loc_ibp_LiabilityPerformanceBasedStockAwardsMember_fad37428-c6b1-4fff-9a3f-1d2b877588e3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_PerformanceBasedRestrictedStockUnitsMember_9339229d-a80b-406e-98be-05c337a329f7" xlink:href="ibp-20221231.xsd#ibp_PerformanceBasedRestrictedStockUnitsMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_69dfa4f0-16f9-4e0a-90ea-4098514bff0d" xlink:to="loc_ibp_PerformanceBasedRestrictedStockUnitsMember_9339229d-a80b-406e-98be-05c337a329f7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GranteeStatusAxis_bb2ccd1d-4af4-4dd5-9f62-f987ea7d29e2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GranteeStatusAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_f1de1ca4-ea02-4b12-93c4-145c1b389b0e" xlink:to="loc_us-gaap_GranteeStatusAxis_bb2ccd1d-4af4-4dd5-9f62-f987ea7d29e2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GranteeStatusDomain_63c9a0e3-e3af-4f1c-bb06-e0da5a1918e5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GranteeStatusDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GranteeStatusAxis_bb2ccd1d-4af4-4dd5-9f62-f987ea7d29e2" xlink:to="loc_us-gaap_GranteeStatusDomain_63c9a0e3-e3af-4f1c-bb06-e0da5a1918e5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedPaymentArrangementNonemployeeMember_b9f6b6c4-9541-45a1-a952-59f5879316e1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedPaymentArrangementNonemployeeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GranteeStatusDomain_63c9a0e3-e3af-4f1c-bb06-e0da5a1918e5" xlink:to="loc_us-gaap_ShareBasedPaymentArrangementNonemployeeMember_b9f6b6c4-9541-45a1-a952-59f5879316e1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_a116d1d9-1705-461d-b896-82464ee16dce" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_f1de1ca4-ea02-4b12-93c4-145c1b389b0e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_a116d1d9-1705-461d-b896-82464ee16dce" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_40b756d1-2a1d-4d58-972c-8fd769e989db" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_a116d1d9-1705-461d-b896-82464ee16dce" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpense_40b756d1-2a1d-4d58-972c-8fd769e989db" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofStockCompensationExpenseDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#EmployeeBenefitsSummaryofStockCompensationExpenseDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofStockCompensationExpenseDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_9effab18-7d02-4f93-9093-905ce5148988" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_e4ff8a89-e7e3-4c89-95d3-170fc92d6333" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_9effab18-7d02-4f93-9093-905ce5148988" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_e4ff8a89-e7e3-4c89-95d3-170fc92d6333" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_e6ff668d-383c-403f-8ccc-81e49fbde977" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_e4ff8a89-e7e3-4c89-95d3-170fc92d6333" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_e6ff668d-383c-403f-8ccc-81e49fbde977" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_455b0e20-315c-4e6d-a864-4e20e2b56d22" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_e6ff668d-383c-403f-8ccc-81e49fbde977" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_455b0e20-315c-4e6d-a864-4e20e2b56d22" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfSalesMember_1b21690b-833e-46d5-819c-4b54b7f391bf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfSalesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_455b0e20-315c-4e6d-a864-4e20e2b56d22" xlink:to="loc_us-gaap_CostOfSalesMember_1b21690b-833e-46d5-819c-4b54b7f391bf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingAndMarketingExpenseMember_1c4972e6-d1d9-4489-911a-fb9e233c961d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingAndMarketingExpenseMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_455b0e20-315c-4e6d-a864-4e20e2b56d22" xlink:to="loc_us-gaap_SellingAndMarketingExpenseMember_1c4972e6-d1d9-4489-911a-fb9e233c961d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpenseMember_4af4123e-8b93-451d-8bdd-b81860aef023" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GeneralAndAdministrativeExpenseMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_455b0e20-315c-4e6d-a864-4e20e2b56d22" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpenseMember_4af4123e-8b93-451d-8bdd-b81860aef023" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7d712857-cef0-41dd-bf25-2d68fc11878a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_e4ff8a89-e7e3-4c89-95d3-170fc92d6333" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7d712857-cef0-41dd-bf25-2d68fc11878a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_92c1a78e-e77a-4735-a244-6cbfb260cfbd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7d712857-cef0-41dd-bf25-2d68fc11878a" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpense_92c1a78e-e77a-4735-a244-6cbfb260cfbd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/EmployeeBenefitsUnrecognizedShareBasedCompensationExpenseRelatedtoUnvestedAwardsDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#EmployeeBenefitsUnrecognizedShareBasedCompensationExpenseRelatedtoUnvestedAwardsDetails"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/EmployeeBenefitsUnrecognizedShareBasedCompensationExpenseRelatedtoUnvestedAwardsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_8a6c4443-a885-4c01-a13d-19340f0f035c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_efbe5d5c-fb26-4820-9ddb-40349a8e6acd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_8a6c4443-a885-4c01-a13d-19340f0f035c" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_efbe5d5c-fb26-4820-9ddb-40349a8e6acd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_49e4e71d-1315-4d4e-af22-4aece46b2b40" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_efbe5d5c-fb26-4820-9ddb-40349a8e6acd" xlink:to="loc_us-gaap_AwardTypeAxis_49e4e71d-1315-4d4e-af22-4aece46b2b40" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_d2ba0457-cf4c-4b12-95d6-fcd1fcf36308" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_49e4e71d-1315-4d4e-af22-4aece46b2b40" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_d2ba0457-cf4c-4b12-95d6-fcd1fcf36308" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CommonStockAwardsMember_ae34d5a3-117e-4c32-a09c-38e2830f4316" xlink:href="ibp-20221231.xsd#ibp_CommonStockAwardsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_d2ba0457-cf4c-4b12-95d6-fcd1fcf36308" xlink:to="loc_ibp_CommonStockAwardsMember_ae34d5a3-117e-4c32-a09c-38e2830f4316" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_PerformanceBasedAwardsMember_967571a2-67f5-404a-832e-b2dddf05e993" xlink:href="ibp-20221231.xsd#ibp_PerformanceBasedAwardsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_d2ba0457-cf4c-4b12-95d6-fcd1fcf36308" xlink:to="loc_ibp_PerformanceBasedAwardsMember_967571a2-67f5-404a-832e-b2dddf05e993" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_PerformanceBasedRestrictedStockUnitsMember_8f9473de-a228-4c7e-bf59-0cd5e5f9ccdf" xlink:href="ibp-20221231.xsd#ibp_PerformanceBasedRestrictedStockUnitsMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_d2ba0457-cf4c-4b12-95d6-fcd1fcf36308" xlink:to="loc_ibp_PerformanceBasedRestrictedStockUnitsMember_8f9473de-a228-4c7e-bf59-0cd5e5f9ccdf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_fee185b2-8d76-4426-8960-56ab4e2df239" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_efbe5d5c-fb26-4820-9ddb-40349a8e6acd" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_fee185b2-8d76-4426-8960-56ab4e2df239" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_f4ea8f15-528c-4218-8cd8-bfce69e7c9af" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_fee185b2-8d76-4426-8960-56ab4e2df239" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_f4ea8f15-528c-4218-8cd8-bfce69e7c9af" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_d81babc2-bd8b-4392-8933-a17ababda9a4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_fee185b2-8d76-4426-8960-56ab4e2df239" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_d81babc2-bd8b-4392-8933-a17ababda9a4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/IncomeTaxesProvisionforIncomeTaxesDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#IncomeTaxesProvisionforIncomeTaxesDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/IncomeTaxesProvisionforIncomeTaxesDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_ff362b88-48c2-4b47-a562-94f37271bc92" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_6bc68415-c6a9-49bd-b5c6-8b8809c9d85d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_ff362b88-48c2-4b47-a562-94f37271bc92" xlink:to="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_6bc68415-c6a9-49bd-b5c6-8b8809c9d85d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentFederalTaxExpenseBenefit_02082818-0541-4c53-aa01-7e2d7c3cc120" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentFederalTaxExpenseBenefit"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_6bc68415-c6a9-49bd-b5c6-8b8809c9d85d" xlink:to="loc_us-gaap_CurrentFederalTaxExpenseBenefit_02082818-0541-4c53-aa01-7e2d7c3cc120" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_01910f99-0929-4d2d-bdc6-115f8ea4b213" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_6bc68415-c6a9-49bd-b5c6-8b8809c9d85d" xlink:to="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_01910f99-0929-4d2d-bdc6-115f8ea4b213" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_c0129005-2e60-4568-a9f3-e36bc871e63d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_6bc68415-c6a9-49bd-b5c6-8b8809c9d85d" xlink:to="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_c0129005-2e60-4568-a9f3-e36bc871e63d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_11a0b4b7-ddc7-416d-9266-8cad46441e15" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_ff362b88-48c2-4b47-a562-94f37271bc92" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_11a0b4b7-ddc7-416d-9266-8cad46441e15" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredFederalIncomeTaxExpenseBenefit_992050e4-8415-4afc-b4fb-23802b56a31c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredFederalIncomeTaxExpenseBenefit"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_11a0b4b7-ddc7-416d-9266-8cad46441e15" xlink:to="loc_us-gaap_DeferredFederalIncomeTaxExpenseBenefit_992050e4-8415-4afc-b4fb-23802b56a31c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_c0233d18-43b9-41da-9bd5-599ffb762128" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_11a0b4b7-ddc7-416d-9266-8cad46441e15" xlink:to="loc_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_c0233d18-43b9-41da-9bd5-599ffb762128" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_1ced53ce-39eb-4c2a-9f07-7ab1f9ce35f6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_11a0b4b7-ddc7-416d-9266-8cad46441e15" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_1ced53ce-39eb-4c2a-9f07-7ab1f9ce35f6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_89d93c6b-92a4-4f3a-afa0-a46bf99ef2ab" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_ff362b88-48c2-4b47-a562-94f37271bc92" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_89d93c6b-92a4-4f3a-afa0-a46bf99ef2ab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_2250ecb4-af08-4995-b25d-b35d221798b5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract_e5d42574-916e-4237-860a-924e5e187945" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_2250ecb4-af08-4995-b25d-b35d221798b5" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract_e5d42574-916e-4237-860a-924e5e187945" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_cb8e13a1-ff8a-4192-8c3c-576c30061149" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract_e5d42574-916e-4237-860a-924e5e187945" xlink:to="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_cb8e13a1-ff8a-4192-8c3c-576c30061149" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost_64d31abe-2aea-49f7-bcbf-f9cf98cdff4c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract_e5d42574-916e-4237-860a-924e5e187945" xlink:to="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost_64d31abe-2aea-49f7-bcbf-f9cf98cdff4c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_c5b7d685-1d69-4463-b306-8c406febb5bb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationOtherAdjustments"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract_e5d42574-916e-4237-860a-924e5e187945" xlink:to="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_c5b7d685-1d69-4463-b306-8c406febb5bb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_2b0285da-912a-4772-b832-6938296335cc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract_e5d42574-916e-4237-860a-924e5e187945" xlink:to="loc_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_2b0285da-912a-4772-b832-6938296335cc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationTaxContingencies_9df00780-ac00-42c1-8fc4-119b365af4c1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationTaxContingencies"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract_e5d42574-916e-4237-860a-924e5e187945" xlink:to="loc_us-gaap_IncomeTaxReconciliationTaxContingencies_9df00780-ac00-42c1-8fc4-119b365af4c1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_024f58ec-845a-4747-b2c2-bda6e599afdd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract_e5d42574-916e-4237-860a-924e5e187945" xlink:to="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_024f58ec-845a-4747-b2c2-bda6e599afdd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_b557e336-a76d-49f3-9d47-d34b0db78c24" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract_e5d42574-916e-4237-860a-924e5e187945" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_b557e336-a76d-49f3-9d47-d34b0db78c24" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract_cd61446b-3cd8-4c70-9b89-78c7b812d897" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_2250ecb4-af08-4995-b25d-b35d221798b5" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract_cd61446b-3cd8-4c70-9b89-78c7b812d897" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_5aeed031-8ec9-4818-b54f-32934ffc280b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract_cd61446b-3cd8-4c70-9b89-78c7b812d897" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_5aeed031-8ec9-4818-b54f-32934ffc280b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost_06373ecc-29c0-4fa1-93aa-3e11fed5eb13" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract_cd61446b-3cd8-4c70-9b89-78c7b812d897" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost_06373ecc-29c0-4fa1-93aa-3e11fed5eb13" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent_41e8b98a-7efb-44d8-bf83-fd15ccdb841a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract_cd61446b-3cd8-4c70-9b89-78c7b812d897" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent_41e8b98a-7efb-44d8-bf83-fd15ccdb841a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance_791bb841-f300-4aee-bd23-30db28350dc8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract_cd61446b-3cd8-4c70-9b89-78c7b812d897" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance_791bb841-f300-4aee-bd23-30db28350dc8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationTaxContingencies_de951767-bad4-42cc-b660-1cc1a21cb317" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationTaxContingencies"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract_cd61446b-3cd8-4c70-9b89-78c7b812d897" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationTaxContingencies_de951767-bad4-42cc-b660-1cc1a21cb317" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_2c7c1dc6-4fb1-4b5b-9170-b656464e4ed3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract_cd61446b-3cd8-4c70-9b89-78c7b812d897" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_2c7c1dc6-4fb1-4b5b-9170-b656464e4ed3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_23e9f1c3-9d47-4c43-823f-d3939fc74bed" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract_cd61446b-3cd8-4c70-9b89-78c7b812d897" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_23e9f1c3-9d47-4c43-823f-d3939fc74bed" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_0f90dfc7-b5a5-437d-aab4-5f3f73f476e6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_IncomeTaxTable_451ad819-5e5a-4906-b4a5-25c4ea82fd88" xlink:href="ibp-20221231.xsd#ibp_IncomeTaxTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_0f90dfc7-b5a5-437d-aab4-5f3f73f476e6" xlink:to="loc_ibp_IncomeTaxTable_451ad819-5e5a-4906-b4a5-25c4ea82fd88" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_07476b8a-9591-4eb5-acbc-9a7f0ff26880" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_IncomeTaxTable_451ad819-5e5a-4906-b4a5-25c4ea82fd88" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_07476b8a-9591-4eb5-acbc-9a7f0ff26880" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_8ac9efc9-97fa-4a3d-b350-c0ee446ab0cc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_07476b8a-9591-4eb5-acbc-9a7f0ff26880" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_8ac9efc9-97fa-4a3d-b350-c0ee446ab0cc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNoncurrentAssetsMember_93d63338-bb65-4be7-b7ff-dc06d9a935e5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNoncurrentAssetsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_8ac9efc9-97fa-4a3d-b350-c0ee446ab0cc" xlink:to="loc_us-gaap_OtherNoncurrentAssetsMember_93d63338-bb65-4be7-b7ff-dc06d9a935e5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DeferredIncomeTaxLiabilitiesNetMember_140ada65-e9cd-402b-ac1a-ad6c855708ab" xlink:href="ibp-20221231.xsd#ibp_DeferredIncomeTaxLiabilitiesNetMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_8ac9efc9-97fa-4a3d-b350-c0ee446ab0cc" xlink:to="loc_ibp_DeferredIncomeTaxLiabilitiesNetMember_140ada65-e9cd-402b-ac1a-ad6c855708ab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_IncomeTaxLineItems_2df82744-9c1b-4d50-9194-f4756fb7f837" xlink:href="ibp-20221231.xsd#ibp_IncomeTaxLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_IncomeTaxTable_451ad819-5e5a-4906-b4a5-25c4ea82fd88" xlink:to="loc_ibp_IncomeTaxLineItems_2df82744-9c1b-4d50-9194-f4756fb7f837" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsNetAbstract_04d86d75-7dba-419b-8209-694818e4abc1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsNetAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_IncomeTaxLineItems_2df82744-9c1b-4d50-9194-f4756fb7f837" xlink:to="loc_us-gaap_DeferredTaxAssetsNetAbstract_04d86d75-7dba-419b-8209-694818e4abc1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances_00f93a5d-10a3-4a49-b3ed-bf54c51a5c6f" xlink:href="ibp-20221231.xsd#ibp_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxAssetsNetAbstract_04d86d75-7dba-419b-8209-694818e4abc1" xlink:to="loc_ibp_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances_00f93a5d-10a3-4a49-b3ed-bf54c51a5c6f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts_1ce4f1a4-60e3-486f-ada7-31b746d28769" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxAssetsNetAbstract_04d86d75-7dba-419b-8209-694818e4abc1" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts_1ce4f1a4-60e3-486f-ada7-31b746d28769" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsInventory_db38871c-1978-48d6-bebe-3dced04ab88b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsInventory"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxAssetsNetAbstract_04d86d75-7dba-419b-8209-694818e4abc1" xlink:to="loc_us-gaap_DeferredTaxAssetsInventory_db38871c-1978-48d6-bebe-3dced04ab88b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment_f51f01dc-8561-4514-8656-4bdb9cd36d9a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxAssetsNetAbstract_04d86d75-7dba-419b-8209-694818e4abc1" xlink:to="loc_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment_f51f01dc-8561-4514-8656-4bdb9cd36d9a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets_2c30b6b1-b515-49d8-b1f5-0c160f599e8f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxAssetsNetAbstract_04d86d75-7dba-419b-8209-694818e4abc1" xlink:to="loc_us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets_2c30b6b1-b515-49d8-b1f5-0c160f599e8f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_46b578ec-74ac-4dee-b627-6e0914ec69c4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwards"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxAssetsNetAbstract_04d86d75-7dba-419b-8209-694818e4abc1" xlink:to="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_46b578ec-74ac-4dee-b627-6e0914ec69c4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsOther_4af89f1d-b4de-463e-8af4-075d1eee0647" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOther"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxAssetsNetAbstract_04d86d75-7dba-419b-8209-694818e4abc1" xlink:to="loc_us-gaap_DeferredTaxAssetsOther_4af89f1d-b4de-463e-8af4-075d1eee0647" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsGross_f30f8e17-2a3c-4daf-af5c-dc05bf2074e0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsGross"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxAssetsNetAbstract_04d86d75-7dba-419b-8209-694818e4abc1" xlink:to="loc_us-gaap_DeferredTaxAssetsGross_f30f8e17-2a3c-4daf-af5c-dc05bf2074e0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsValuationAllowance_e7b39eeb-8b9d-426e-823f-d94800659e84" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsValuationAllowance"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxAssetsNetAbstract_04d86d75-7dba-419b-8209-694818e4abc1" xlink:to="loc_us-gaap_DeferredTaxAssetsValuationAllowance_e7b39eeb-8b9d-426e-823f-d94800659e84" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsNet_6c10d27d-0bf0-48ec-834c-fc2075824247" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsNet"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxAssetsNetAbstract_04d86d75-7dba-419b-8209-694818e4abc1" xlink:to="loc_us-gaap_DeferredTaxAssetsNet_6c10d27d-0bf0-48ec-834c-fc2075824247" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesAbstract_f8abeb51-46bc-4e15-b83c-098ac4747135" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_IncomeTaxLineItems_2df82744-9c1b-4d50-9194-f4756fb7f837" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesAbstract_f8abeb51-46bc-4e15-b83c-098ac4747135" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesDeferredExpenseReservesAndAccruals_331be781-792c-4e11-9ee2-e785a200cd02" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesDeferredExpenseReservesAndAccruals"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesAbstract_f8abeb51-46bc-4e15-b83c-098ac4747135" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesDeferredExpenseReservesAndAccruals_331be781-792c-4e11-9ee2-e785a200cd02" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_f53e4df5-a58a-40a7-8817-32a5cf916a79" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesAbstract_f8abeb51-46bc-4e15-b83c-098ac4747135" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_f53e4df5-a58a-40a7-8817-32a5cf916a79" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets_a4b7aa51-b39a-4419-b742-2793c1b57c8d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesAbstract_f8abeb51-46bc-4e15-b83c-098ac4747135" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets_a4b7aa51-b39a-4419-b742-2793c1b57c8d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesInvestments_4a643475-1b2b-4cf7-b284-757294275615" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesInvestments"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesAbstract_f8abeb51-46bc-4e15-b83c-098ac4747135" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesInvestments_4a643475-1b2b-4cf7-b284-757294275615" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesOther_996be4d7-ed45-46c0-a7cb-76f720192655" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesOther"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesAbstract_f8abeb51-46bc-4e15-b83c-098ac4747135" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesOther_996be4d7-ed45-46c0-a7cb-76f720192655" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilities_095e1090-5e28-4a04-b780-2087bc07151f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxLiabilities"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesAbstract_f8abeb51-46bc-4e15-b83c-098ac4747135" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilities_095e1090-5e28-4a04-b780-2087bc07151f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTotalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxLiabilities_ba63a6ff-4460-4ea9-8397-aa3c2e400269" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilities"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesAbstract_f8abeb51-46bc-4e15-b83c-098ac4747135" xlink:to="loc_us-gaap_DeferredTaxLiabilities_ba63a6ff-4460-4ea9-8397-aa3c2e400269" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTotalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsLiabilitiesNet_454e1d6b-5a25-428a-8047-d502f9bf0483" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsLiabilitiesNet"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesAbstract_f8abeb51-46bc-4e15-b83c-098ac4747135" xlink:to="loc_us-gaap_DeferredTaxAssetsLiabilitiesNet_454e1d6b-5a25-428a-8047-d502f9bf0483" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/IncomeTaxesAdditionalInformationDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#IncomeTaxesAdditionalInformationDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/IncomeTaxesAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_66749911-6ee9-4192-aa0b-b2426f58a831" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_2d2000bd-f49d-4345-8aa1-59f7adf1eb3a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwards"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_66749911-6ee9-4192-aa0b-b2426f58a831" xlink:to="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_2d2000bd-f49d-4345-8aa1-59f7adf1eb3a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_IncomeTaxExpenseBenefitOperatingLossCarryforwards_cab90108-3b5a-4730-9ae9-7403a74d9171" xlink:href="ibp-20221231.xsd#ibp_IncomeTaxExpenseBenefitOperatingLossCarryforwards"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_66749911-6ee9-4192-aa0b-b2426f58a831" xlink:to="loc_ibp_IncomeTaxExpenseBenefitOperatingLossCarryforwards_cab90108-3b5a-4730-9ae9-7403a74d9171" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_a981b5d7-024e-46e1-810a-947fbf3d86c7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_66749911-6ee9-4192-aa0b-b2426f58a831" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_a981b5d7-024e-46e1-810a-947fbf3d86c7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_IncomeTaxTable_a97979fc-1396-4a2b-a697-e7e27bfb6d86" xlink:href="ibp-20221231.xsd#ibp_IncomeTaxTable"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_66749911-6ee9-4192-aa0b-b2426f58a831" xlink:to="loc_ibp_IncomeTaxTable_a97979fc-1396-4a2b-a697-e7e27bfb6d86" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_e369ace1-e883-4833-ae6d-821b926a50e5" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_IncomeTaxTable_a97979fc-1396-4a2b-a697-e7e27bfb6d86" xlink:to="loc_srt_RangeAxis_e369ace1-e883-4833-ae6d-821b926a50e5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_59bfee94-cf1e-47e4-96e2-5c00c1b603d2" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_e369ace1-e883-4833-ae6d-821b926a50e5" xlink:to="loc_srt_RangeMember_59bfee94-cf1e-47e4-96e2-5c00c1b603d2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_185f4184-2779-4a1a-828d-28b78b6dfd94" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_59bfee94-cf1e-47e4-96e2-5c00c1b603d2" xlink:to="loc_srt_MinimumMember_185f4184-2779-4a1a-828d-28b78b6dfd94" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_6341c4e4-d140-40f7-bcd8-fb972788648c" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_59bfee94-cf1e-47e4-96e2-5c00c1b603d2" xlink:to="loc_srt_MaximumMember_6341c4e4-d140-40f7-bcd8-fb972788648c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_IncomeTaxesLineItems_5b575f7f-d9f4-422d-a4f5-af6aac53d182" xlink:href="ibp-20221231.xsd#ibp_IncomeTaxesLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_IncomeTaxTable_a97979fc-1396-4a2b-a697-e7e27bfb6d86" xlink:to="loc_ibp_IncomeTaxesLineItems_5b575f7f-d9f4-422d-a4f5-af6aac53d182" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_UnrecognizedTaxBenefitsNetOfIncomeTaxPenaltiesAndInterestExpense_eb3b9af4-9af4-421c-ae72-13b57b8bd778" xlink:href="ibp-20221231.xsd#ibp_UnrecognizedTaxBenefitsNetOfIncomeTaxPenaltiesAndInterestExpense"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_IncomeTaxesLineItems_5b575f7f-d9f4-422d-a4f5-af6aac53d182" xlink:to="loc_ibp_UnrecognizedTaxBenefitsNetOfIncomeTaxPenaltiesAndInterestExpense_eb3b9af4-9af4-421c-ae72-13b57b8bd778" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate_85437636-70c3-4fe0-9f0a-712f36929383" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_IncomeTaxesLineItems_5b575f7f-d9f4-422d-a4f5-af6aac53d182" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate_85437636-70c3-4fe0-9f0a-712f36929383" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/IncomeTaxesGrossUnrecognizedTaxBenefitDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#IncomeTaxesGrossUnrecognizedTaxBenefitDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/IncomeTaxesGrossUnrecognizedTaxBenefitDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_a3e0dd57-bf87-42d8-a5c9-787ca3878548" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_eeb55ef3-936c-4ee6-8e31-4624cd691d9e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_a3e0dd57-bf87-42d8-a5c9-787ca3878548" xlink:to="loc_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_eeb55ef3-936c-4ee6-8e31-4624cd691d9e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecognizedTaxBenefits_75b5edd7-6be9-40a1-9ec1-dd0771b2277b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefits"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_eeb55ef3-936c-4ee6-8e31-4624cd691d9e" xlink:to="loc_us-gaap_UnrecognizedTaxBenefits_75b5edd7-6be9-40a1-9ec1-dd0771b2277b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions_90ee8c3c-69e5-4fd6-aa6b-25420f6ebbf3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_eeb55ef3-936c-4ee6-8e31-4624cd691d9e" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions_90ee8c3c-69e5-4fd6-aa6b-25420f6ebbf3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromCurrentPeriodTaxPositions_68fd5e96-7f90-4eca-a50a-3abd63fcdcd1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromCurrentPeriodTaxPositions"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_eeb55ef3-936c-4ee6-8e31-4624cd691d9e" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromCurrentPeriodTaxPositions_68fd5e96-7f90-4eca-a50a-3abd63fcdcd1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_UnrecognizedTaxBenefitsIncreaseResultingFromLapseOfApplicableStatuteOfLimitations_7c65a1a4-5f2c-4a6c-987f-c4958589a950" xlink:href="ibp-20221231.xsd#ibp_UnrecognizedTaxBenefitsIncreaseResultingFromLapseOfApplicableStatuteOfLimitations"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_eeb55ef3-936c-4ee6-8e31-4624cd691d9e" xlink:to="loc_ibp_UnrecognizedTaxBenefitsIncreaseResultingFromLapseOfApplicableStatuteOfLimitations_7c65a1a4-5f2c-4a6c-987f-c4958589a950" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations_80e9f8df-99d6-408b-8f64-b4136de11616" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_eeb55ef3-936c-4ee6-8e31-4624cd691d9e" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations_80e9f8df-99d6-408b-8f64-b4136de11616" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecognizedTaxBenefits_97aac3d1-f070-400d-9ef7-25241aff8489" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefits"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_eeb55ef3-936c-4ee6-8e31-4624cd691d9e" xlink:to="loc_us-gaap_UnrecognizedTaxBenefits_97aac3d1-f070-400d-9ef7-25241aff8489" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/RelatedPartyTransactionsScheduleofRelatedPartyTransactionsDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#RelatedPartyTransactionsScheduleofRelatedPartyTransactionsDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/RelatedPartyTransactionsScheduleofRelatedPartyTransactionsDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsAbstract_6623198d-c347-4f5d-a370-de2b6ceb81f6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_4779456e-e69b-4a76-849f-f087b48be24d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionsAbstract_6623198d-c347-4f5d-a370-de2b6ceb81f6" xlink:to="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_4779456e-e69b-4a76-849f-f087b48be24d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_2afc76cc-6dd8-4301-8f44-74fc8abb711f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_4779456e-e69b-4a76-849f-f087b48be24d" xlink:to="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_2afc76cc-6dd8-4301-8f44-74fc8abb711f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyDomain_4a22cb4f-c55b-4b34-919d-4d38009bd3a2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_2afc76cc-6dd8-4301-8f44-74fc8abb711f" xlink:to="loc_us-gaap_RelatedPartyDomain_4a22cb4f-c55b-4b34-919d-4d38009bd3a2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_AffiliatedEntityMember_1efc02b7-d9e0-49af-9760-df3b36ecbce9" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_AffiliatedEntityMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyDomain_4a22cb4f-c55b-4b34-919d-4d38009bd3a2" xlink:to="loc_srt_AffiliatedEntityMember_1efc02b7-d9e0-49af-9760-df3b36ecbce9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionLineItems_10b8866b-708f-4f74-8859-29329f536fb5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_4779456e-e69b-4a76-849f-f087b48be24d" xlink:to="loc_us-gaap_RelatedPartyTransactionLineItems_10b8866b-708f-4f74-8859-29329f536fb5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromRelatedParties_b01a2eec-029e-499e-bb81-6700a72b6bfa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromRelatedParties"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems_10b8866b-708f-4f74-8859-29329f536fb5" xlink:to="loc_us-gaap_RevenueFromRelatedParties_b01a2eec-029e-499e-bb81-6700a72b6bfa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty_7da7a6b7-8fb0-4665-9a56-0b2c04dd0953" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems_10b8866b-708f-4f74-8859-29329f536fb5" xlink:to="loc_us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty_7da7a6b7-8fb0-4665-9a56-0b2c04dd0953" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty_a64db8ae-2cf7-4762-8ad0-1b396f482dc4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems_10b8866b-708f-4f74-8859-29329f536fb5" xlink:to="loc_us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty_a64db8ae-2cf7-4762-8ad0-1b396f482dc4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/RelatedPartyTransactionsAdditionalInformationDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#RelatedPartyTransactionsAdditionalInformationDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/RelatedPartyTransactionsAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsAbstract_a6d75aaf-97fb-44fe-a4c5-15e399664ef5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_3de02ff9-ba02-48fa-a676-b161c1d4b055" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionsAbstract_a6d75aaf-97fb-44fe-a4c5-15e399664ef5" xlink:to="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_3de02ff9-ba02-48fa-a676-b161c1d4b055" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_db33783e-ff96-4ef5-9ace-6fc9b9ba2d36" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_3de02ff9-ba02-48fa-a676-b161c1d4b055" xlink:to="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_db33783e-ff96-4ef5-9ace-6fc9b9ba2d36" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyDomain_0390ed35-1eb7-42b6-ac9f-2061efee669a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_db33783e-ff96-4ef5-9ace-6fc9b9ba2d36" xlink:to="loc_us-gaap_RelatedPartyDomain_0390ed35-1eb7-42b6-ac9f-2061efee669a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_AffiliatedEntityMember_8cddf16e-5d8c-4f00-bfb8-2c8aabee9aed" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_AffiliatedEntityMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyDomain_0390ed35-1eb7-42b6-ac9f-2061efee669a" xlink:to="loc_srt_AffiliatedEntityMember_8cddf16e-5d8c-4f00-bfb8-2c8aabee9aed" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TrustForBenefitOfEmployeesMember_9a536b9f-b242-4fe3-925c-f3d1491fa4a3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrustForBenefitOfEmployeesMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyDomain_0390ed35-1eb7-42b6-ac9f-2061efee669a" xlink:to="loc_us-gaap_TrustForBenefitOfEmployeesMember_9a536b9f-b242-4fe3-925c-f3d1491fa4a3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionLineItems_d3a11744-c390-495a-9aa8-1c50ac2b1331" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_3de02ff9-ba02-48fa-a676-b161c1d4b055" xlink:to="loc_us-gaap_RelatedPartyTransactionLineItems_d3a11744-c390-495a-9aa8-1c50ac2b1331" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableRelatedPartiesCurrent_5f51b901-3a67-45f0-9a39-ba3b376797da" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableRelatedPartiesCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems_d3a11744-c390-495a-9aa8-1c50ac2b1331" xlink:to="loc_us-gaap_AccountsReceivableRelatedPartiesCurrent_5f51b901-3a67-45f0-9a39-ba3b376797da" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromRelatedParties_51326d9f-4f15-431d-8c56-5803961a80b9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromRelatedParties"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems_d3a11744-c390-495a-9aa8-1c50ac2b1331" xlink:to="loc_us-gaap_RevenueFromRelatedParties_51326d9f-4f15-431d-8c56-5803961a80b9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofAccruedGeneralInsuranceReservesDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#CommitmentsandContingenciesScheduleofAccruedGeneralInsuranceReservesDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofAccruedGeneralInsuranceReservesDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_f6f21af8-b3e6-4ce2-9d6d-fdfb5f91010d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedInsuranceCurrent_7f098499-e892-48ff-9412-61cc659cd50f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedInsuranceCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_f6f21af8-b3e6-4ce2-9d6d-fdfb5f91010d" xlink:to="loc_us-gaap_AccruedInsuranceCurrent_7f098499-e892-48ff-9412-61cc659cd50f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedInsuranceNoncurrent_10eb747b-46dd-4c45-be88-ae11e9e8a9c9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedInsuranceNoncurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_f6f21af8-b3e6-4ce2-9d6d-fdfb5f91010d" xlink:to="loc_us-gaap_AccruedInsuranceNoncurrent_10eb747b-46dd-4c45-be88-ae11e9e8a9c9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedInsuranceCurrentAndNoncurrent_3a435aa5-70d8-472c-a49f-d0ed80b4765b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedInsuranceCurrentAndNoncurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_f6f21af8-b3e6-4ce2-9d6d-fdfb5f91010d" xlink:to="loc_us-gaap_AccruedInsuranceCurrentAndNoncurrent_3a435aa5-70d8-472c-a49f-d0ed80b4765b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_3aec8423-d37b-476b-8e82-968eb69e3ed4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CommitmentsAndContingenciesDisclosureTable_f66e9692-df65-4bee-ab3b-6f30f8870d1c" xlink:href="ibp-20221231.xsd#ibp_CommitmentsAndContingenciesDisclosureTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_3aec8423-d37b-476b-8e82-968eb69e3ed4" xlink:to="loc_ibp_CommitmentsAndContingenciesDisclosureTable_f66e9692-df65-4bee-ab3b-6f30f8870d1c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfMalpracticeInsuranceTypeAndTierIdentifierAxis_5407857a-e5b7-4c23-acff-356d8d5993a3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfMalpracticeInsuranceTypeAndTierIdentifierAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_CommitmentsAndContingenciesDisclosureTable_f66e9692-df65-4bee-ab3b-6f30f8870d1c" xlink:to="loc_us-gaap_ScheduleOfMalpracticeInsuranceTypeAndTierIdentifierAxis_5407857a-e5b7-4c23-acff-356d8d5993a3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TypeAndTierIdentifierDomain_a3632241-2f1f-4b61-a5bd-22621aacfc3c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeAndTierIdentifierDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfMalpracticeInsuranceTypeAndTierIdentifierAxis_5407857a-e5b7-4c23-acff-356d8d5993a3" xlink:to="loc_us-gaap_TypeAndTierIdentifierDomain_a3632241-2f1f-4b61-a5bd-22621aacfc3c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeneralLiabilityMember_363a4614-d0b9-4c19-9496-b9fc31ec64a9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GeneralLiabilityMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TypeAndTierIdentifierDomain_a3632241-2f1f-4b61-a5bd-22621aacfc3c" xlink:to="loc_us-gaap_GeneralLiabilityMember_363a4614-d0b9-4c19-9496-b9fc31ec64a9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CommitmentsAndContingenciesDisclosureLineItems_c6d00eeb-cf0a-4686-b2c1-7b016d039247" xlink:href="ibp-20221231.xsd#ibp_CommitmentsAndContingenciesDisclosureLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_CommitmentsAndContingenciesDisclosureTable_f66e9692-df65-4bee-ab3b-6f30f8870d1c" xlink:to="loc_ibp_CommitmentsAndContingenciesDisclosureLineItems_c6d00eeb-cf0a-4686-b2c1-7b016d039247" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy_8c347ec6-7fa9-4fd9-960c-dfaf1941736f" xlink:href="ibp-20221231.xsd#ibp_InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_CommitmentsAndContingenciesDisclosureLineItems_c6d00eeb-cf0a-4686-b2c1-7b016d039247" xlink:to="loc_ibp_InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy_8c347ec6-7fa9-4fd9-960c-dfaf1941736f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_InsuranceReceivableForClaimsExceedingStopLossLimit_2d75029e-0774-4956-abdc-68396d4be62c" xlink:href="ibp-20221231.xsd#ibp_InsuranceReceivableForClaimsExceedingStopLossLimit"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_CommitmentsAndContingenciesDisclosureLineItems_c6d00eeb-cf0a-4686-b2c1-7b016d039247" xlink:to="loc_ibp_InsuranceReceivableForClaimsExceedingStopLossLimit_2d75029e-0774-4956-abdc-68396d4be62c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InsuranceSettlementsReceivableNoncurrent_5d2bd8b8-fc40-4bcb-905c-3d10e65fabd0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InsuranceSettlementsReceivableNoncurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_CommitmentsAndContingenciesDisclosureLineItems_c6d00eeb-cf0a-4686-b2c1-7b016d039247" xlink:to="loc_us-gaap_InsuranceSettlementsReceivableNoncurrent_5d2bd8b8-fc40-4bcb-905c-3d10e65fabd0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/BusinessCombinationsAdditionalInformationDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#BusinessCombinationsAdditionalInformationDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/BusinessCombinationsAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_cf14a880-6909-48fe-bc28-9eac1d60e2cc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_5644bc9a-d18c-4972-9b64-7019574aef11" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_cf14a880-6909-48fe-bc28-9eac1d60e2cc" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_5644bc9a-d18c-4972-9b64-7019574aef11" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_b7c4be67-54b6-452c-9c2e-6e2f017d9f22" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_5644bc9a-d18c-4972-9b64-7019574aef11" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_b7c4be67-54b6-452c-9c2e-6e2f017d9f22" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_8aea5674-7351-4d01-baf5-48e743e286be" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_b7c4be67-54b6-452c-9c2e-6e2f017d9f22" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_8aea5674-7351-4d01-baf5-48e743e286be" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_d90a1861-d593-4c83-89e6-4abcc8a40e1f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_8aea5674-7351-4d01-baf5-48e743e286be" xlink:to="loc_us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember_d90a1861-d593-4c83-89e6-4abcc8a40e1f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_DenisonGlassAndMirrorMember_d5ffca26-2a31-4a7e-ac61-2d2bca480105" xlink:href="ibp-20221231.xsd#ibp_DenisonGlassAndMirrorMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_8aea5674-7351-4d01-baf5-48e743e286be" xlink:to="loc_ibp_DenisonGlassAndMirrorMember_d5ffca26-2a31-4a7e-ac61-2d2bca480105" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementAxis_8972e006-1bbf-494e-ae5a-64771af39c8e" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_5644bc9a-d18c-4972-9b64-7019574aef11" xlink:to="loc_srt_RestatementAxis_8972e006-1bbf-494e-ae5a-64771af39c8e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementDomain_79d71472-4ae4-4d1b-a524-98099e7b1936" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RestatementAxis_8972e006-1bbf-494e-ae5a-64771af39c8e" xlink:to="loc_srt_RestatementDomain_79d71472-4ae4-4d1b-a524-98099e7b1936" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementAdjustmentMember_51d01491-e2be-4d0b-bcb4-c92b2b757550" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementAdjustmentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RestatementDomain_79d71472-4ae4-4d1b-a524-98099e7b1936" xlink:to="loc_srt_RestatementAdjustmentMember_51d01491-e2be-4d0b-bcb4-c92b2b757550" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_b7c50709-dbc8-4249-be17-75f056773a92" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_5644bc9a-d18c-4972-9b64-7019574aef11" xlink:to="loc_us-gaap_BusinessAcquisitionLineItems_b7c50709-dbc8-4249-be17-75f056773a92" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfBusinessesAcquired_b1e9ca9e-ac4f-4732-8c52-55d758108a3c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NumberOfBusinessesAcquired"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b7c50709-dbc8-4249-be17-75f056773a92" xlink:to="loc_us-gaap_NumberOfBusinessesAcquired_b1e9ca9e-ac4f-4732-8c52-55d758108a3c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts_6d2ce6d3-d0be-447a-b82d-da9e9eb306a8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationAcquisitionRelatedCosts"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b7c50709-dbc8-4249-be17-75f056773a92" xlink:to="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts_6d2ce6d3-d0be-447a-b82d-da9e9eb306a8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationSeparatelyRecognizedTransactionsRevenuesAndGainsRecognized_6a6ad0b5-8b05-474e-bd42-556f12a96d49" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationSeparatelyRecognizedTransactionsRevenuesAndGainsRecognized"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b7c50709-dbc8-4249-be17-75f056773a92" xlink:to="loc_us-gaap_BusinessCombinationSeparatelyRecognizedTransactionsRevenuesAndGainsRecognized_6a6ad0b5-8b05-474e-bd42-556f12a96d49" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount_5ee9e62e-e6b6-4d15-966d-eda2888cbc27" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b7c50709-dbc8-4249-be17-75f056773a92" xlink:to="loc_us-gaap_BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount_5ee9e62e-e6b6-4d15-966d-eda2888cbc27" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets_8b74d9c1-4185-4d4b-8a3b-37162d62898b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfIntangibleAssets"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b7c50709-dbc8-4249-be17-75f056773a92" xlink:to="loc_us-gaap_AmortizationOfIntangibleAssets_8b74d9c1-4185-4d4b-8a3b-37162d62898b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestExpense_54c4b188-0e6b-4b95-a24b-d3c044a3677b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestExpense"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b7c50709-dbc8-4249-be17-75f056773a92" xlink:to="loc_us-gaap_InterestExpense_54c4b188-0e6b-4b95-a24b-d3c044a3677b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_9dc71341-0bf9-498e-9255-dd2adbdc0592" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b7c50709-dbc8-4249-be17-75f056773a92" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_9dc71341-0bf9-498e-9255-dd2adbdc0592" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillPurchaseAccountingAdjustments_8184c2d2-121f-492a-837e-59b9c2f762be" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillPurchaseAccountingAdjustments"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b7c50709-dbc8-4249-be17-75f056773a92" xlink:to="loc_us-gaap_GoodwillPurchaseAccountingAdjustments_8184c2d2-121f-492a-837e-59b9c2f762be" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_6814e4a9-992b-4304-acc0-4cebfec54e9e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b7c50709-dbc8-4249-be17-75f056773a92" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_6814e4a9-992b-4304-acc0-4cebfec54e9e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#BusinessCombinationsSummaryofBusinessAcquisitionsDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_c031b859-e824-472a-91ca-002a0ffa660d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_abc94529-ed33-41d9-afb9-305c7fb9c991" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_c031b859-e824-472a-91ca-002a0ffa660d" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_abc94529-ed33-41d9-afb9-305c7fb9c991" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_9cf02c62-bf4d-40bf-9d78-1dcb2d75dadf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_abc94529-ed33-41d9-afb9-305c7fb9c991" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_9cf02c62-bf4d-40bf-9d78-1dcb2d75dadf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_78e7ff8b-cbeb-432e-a426-ff69fcdff7af" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_9cf02c62-bf4d-40bf-9d78-1dcb2d75dadf" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_78e7ff8b-cbeb-432e-a426-ff69fcdff7af" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CentralAluminumMember_8ddf16bc-87b2-47a2-8c9f-2e0c5323f611" xlink:href="ibp-20221231.xsd#ibp_CentralAluminumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_78e7ff8b-cbeb-432e-a426-ff69fcdff7af" xlink:to="loc_ibp_CentralAluminumMember_8ddf16bc-87b2-47a2-8c9f-2e0c5323f611" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_ABSMember_15aca2f2-383d-40e6-83e4-6b0b4352ac06" xlink:href="ibp-20221231.xsd#ibp_ABSMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_78e7ff8b-cbeb-432e-a426-ff69fcdff7af" xlink:to="loc_ibp_ABSMember_15aca2f2-383d-40e6-83e4-6b0b4352ac06" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_IWMember_540a05c0-455c-4115-b6eb-e10fa1e83b59" xlink:href="ibp-20221231.xsd#ibp_IWMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_78e7ff8b-cbeb-432e-a426-ff69fcdff7af" xlink:to="loc_ibp_IWMember_540a05c0-455c-4115-b6eb-e10fa1e83b59" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FiveStarMember_03a10bee-0608-4b1f-9944-91b3991d1b98" xlink:href="ibp-20221231.xsd#ibp_FiveStarMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_78e7ff8b-cbeb-432e-a426-ff69fcdff7af" xlink:to="loc_ibp_FiveStarMember_03a10bee-0608-4b1f-9944-91b3991d1b98" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_AMDMember_44f3c232-3425-485c-9163-f92c059c117b" xlink:href="ibp-20221231.xsd#ibp_AMDMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_78e7ff8b-cbeb-432e-a426-ff69fcdff7af" xlink:to="loc_ibp_AMDMember_44f3c232-3425-485c-9163-f92c059c117b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_NorkoteMember_b81129d8-18c1-43eb-9924-93b462b045f3" xlink:href="ibp-20221231.xsd#ibp_NorkoteMember"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_78e7ff8b-cbeb-432e-a426-ff69fcdff7af" xlink:to="loc_ibp_NorkoteMember_b81129d8-18c1-43eb-9924-93b462b045f3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_OtherAcquisitionMember_ecc0cf06-c527-432e-82b7-11807df1667f" xlink:href="ibp-20221231.xsd#ibp_OtherAcquisitionMember"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_78e7ff8b-cbeb-432e-a426-ff69fcdff7af" xlink:to="loc_ibp_OtherAcquisitionMember_ecc0cf06-c527-432e-82b7-11807df1667f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_390267e7-d437-4dda-b0e6-26db62074e14" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_abc94529-ed33-41d9-afb9-305c7fb9c991" xlink:to="loc_us-gaap_BusinessAcquisitionLineItems_390267e7-d437-4dda-b0e6-26db62074e14" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesGross_31a91274-6efb-45dd-8422-2ac3fca98238" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireBusinessesGross"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_390267e7-d437-4dda-b0e6-26db62074e14" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesGross_31a91274-6efb-45dd-8422-2ac3fca98238" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness_2947dc0f-b99e-4cfd-a0f7-d562ceb6a0a8" xlink:href="ibp-20221231.xsd#ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_390267e7-d437-4dda-b0e6-26db62074e14" xlink:to="loc_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness_2947dc0f-b99e-4cfd-a0f7-d562ceb6a0a8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferred1_65ae54fe-41ce-4adb-8022-dd0573df44f7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationConsiderationTransferred1"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_390267e7-d437-4dda-b0e6-26db62074e14" xlink:to="loc_us-gaap_BusinessCombinationConsiderationTransferred1_65ae54fe-41ce-4adb-8022-dd0573df44f7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual_0615a702-9f2e-434d-a624-d3d16190f7e0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_390267e7-d437-4dda-b0e6-26db62074e14" xlink:to="loc_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual_0615a702-9f2e-434d-a624-d3d16190f7e0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual_fe494d77-056c-4b6d-bc8e-f265b552e624" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_390267e7-d437-4dda-b0e6-26db62074e14" xlink:to="loc_us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual_fe494d77-056c-4b6d-bc8e-f265b552e624" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_1fa57b48-5371-41aa-bc88-bd75d8adacb7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_45dd932e-9ed9-4c46-ae93-ba27a930bf99" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_1fa57b48-5371-41aa-bc88-bd75d8adacb7" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_45dd932e-9ed9-4c46-ae93-ba27a930bf99" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_32ed6e1d-6b9e-4f83-a9c5-f80aeabb45b5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_45dd932e-9ed9-4c46-ae93-ba27a930bf99" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_32ed6e1d-6b9e-4f83-a9c5-f80aeabb45b5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_02e77a54-f372-47fb-bb53-58016bcbd1f9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_32ed6e1d-6b9e-4f83-a9c5-f80aeabb45b5" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_02e77a54-f372-47fb-bb53-58016bcbd1f9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_TwoThousandTwentyTwoAcquisitionsMember_19179756-1ca0-48a2-abb5-f261dedfd4b4" xlink:href="ibp-20221231.xsd#ibp_TwoThousandTwentyTwoAcquisitionsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_02e77a54-f372-47fb-bb53-58016bcbd1f9" xlink:to="loc_ibp_TwoThousandTwentyTwoAcquisitionsMember_19179756-1ca0-48a2-abb5-f261dedfd4b4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_CentralAluminumMember_3dd79a57-d18a-4d55-890f-92e1d6b595b8" xlink:href="ibp-20221231.xsd#ibp_CentralAluminumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_TwoThousandTwentyTwoAcquisitionsMember_19179756-1ca0-48a2-abb5-f261dedfd4b4" xlink:to="loc_ibp_CentralAluminumMember_3dd79a57-d18a-4d55-890f-92e1d6b595b8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_ABSMember_ff6f3aa1-440f-4f95-a520-ec8ba4c7091e" xlink:href="ibp-20221231.xsd#ibp_ABSMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_TwoThousandTwentyTwoAcquisitionsMember_19179756-1ca0-48a2-abb5-f261dedfd4b4" xlink:to="loc_ibp_ABSMember_ff6f3aa1-440f-4f95-a520-ec8ba4c7091e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_OtherAcquisitionMember_f26d1475-e0b4-4de4-8d9f-5deeec2c17d4" xlink:href="ibp-20221231.xsd#ibp_OtherAcquisitionMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_TwoThousandTwentyTwoAcquisitionsMember_19179756-1ca0-48a2-abb5-f261dedfd4b4" xlink:to="loc_ibp_OtherAcquisitionMember_f26d1475-e0b4-4de4-8d9f-5deeec2c17d4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_TwoThousandTwentyOneAcquisitionsMember_b6e6edd1-0dbf-4409-b125-0f59ce0e6ec5" xlink:href="ibp-20221231.xsd#ibp_TwoThousandTwentyOneAcquisitionsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_02e77a54-f372-47fb-bb53-58016bcbd1f9" xlink:to="loc_ibp_TwoThousandTwentyOneAcquisitionsMember_b6e6edd1-0dbf-4409-b125-0f59ce0e6ec5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_IWMember_3dc1df95-515f-4f43-ba21-735d2980fdc1" xlink:href="ibp-20221231.xsd#ibp_IWMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_TwoThousandTwentyOneAcquisitionsMember_b6e6edd1-0dbf-4409-b125-0f59ce0e6ec5" xlink:to="loc_ibp_IWMember_3dc1df95-515f-4f43-ba21-735d2980fdc1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_FiveStarMember_51377326-d58e-4184-b83e-1357f4ca76c0" xlink:href="ibp-20221231.xsd#ibp_FiveStarMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_TwoThousandTwentyOneAcquisitionsMember_b6e6edd1-0dbf-4409-b125-0f59ce0e6ec5" xlink:to="loc_ibp_FiveStarMember_51377326-d58e-4184-b83e-1357f4ca76c0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_AMDMember_0be5a6be-c42e-4f95-b9d3-f263e0efaafd" xlink:href="ibp-20221231.xsd#ibp_AMDMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_TwoThousandTwentyOneAcquisitionsMember_b6e6edd1-0dbf-4409-b125-0f59ce0e6ec5" xlink:to="loc_ibp_AMDMember_0be5a6be-c42e-4f95-b9d3-f263e0efaafd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_OtherAcquisitionMember_2f53d079-50b1-4c26-a862-8c118c770053" xlink:href="ibp-20221231.xsd#ibp_OtherAcquisitionMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_TwoThousandTwentyOneAcquisitionsMember_b6e6edd1-0dbf-4409-b125-0f59ce0e6ec5" xlink:to="loc_ibp_OtherAcquisitionMember_2f53d079-50b1-4c26-a862-8c118c770053" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_TwoThousandTwentyAcquisitionsMember_fa492dec-32ef-42bf-b36e-ae7e841cb74f" xlink:href="ibp-20221231.xsd#ibp_TwoThousandTwentyAcquisitionsMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_02e77a54-f372-47fb-bb53-58016bcbd1f9" xlink:to="loc_ibp_TwoThousandTwentyAcquisitionsMember_fa492dec-32ef-42bf-b36e-ae7e841cb74f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_NorkoteMember_8ebec36f-2c0e-4090-a5e7-28f498281e68" xlink:href="ibp-20221231.xsd#ibp_NorkoteMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_TwoThousandTwentyAcquisitionsMember_fa492dec-32ef-42bf-b36e-ae7e841cb74f" xlink:to="loc_ibp_NorkoteMember_8ebec36f-2c0e-4090-a5e7-28f498281e68" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_OtherAcquisitionMember_0b41113f-8874-44dc-bdd1-b97a77880a55" xlink:href="ibp-20221231.xsd#ibp_OtherAcquisitionMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ibp_TwoThousandTwentyAcquisitionsMember_fa492dec-32ef-42bf-b36e-ae7e841cb74f" xlink:to="loc_ibp_OtherAcquisitionMember_0b41113f-8874-44dc-bdd1-b97a77880a55" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementAxis_ff62b9b2-0908-4d7c-99e3-2053f3d1e64d" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_45dd932e-9ed9-4c46-ae93-ba27a930bf99" xlink:to="loc_srt_RestatementAxis_ff62b9b2-0908-4d7c-99e3-2053f3d1e64d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementDomain_c83b385b-dd0c-4bd2-80be-c3fc76bbd95c" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RestatementAxis_ff62b9b2-0908-4d7c-99e3-2053f3d1e64d" xlink:to="loc_srt_RestatementDomain_c83b385b-dd0c-4bd2-80be-c3fc76bbd95c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementAdjustmentMember_123bd6ea-2a83-4d37-ae0c-f2bbfc2a72a1" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementAdjustmentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RestatementDomain_c83b385b-dd0c-4bd2-80be-c3fc76bbd95c" xlink:to="loc_srt_RestatementAdjustmentMember_123bd6ea-2a83-4d37-ae0c-f2bbfc2a72a1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_45dd932e-9ed9-4c46-ae93-ba27a930bf99" xlink:to="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_9397a4ff-9fb1-4191-b8f1-6205d15d3c9f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_9397a4ff-9fb1-4191-b8f1-6205d15d3c9f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_66fbb841-9d4b-4a91-939c-5e5bbe9d7cef" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_66fbb841-9d4b-4a91-939c-5e5bbe9d7cef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_f0d1c841-3b46-4761-bf45-691facb0ddc4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_f0d1c841-3b46-4761-bf45-691facb0ddc4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_23372f5a-d0b1-4de0-bcd3-f44381f7d76f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_23372f5a-d0b1-4de0-bcd3-f44381f7d76f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_03ec4999-0f75-4eab-8647-0a984cc49bc9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_03ec4999-0f75-4eab-8647-0a984cc49bc9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset_4af14c29-d9e8-40b7-809d-3de22f99c528" xlink:href="ibp-20221231.xsd#ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:to="loc_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset_4af14c29-d9e8-40b7-809d-3de22f99c528" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_aa35cbbf-8902-48de-b643-bf402049721e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_aa35cbbf-8902-48de-b643-bf402049721e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_30d3946f-01d0-48f5-a26a-22c0db178c19" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:to="loc_us-gaap_Goodwill_30d3946f-01d0-48f5-a26a-22c0db178c19" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_a2911b9f-521d-4b77-a23e-87a3c9d131e4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_a2911b9f-521d-4b77-a23e-87a3c9d131e4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities_f6eb44a8-5d48-4856-8393-0d26972500cf" xlink:href="ibp-20221231.xsd#ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:to="loc_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities_f6eb44a8-5d48-4856-8393-0d26972500cf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_a80e7e25-3db4-430d-8d75-74332bfa9520" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_a80e7e25-3db4-430d-8d75-74332bfa9520" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable_09e906b1-8f8a-414f-8837-d7ac33be8f18" xlink:href="ibp-20221231.xsd#ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:to="loc_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable_09e906b1-8f8a-414f-8837-d7ac33be8f18" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_f6363baf-c351-4842-8cd1-9969a4d42dab" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_f6363baf-c351-4842-8cd1-9969a4d42dab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_ec083476-6526-4ec5-859b-26f62397cbb3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_ec083476-6526-4ec5-859b-26f62397cbb3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness_221a2f77-f927-463d-b99c-2b20c30223d6" xlink:href="ibp-20221231.xsd#ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:to="loc_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness_221a2f77-f927-463d-b99c-2b20c30223d6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesGross_85f8be5c-1d6d-447e-8fa7-1514e454a197" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireBusinessesGross"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_b9e45279-a497-4f97-805b-564690e7344b" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesGross_85f8be5c-1d6d-447e-8fa7-1514e454a197" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/BusinessCombinationsEstimatesofAcquiredIntangibleAssetsDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#BusinessCombinationsEstimatesofAcquiredIntangibleAssetsDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/BusinessCombinationsEstimatesofAcquiredIntangibleAssetsDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_8b52a6d0-ef39-4727-b604-e18c646870ac" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable_24e6cad5-2374-42e7-9fa4-2ea9bb0bef9c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_8b52a6d0-ef39-4727-b604-e18c646870ac" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable_24e6cad5-2374-42e7-9fa4-2ea9bb0bef9c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_57db7ab2-43da-4deb-a8b4-4d41e08b9139" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable_24e6cad5-2374-42e7-9fa4-2ea9bb0bef9c" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_57db7ab2-43da-4deb-a8b4-4d41e08b9139" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4824461c-e88e-4537-874c-e8907a870143" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_57db7ab2-43da-4deb-a8b4-4d41e08b9139" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4824461c-e88e-4537-874c-e8907a870143" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerRelationshipsMember_5fb867ab-a690-4d63-8def-83851cbd862a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerRelationshipsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4824461c-e88e-4537-874c-e8907a870143" xlink:to="loc_us-gaap_CustomerRelationshipsMember_5fb867ab-a690-4d63-8def-83851cbd862a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TrademarksAndTradeNamesMember_54d8eed3-aae6-4a56-ab5e-28aaf17fa126" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TrademarksAndTradeNamesMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4824461c-e88e-4537-874c-e8907a870143" xlink:to="loc_us-gaap_TrademarksAndTradeNamesMember_54d8eed3-aae6-4a56-ab5e-28aaf17fa126" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NoncompeteAgreementsMember_92900c62-4d90-44cd-82f6-83eea9ff5b68" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncompeteAgreementsMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4824461c-e88e-4537-874c-e8907a870143" xlink:to="loc_us-gaap_NoncompeteAgreementsMember_92900c62-4d90-44cd-82f6-83eea9ff5b68" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrderOrProductionBacklogMember_e5fc1291-ff9e-4120-839b-93e2dbc5c690" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OrderOrProductionBacklogMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4824461c-e88e-4537-874c-e8907a870143" xlink:to="loc_us-gaap_OrderOrProductionBacklogMember_e5fc1291-ff9e-4120-839b-93e2dbc5c690" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_f83936be-791a-4e17-92ec-5680b1078405" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable_24e6cad5-2374-42e7-9fa4-2ea9bb0bef9c" xlink:to="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_f83936be-791a-4e17-92ec-5680b1078405" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinitelivedIntangibleAssetsAcquired1_d70acf1c-2f4a-45d1-af1f-82120821f59b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinitelivedIntangibleAssetsAcquired1"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_f83936be-791a-4e17-92ec-5680b1078405" xlink:to="loc_us-gaap_FinitelivedIntangibleAssetsAcquired1_d70acf1c-2f4a-45d1-af1f-82120821f59b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_703e03f4-c9ca-4644-867d-617075b84d3e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems_f83936be-791a-4e17-92ec-5680b1078405" xlink:to="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_703e03f4-c9ca-4644-867d-617075b84d3e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/BusinessCombinationsProFormaResultsofOperationsDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#BusinessCombinationsProFormaResultsofOperationsDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/BusinessCombinationsProFormaResultsofOperationsDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_028f0fc5-0e60-4e43-9880-c4d8ab298d0c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionsProFormaRevenue_1b76fdd4-583f-47de-b72c-df7db9d63815" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionsProFormaRevenue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_028f0fc5-0e60-4e43-9880-c4d8ab298d0c" xlink:to="loc_us-gaap_BusinessAcquisitionsProFormaRevenue_1b76fdd4-583f-47de-b72c-df7db9d63815" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss_f402a751-5d8a-409a-a8e5-c14bfc56238e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_028f0fc5-0e60-4e43-9880-c4d8ab298d0c" xlink:to="loc_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss_f402a751-5d8a-409a-a8e5-c14bfc56238e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic_e18b2fbb-3243-4222-9cbb-7a74bdab7065" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_028f0fc5-0e60-4e43-9880-c4d8ab298d0c" xlink:to="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic_e18b2fbb-3243-4222-9cbb-7a74bdab7065" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted_83af6e27-3e8c-48dd-97ac-bbe042b0cde0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_028f0fc5-0e60-4e43-9880-c4d8ab298d0c" xlink:to="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted_83af6e27-3e8c-48dd-97ac-bbe042b0cde0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/IncomePerCommonShareAdditionalInformationDetail" xlink:type="simple" xlink:href="ibp-20221231.xsd#IncomePerCommonShareAdditionalInformationDetail"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/IncomePerCommonShareAdditionalInformationDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_d4f849a5-04eb-495a-b31f-b9d358ff1539" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_5c66dfca-0dba-4c61-9731-08af6df65ba5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_d4f849a5-04eb-495a-b31f-b9d358ff1539" xlink:to="loc_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_5c66dfca-0dba-4c61-9731-08af6df65ba5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_da4ecfba-1f8c-4a8c-bb67-fe82c545d408" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_d4f849a5-04eb-495a-b31f-b9d358ff1539" xlink:to="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_da4ecfba-1f8c-4a8c-bb67-fe82c545d408" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://installedbuildingproducts.com/role/SubsequentEventsDetails" xlink:type="simple" xlink:href="ibp-20221231.xsd#SubsequentEventsDetails"/>
  <link:presentationLink xlink:role="http://installedbuildingproducts.com/role/SubsequentEventsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventsAbstract_09dd0e33-bc0b-4619-af1a-9e5c8d456133" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTable_e0c6bda6-6b4a-4135-a89e-2c64abf2d1fd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventsAbstract_09dd0e33-bc0b-4619-af1a-9e5c8d456133" xlink:to="loc_us-gaap_SubsequentEventTable_e0c6bda6-6b4a-4135-a89e-2c64abf2d1fd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementScenarioAxis_2a804679-6be2-49ee-b816-af4ca465d583" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementScenarioAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTable_e0c6bda6-6b4a-4135-a89e-2c64abf2d1fd" xlink:to="loc_srt_StatementScenarioAxis_2a804679-6be2-49ee-b816-af4ca465d583" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioUnspecifiedDomain_6bbeffa0-ae3f-4bc2-8d4f-cf0c33f9d225" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioUnspecifiedDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_StatementScenarioAxis_2a804679-6be2-49ee-b816-af4ca465d583" xlink:to="loc_srt_ScenarioUnspecifiedDomain_6bbeffa0-ae3f-4bc2-8d4f-cf0c33f9d225" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioForecastMember_42d9c403-26a2-4a8b-8683-e7750bc8b4ca" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioForecastMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ScenarioUnspecifiedDomain_6bbeffa0-ae3f-4bc2-8d4f-cf0c33f9d225" xlink:to="loc_srt_ScenarioForecastMember_42d9c403-26a2-4a8b-8683-e7750bc8b4ca" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_a4ccd766-7dbd-4bde-8664-c218b7ed9c97" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTable_e0c6bda6-6b4a-4135-a89e-2c64abf2d1fd" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_a4ccd766-7dbd-4bde-8664-c218b7ed9c97" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_62a39728-aece-4eac-8105-cb855f502f96" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_a4ccd766-7dbd-4bde-8664-c218b7ed9c97" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_62a39728-aece-4eac-8105-cb855f502f96" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember_a143de7e-8e37-417b-97ba-857894b7fdb2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_62a39728-aece-4eac-8105-cb855f502f96" xlink:to="loc_us-gaap_SubsequentEventMember_a143de7e-8e37-417b-97ba-857894b7fdb2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventLineItems_80b99e99-39b6-4a60-ad5d-cd686b611fb3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTable_e0c6bda6-6b4a-4135-a89e-2c64abf2d1fd" xlink:to="loc_us-gaap_SubsequentEventLineItems_80b99e99-39b6-4a60-ad5d-cd686b611fb3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsPayableAmountPerShare_c7d90a3c-174a-4875-81d0-46185efe9d8e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DividendsPayableAmountPerShare"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_80b99e99-39b6-4a60-ad5d-cd686b611fb3" xlink:to="loc_us-gaap_DividendsPayableAmountPerShare_c7d90a3c-174a-4875-81d0-46185efe9d8e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1_e3281df7-c085-4a6e-8fbd-dea83a16c6dc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockRepurchaseProgramAuthorizedAmount1"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_80b99e99-39b6-4a60-ad5d-cd686b611fb3" xlink:to="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1_e3281df7-c085-4a6e-8fbd-dea83a16c6dc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>13
<FILENAME>ibp-20221231_g1.jpg
<TEXT>
begin 644 ibp-20221231_g1.jpg
M_]C_X  02D9)1@ ! @$ 8 !@  #_[@ .061O8F4 90     !_]L 0P " 0$!
M 0$" 0$! @(" @($ P(" @(%! 0#! 8%!@8&!08&!@<)" 8'"0<&!@@+" D*
M"@H*"@8("PP+"@P)"@H*_]L 0P$" @(" @(% P,%"@<&!PH*"@H*"@H*"@H*
M"@H*"@H*"@H*"@H*"@H*"@H*"@H*"@H*"@H*"@H*"@H*"@H*"@H*_\  $0@"
MD@2Z P$B  (1 0,1 ?_$ !\   $% 0$! 0$!           ! @,$!08'" D*
M"__$ +40  (! P,"! ,%!00$   !?0$" P $$042(3%!!A-180<B<10R@9&A
M""-"L<$54M'P)#-B<H()"A87&!D:)28G*"DJ-#4V-S@Y.D-$149'2$E*4U15
M5E=865IC9&5F9VAI:G-T=79W>'EZ@X2%AH>(B8J2DY25EI>8F9JBHZ2EIJ>H
MJ:JRL[2UMK>XN;K"P\3%QL?(R<K2T]35UM?8V=KAXN/DY>;GZ.GJ\?+S]/7V
M]_CY^O_$ !\!  ,! 0$! 0$! 0$        ! @,$!08'" D*"__$ +41  (!
M @0$ P0'!00$  $"=P ! @,1! 4A,08205$'87$3(C*!"!1"D:&QP0DC,U+P
M%6)RT0H6)#3A)?$7&!D:)B<H*2HU-C<X.3I#1$5&1TA)2E-455976%E:8V1E
M9F=H:6IS='5V=WAY>H*#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6V
MM[BYNL+#Q,7&Q\C)RM+3U-76U]C9VN+CY.7FY^CIZO+S]/7V]_CY^O_:  P#
M 0 "$0,1 #\ _?RBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBO _VLO"_P#P4$^*/B>+P#^QY\9?"'PJTJPT=+[4?''B7P6?$-QJ5Z\D
MJII]O:FY@C@C1(@\T[F0G[1$L:960T >^45^=WP__P""Q'QF^'/_  2W^*O[
M3O[4WPIT6;XK_!WXFZI\,KW1_#DTD6E^*/$MO>P6-M+:ER7CMY9KF+?R2HBF
M( P%'KUY^TM\>?V3OVN_@O\ LZ?M-_$73?&>E_'73]4L;/7;+0H]._L+Q186
MR79M8E0G?87,)F6)92\\<D"AY91+\@!]9T5\ 0_\%"_VF?C-^RI\;?\ @H_\
M!-7TA/ OPD\1:[%X.\!W&E)(GC'1=!)&IW=S=G][#/<>3>"U$.Q(?+A,J7!9
ME'VS\%?BUX/^/OP<\)_'3X>73SZ!XS\-6.N:)-*NUWM+NW2>(L 3AMDBY'8Y
MH Z:BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ KPC]LC]M_X4_LU3:7\)9_C#X'\/
M_$'QA;2MX:B\:^(;>RL]/MU(675+OS98RUO$2,1*P>XDQ$A7,DL7N]>??$C]
MDO\ 95^,GB4^,_B]^S-\/O%6L- D+:MXD\&6-]<F-<[4\V:)FVC)P,X&: /S
MN_X*,_#W]G3Q9_P1[UKP;^PK\4M-^*<'P/\ B%H7CKQ[J?AC4XM5FU>YCU7^
MT=7NKFXM<PR7KK+=7TT2G<@*_(BO$#Z[_P % M*3]IS_ (*0?L0>#/A/J4.K
M0:#XCUOXE:WJ.G2B6*ST.VT^.*WNG9<XBN;BYBAC;H[%L9"MC[1^&?P;^$/P
M6\.3>#_@Y\*O#?A+2+BZ:YN-+\,Z';V%M+.RJC2M% BJSE412Q&2$49P!4/P
MR^!7P1^"BWJ_!KX.>%?"0U)U?41X9\/6UA]J9<[6D\A%WD;FP6SC)]: /R\_
M9/D/[)/_  ;U?M)_LO\ Q#B>+Q?\++CXB^"K_2G0FXO=3U&6Y?2EC3[TGVP:
MG9&$@'S!.NW.:_0?_@G1\$_%?[-W[ OP7^ ?CR/R]=\(?"_0]*UN+<&$5Y#8
MQ)/&".H60.H/H!7=ZU\!_@=XD^(MG\8/$7P9\*7_ (MTY473_%-[X=MI=1M0
MF[8([ED,J!=[XPPQO;'4UU= !1110 5XE^P1JFIZO\&M5N=6U&>ZD7QOK"+)
M<3,[!1<D!<L3P!T':O;:\+_X)[_\D3U;_L>]9_\ 2DT >Z4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 5X7_P3W_Y(GJW_ &/>L_\ I2:]TKPO_@GO
M_P D3U;_ +'O6?\ TI- 'NE%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 5\I?\%0OV\?'G[+_P %=<\,_LO>$4\2_%VYCAAT/2KZ
M,06UA',&SJ$DEP8X9DC"G$:NQ:0J"-H?'U;7P+_P6K\5^%O WC#X17NJZYH]
MM-XAO]1T,VTMY$E[/*T<<]JZQEM[PJ8;F,LH(62YB!(WC/T_!V RO,^(:.%Q
M]^2;MHTO>W5[IZ.UGMON?,\88_-<KX?K8O+U%U(*]I)OW?M6LUJEJM]K6/PS
M^-O[./\ P5<_:1\;S_$;X[CQ'XJUJ>8RF]UCQQ8R^42<XB7[5MA0=DC"JH
M  K[A_X(T?M<?\%0OV,?B[I/PJ_:BTO6/$OP;U686NH_VUXHM+^X\,YX6[M2
M+AYC$IQOMUW J6*)O W>@U0UJ?5Y[O2?"'A6-)=>\4:[9Z%X<@<C$E]=RK%$
M3G^!-QE?T2-SVK^BLQX(X=>7S6(<E3BFWK'1);KW=+'\^8#Q(XIK8Z$,/3IN
MI)I)6GJV[6?OG[/^"_&7AWXA>%K'QKX2O7N=-U* 365Q):R0F6,DX;9*JL <
M9&0,C!'!!K4J#3=-L-'TZWTC2[1(+6U@2&V@B7"QQJ JJ!V   _"IZ_E*JZ3
MJR]FFHW=KZNW2[22;MOHO0_J6DJJI1]JTY65[:*_6R;;2OM=OU"BBBLS0***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH *\+_P"">_\ R1/5O^Q[UG_TI->Z5X7_ ,$]_P#D
MB>K?]CWK/_I2: /=**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M***1W2-#)(X55&69C@ >M "UD>//'_@;X6>$+_X@?$OQCIGA_0M*MS/J6L:S
M?1VUM:QCJTDDA"J/J>IKY]_:>_X*5_#KX16T_AKX,Z?;^-_$N"JF.]\K2[-L
M AIKE58R\$X2%7R5*NT6=P^(=7_9?_:K_P""E?CFV\=?'V?4_B#:VER9-+TB
M\M_[/\):.W()@LBQCF8 D%YVN)L?Q< #[?*.!,VQ]'ZUC&L-0ZSJ/EOZ)ZN_
M1[=KGQ.;<=Y-@*_U7"WQ%?I"DN=_-K1>>MUV/4?CG_P69^)W[1EQ<^ _^":F
M@:?I7ASS'@U#]H#XC6,L6EQ[6*N=(T\H9]3E!! <IY2N )%V,'KR'X9_!/X5
M2^)=5U31_A?KOQ\^+/B>T:WUSXJ_%6W;4=0V,""-.LHV:+2XDR=C([/&#C>
M !]F?!G_ ()4>"]#6#4OC9XMEUF:-%']DZ06@M5   0R'$CJ ,#;Y>*^G_ _
MP[\"_#31E\/^ /"5AI%F,9AL+98]Y'\3$<NW^TQ)]Z]F6:\$\-QY,#"6*J+[
M3O"%^[^U+TT@]TNIY"R_CGB37%SC@Z3^RK3J6[7^&-^Z]Y=3\E?B9\+/'OP=
M\3GP=\1O#\FFZB+:.?[.\B/F-QE2&0E3W!P>"I'4&M3QQ_P37^)WQ[^!MAXP
MUKX1KK^C:E']LTX64^W4M/='_=74&TK+%)E0RO"22K8.5=E/W_\ M?\ [(EA
M^TKJ/A75[>=+6ZTO5$AU6?.&ETUSNE4'NZD93L-[>M>TZ;IMAH^G6^D:7:)!
M:VL"0VT$2X6.-0%50.P  'X5]%FGBO*IDV&=*E"56=_:QDFXI+1):W][XEJ[
M6ZGRN4^$OL,\Q+J5IPI0M[&<6E-MZMMVM[OPO17OT/@+]C?]O/XI_L]Z+'\$
MOVN-8U[Q9;Z6HAT[Q/JEF$UR",8"Q7P.Q;L@?\M\))A?F65F+U]H_##]H7X+
M?&2%7^'/Q$T[4)F7<;+S?+N5'O#)AP/?&/>M+XA?"7X:?%?3#I'Q&\$:=J\.
MPJAO+8&2('ND@^>,^ZD&OS;_ ."@W[&OQY_9%U&7X]_ GP=?^/OAE;R&X\0:
M1HJ%O$?AB('<UQ F0NHVZ#^$>7-& "S2 -(/E(/@7B:M:498*M+M[])OTTDK
M]E9'V,H\?<.0O&4,=271_NZJ7KK%^KNS]1:*_.3]FW]J?]K2]^$NF_&_X!^/
M;;XL_#^[7]U?6K-J2P,H&^&9#MO+61 1NCD";<CC&*]U^%O_  5/^%6OR)I?
MQ:\*:AX9NP=LMU #=VP(X).T"1.>VQL>M<.,\/\ .Z<)5<"XXF"W=)W:\G#2
M2?DDSKP?B#DDZBHX]3PM1]*L>5/S4_A:\VT?4U%8?@7XF_#WXG:9_:_P^\9Z
M;K%O@%VL+M9#'GLZ@Y0^S &MROBJM&K0J.G5BXR6Z:LUZIGV]*M1Q%-5*4E*
M+V:=T_1H****S- HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH *\+_ .">_P#R1/5O^Q[UG_TI->Z5X7_P
M3W_Y(GJW_8]ZS_Z4F@#W2BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHK@?B
M_P#M._!#X&PN/B#X[M8;Q5RFE6I\Z[?T_=)DJ#V9MJ^]=.$P>+Q]=4<-3<YO
M913;^Y'-B\;A,!0=;$U(P@MW)I+[V=]67XN\;>#_  !HS^(?&_B:QTFRC^]<
MW]RL29] 6(R?0#DU\._M!_\ !6[7K'P[J.M?#K2;#PEH-@!]L\4^)IXR8 QP
MA.\B&%F/ #%]QX')Q7SG\#M#_;1_X*=>(X_&WPNT+4H_!LS?-\7?B7%<16,T
M9QDZ98DI<7PZ@8^SP@J1Y@X!^\P_ $L%1^L9[B8X:'\M^:H_+E6BOTU;\CX.
MMQ\\PJ^PR#"RQ,MN=^Y27_;SU=O)+R9]K?&3_@J=\.?#C2:/\&?#4_B*\SL3
M4+T-;V@;H"JD>9)SVPF>QKAT^#7[>_[9+"[^+'B*7PIX;G;/V"\1K:,KGHMF
MGSR$=09B/9J]Z_9?_84^#?[,EI#JMI]I\3>*0G^D>+-?6-K@,001;QHHBM$P
MS+B-0S+@2/(1NKVJHEQ3DF1ODR#"+F7_ "^JVG/UC'X8_P!70UPGGF>KFX@Q
MC<7_ ,N:-X4_24OBFO7Y,\(^#7_!/#]GOX4^5J6LZ,_BG5(\$W>N*'A5O]B
M?(!_O;R/6O=(((+6!+:VA2..-0L<<:@*H'   Z"GT5\=F6;YGG%?VN-K2J2\
MWMZ+9+R22/LLLR?*\FH>QP-&-./DM_5[M^;;84445YQZ04444 %%%% 'Q%^T
ME_P3C^+?P-^+>I?MO?\ !*/7-/\ "7C^];S_ !S\+=0;R_#/C]%)9A+$"%M+
MTY;;<)M!9CN*%Y)&WOV9OVBOV-/^"GUAJ_@SXB_!W_A$OBUX6_<>//AQXFA-
MGK^B3# +K(H1[FVW$;)E^4AEW*A;;7U_7S;^W7_P39^'/[8%YI?Q>\%>+;_X
M;_&7PF/,\$?%CPPH2^LF&<6]RH(%Y:-DAH7/W6<*5#N&]K!9I5A.+E4E":TC
M4BVI+R=M7'\5TNM#S,9EV'Q%)PG3C.#WA))Q?FD]$_P?XG'^.O\ @EUJ?AW4
MO^$I_9S^,%[I5["2UO;:I*T;H>ORW, #+[ H?<UAK^T+_P % ?V62+?XR> Y
M/$NBP<-?W4'FJ$'<7=OG:3_TU#-[5<_96_X*3?$;P3\7;']AG_@I]X2L/ 'Q
M;E'E>%/%MHQ7PW\08P0JSV$[ +%<-E=UL^T[F 4*S")?M(@$8(R#U!KZB?&>
M9)*AG5"GBX6T<DE*W>-2.OSLWWU/D/\ 4;+H3=?):]3"3ZJ#;A?^]3EH_2Z1
M\[?"G_@IA^SYX]\NQ\7RWGA2^? *ZE'YML6]!-&#@>[J@KWW0/$?A_Q5I<>M
M^%]=L]2LIAF*[L+E)HG^C(2#7FOQ6_8I_9Q^+WF76N_#Z"POI<DZGH>+2;<>
MK$*-CGW=6KP/7_\ @G3\=_@_J<GBG]F#XUS[P=WV.>Y:RN' Z(70F*;_ (&$
M'M4?4.!LZ_W3$2PE1_9JKFIW[*:U2\Y!_:''F2?[WAX8RFOM4GR5+=W!Z-^4
M3[2HKXFL/VZ/VM/V?+R/0OVF?@[)?VX;8-0>V^R22'U6:,-!+]% SZU[A\*?
MV_?V:_BEY5F?&/\ 8%_)@?8O$*"WY]!+DQ'GH-^3Z5YN8\$<19?2]M&G[6ET
MG2?/%KOIJEYM(]/+>.N',QJ^PE5]C5ZPJKV<D^VNC?DFSVFBF6]S;WD"75I.
MDL4BAHY(V#*P/0@C@BGU\DTT[,^O335T%%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 5X7_P3W_Y(GJW_8]ZS_Z4FO=*
M\+_X)[_\D3U;_L>]9_\ 2DT >Z4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !16'X\^)7@#X
M7Z.=>^(7C#3](M1G;)?7(0R$=D7J[>R@GVKYF^*?_!471GO_ /A%?V=_A_=^
M(-0F?R[:^U"!UB=NWEP)^]ESZ$H?8U[N3\,YYGLO]CHN4>LGI%>LG9?*]_(\
M#.>)\BR"/^VUU&3VBM9OTBKOYVMYGUE<W5M96[WEY<)#%$A:265PJHHZDD\
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
MW+]Y2]%&6J];MG#_  I_:\_9[^,?EVWA'XBV<=])@#2]3/V6XW?W563 D/\
MN%A7I5?-?Q6_X)@? GQIYM_X OK[PI>/DJENQN;7/J8I#N'T5U ]*\T_X5-_
MP45_95_>?#KQ1+XMT.W^[96TIO4"#HOV:;]XGTAS]:?^KW"V<:Y3CO9S?_+N
MNN5^BJ+W7Y*UQ?ZQ\5Y-IF^ ]I!?\O,.^9>KIOWEYN]O(^WZ*^1/AY_P5.TZ
MTOO^$;^/WPMOM%OHFV7%UI:,RHW??!+AXP/9G/M7T9\,OCW\'/C%;B;X;_$/
M3=3D*[FM(YMEP@]6A?$BCW*XKP<VX5X@R1<V+H24?YE[T?\ P*-U]]F?091Q
M9P]GCY<)B(N?\K]V?_@,K/3R31U]%%%?/'T04444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%?('_  7GB\0V?_!)GXV>+_"7Q"\3>&]4T#P7/?Z?J'A?7[C3IO,1D^5Y
M+=E9XV4LK1D[&#G(/& #Z_HKR3QSX[^+?P^_8CNO'_P/^&EQXW\;Z?\ #N.X
M\+>&(KF*-M4U'[(OD1,\SHJH9"I<E@=H;&3@'X=_X([#]D3Q)^U'J^E>*+']
MHKP7^TIX5T"2^\5_#[X\>-M0E^W0W)$<^L65MY[6=Q \C$!XE C,N%15*$@'
MZ>T5^4OPA\:>./VV?^"5OQ]_X*JW'C;5]/\ B3_:?C+Q%\'->MM1D5O"6G:
M\RZ9I]L@;RT@D-BWVI-N+K[3-YP=2JK^AO[%OQ_;]JS]D+X7_M,3:;'93>/?
M .DZ]=64))2VFNK2.:2)<Y)".[*#Z+0!Z;1110 5X7_P3W_Y(GJW_8]ZS_Z4
MFO=*\+_X)[_\D3U;_L>]9_\ 2DT >Z4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
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
M]*30![I1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !17-?$3XR?"OX367V[XC^/=,TA2NY(KJY'FR#_ &(QEW_X"#7SK\3/^"J?
M@+3YVT;X,^ M0\07;MLAN[[-O S'H50!I)/H0AKWLIX8S[.W?!X>4H_S6M'_
M ,"=H_B>!F_%/#^1*V-Q$8R_EO>7_@*O+\#ZOK\ZO^"F7PO\,^#/CBOC+PSJ
MMBW_  D<!FU/3H+E#+;728#NT8.Y5D!5@2.6WUV_]G?\%*OVJ>;VXE\%Z'<=
M58MID>T]MHW7,@(_O94_C6[8_P#!)_PY;^"]3FUWXEWVI^)9K*1M/>&)8+6.
MYP2N\-O>0;L G<O!)QFOT/A>CE? N:+$X[,(.;7+*G33GH_YI*RCRNS^6A^<
M<55\UX]RIX7 9=-03YHU*K5/5?RQ=W+F5UVUU/B&QL;W4[V'3=.M);BXN)5B
M@@AC+/(['"JJCDDD@ #J37U'\(/^"<W[0OC_ $&TTOXI^+&\*^'HI3/%I#S&
M>8NW5Q C"-'(P"SMO  !4@ 5'_P39_9VO_$GQDO_ (B^,=(>*U\%SM#'!<1X
MSJ7*A2#WB 9CW#&.OT KZ'Q!\0L7E6/67Y;R\T4G*;2DXMK11OI?E=VVGO;3
M4^=\.O#K!YME[S',^;EDVHP3<5**>KE;6W,K))K:^NAY/\&OV*?V?/@GY5[H
M7@Y-2U2+!&KZWBXG##^) 0$C/NB@^YKUBO*OVL_VV?V8_P!B#P!_PL3]I3XJ
MV'A^VFW+IFGDF:_U24?\LK6VCS+.^2!\JX7(+%1S7RI_:/\ P4]_X*H_+HL6
MM?LJ_ N\/_'[.B_\)]XFM3_<7E=(C<=_]:."#*C8K\6KU,SSBH\5C:S:_GFV
M_E'J_2*T\D?NF$PN6Y126&P5)17\L$E\W_F]7YGKO[7G_!5OX$_LV>-T_9^^
M&'AW5_B]\9;X%=,^%7P^C^U7J/\ WKV90T=A$N06:3+JIW;"N2/*]'_X)S_M
M9?\ !0'5K;XB_P#!7+XJI:>%5G2YTK]G'X<ZE)!HMOM(9/[5O(V\S491QE5;
MRU891]K%*^FOV0_V%?V7OV&?!#^"?V<?A?::.;O#ZSK<Y-QJ>KR]3+=74F9)
MF+$M@G8I8[54<5ZMJ>JZ9HMC)J>LZC!:6T0S+<7,RQH@]2S$ 5BL53P[Y,'%
M\W\S^)_X5M'Y7EYG3["=76N]/Y5M\^_ST\C-^'_P\\!?"CP=8?#SX8^#-+\/
M:#I4 ATW1]%L8[:VMHQ_"D<8"J._ ZDFMFO&?'__  4(_8X^',YL-7^.VCW]
MYNVI9>'R^I2N_P#<Q:JX#9XP2*YG_AN;XH^/?W?[/G[$7Q#\0!^(=1\3)#H5
MG)_M++.6W+^ /:NZEPOQ#B(>UE0E"+^U4:IQ?_;U1QB_O!XW"0?*I)M=%J_N
M5V?1E%?.?]E?\%._B;_Q^^*OAM\,;*3[O]G6,VLZA%_O>;B!L>U><?'WX:_L
MY?!32CK7_!0#_@HQXNU'?'YAT";Q(-.ANU[F/3;,--)Z?)G%.IE&4X&#GC\P
MI02W4.:H_O2C3_\ *AOA8YCF-=4,%AIU)O9):OT2O+_R4^G/B-^TI^S]\(@Z
M?$KXS>&]'FC^]:7FKQ"X/TB!,C?@IKRRX_X*6?![Q'(]I\"?AK\0/B1,I*B7
MPIX2G^S*P_OS3B,(O^U@BOGCX<ZO9>.#';_\$WO^"5UDUFW_ !Z_$_XTVIL[
M!!VFACN#)=W2'^]&RMP<K7J<'_!-OXR_'R-+C]OC]L+Q%XKL& W?#SP"#H/A
M]%_YXR"'$UT@[,Q1QGK7!_:_"E+3!8:MBG_-.4:-/YI*<FO\,V?1?ZK8S"ZY
MOBZ6%_N1_?5O3DBTHORJNF>7?&O_ (++?%K0M=_X03X>?"CPK;>(YV,=GX:@
MUF3Q-JT[#J@MM+&V"7_IG,ZG\*R_#7P[_P""XO[8DOVKQ9\5?^%->%[ALQS7
M<45MJ?E'NEI9_O$8?W9YD/'6OK+PM_PP;^PUHC^%/A_IO@_P@0H2>QT.U66_
MN".GG>6'GE;/&Z0GZ\58_P"&E?B[\0?W7P*_9LUJY@?[FN>+I5TRU _OJC9>
M5?\ =P:\[$\3597I4U2H?W:$'*?_ (,FZE5/S@Z9P5.(>$<HJ>SP=%XBJOM5
MG[1^JH4DJ:7E455>9Y'\)_\ @B;^RIX?U6/QM^T1K?B7XQ>)P5>74_'&K2M;
MAP?X+:-@I0_W)6E%?1GVK]G']F3PXNF6D/A'P/IJKF*PL+:WL48?[$,87=WX
M537'?\*4_:<^)'[SXO?M$G0[23_6:-\/K/[-@'J!=2YE]L8(K?\  W[(G[/W
M@2[_ +6M? $&IZD6W2:IK[M?3N_]_,Q(5O=0*\JG4QC<G1I<O-O*<M7YNW,Y
M?]O23/-S'B/B?/>554^6/PJHTHQ_P4H7C%>2Y#"D_;'M/&$AM/@#\'O%'C=]
MQ5+^&S-CI^?0W$X&W_OFD_X1?]M/XF<^)?'_ (>^'UA)UM/#]F;^^V]U:64[
M%;_:2O:(XTB011(%50 JJ, #TI:OZG6J_P >JWY1]U?A[W_DQYO]G8BO_O->
M3\H^Y'\/?_\ )SR+0OV*?@U#J*>(/B$=7\;ZHO/V_P 7ZH]W@]P(^(]OL5.*
M]3T;0]$\.:>FD^'M'M;"TB&([:RMUBC3Z*H %6J*Z*.%PV&_A02_-^KW9U8;
M X/!W]C34;[M+5^KW?S/D_\ :C_X)T_\+ \<6WC7X+2V6F?VG>@:]83G9##N
M/S7,0'_CT8ZDY&,FO?O@9\#/ _P \#P^"O!5GZ/?W\JCSKV;',CG^2]%' KL
MJ*YL/E6!PN*GB*<+2E^'>W:_4X\)D65X''3Q=&FE.?X=[+I?J%%%%>B>N>0_
M%[]A;]F;XRZC_P ))K7P]CTC7U?S(?$OAB8Z=?QR?\]/,AP';WD#5P&J? 7]
MMOX/I_Q;KXJ:#\7="B^[X<^)]BJ:BJ?W8[]!^]<_WI<*/2OIVBO?P_$F:4Z"
MP]=JM26T*J4XI=HW]Z'_ &Y*+\SCJ8'#5&VERM]5I]_1_-,^1!^T3^R?8ZG%
MX7_:]_9#7X7:Q._EK=:]X5AGTZ=_2'4+>/:XZ_,0JCUKU#2?V2?V*/BCH\7B
MCP?X*T74K&?FWU'P_K<WE-WRK03;37L6L:+H_B+3)M%\0:3;7UG<)LN+2\@6
M6*5?1E8$,/8BO"/%?_!.CX-QZU+XT^ ?B+Q!\*_$$AW-?>"-1:"VE/82VC$Q
M.G^PH0&HG@N"<V_B47AIOR56E]SM4@OG59P5,KI?;HTZJ\XQ4OR:?_DIS?Q0
M_P"".W[#WQ<9YO%G@;4?/<8-W!J9\\?25U9_UKE8?^"4WQ=^$-NB_LA_\%&/
MBEX.AMP?LVA^)9TUS35]%6"0QJ@/0G#'VXKO/^$I_P""B?P ^7Q;X,\/_&?0
M8?O:EX>==)UI4[N]NV893Z)%R?6NE^&?_!03]FSX@ZR/!NO^);OP3XE4A9O#
M7CRR;2[J-CT7,O[MB3P KDGTKAK^'UH2Q&#I1K06\Z$F[+O*,>6I!?XXQ/I<
MKXHQV545A:=64:?_ #ZJ>_2^5.?-2?R1\Z^)=6_X+J? :7S-4T[PE\5]'A.6
MO?"2VL%XL?\ >:VN(XFD?_9C9NO6O-OB]^W3X8_:6\"7_P"S#^W=X"\'Z!9Z
MTNR?PS\9/!FK:--YB\">&YBWPP.I.5F$B,N001S7Z?QR1RQK+$X96 *LIR"#
MW%9_BOP=X1\=Z++X;\<>%M-UG3IQB>PU6QCN()/]Y) 5/XBOEGE6,H5%/#8J
M<6OYFY6]'=-?>SNK5N',RO\ 7<)*#>\J%6=/[X5/:TOE&$$_+<_.3X%?M$_&
M_P#X)=_LYS>(OB;\1'^,?P1TR1(?#_B:RU9=:N/#4!XC@GU"P25I+51\JO-
M F57S5&Q*^K?AY^W!KOQ&\$Z9\2?#/[-_B/6M UBU6YTW6?".HVNK6UU$?XX
MY(6 <<$<=""#@BN:^(__  1X_8E\8WUUK_P^\):S\--8NX7BEU;X:Z[+I;%&
M!!3R!NM]IR05\K!!P>*^;]"_X)X_MW_\$DM*UWXG?\$[_B=%\2_"<TKWVN_!
M[6]),1F/\4UE#%*(S.%R2(#;EPJKLF(1*WD\QDFZTINHWO'V<HOU3A"2?HY7
M_$Y5PMEM6W]G9S**_DQ%.,6O)3A&I%KSE*G^A]G_ /#;7@2Q_P"1J^%/Q%T/
M'WO[6\(2IC_OAFJQI_[=W[*U_+]FD^*26DP^]%?Z5=PE3[EX@/UKY4_95_X+
MTZ3\;O!=UXO\??LA^.+6STB[-GXBU3P1#_;,>CW"DAEO[;$=S8<JP D0D[3M
M+#FOIKX0_M[?L*_M/K'IOP_^/7A/5;N8[4T75Y1:7I;NHMKM4D8@\'"D5DL1
MB8U?92KQC/\ EG!QE]SE%_@9XGA'C3"8?ZS!QJTOYX056'_@RE4<%\_N.VTC
M]IC]GG7-HT[XV>%V9ONQRZW#&Q_X"[ _I74:3XM\*Z_@Z%XFT^]ST^R7L<F?
M^^2:PM7^ 7P,U[+:Q\'/"]PS=9)=!MRW_?6S(_.N7U;]B']E;6L_:_@YI\>>
M]I<3V_\ Z*D6NJ^:1Z0E\Y1_21X'-G</LTY?.4?_ &V9ZK17C7_##'P=L?\
MD5?$/C#0L?=_LCQ5<)M^F\M6=XL_99^+&@>&[RZ^$7[47CZ35(H"VG6?B'7$
MN89)!R$9FCX!Z#CTSQ2EB<=3BW*A>W\LD_S412QF:4HN4\->W\LT_NNHW. _
MX*G^-?A5=> M.^'M]-]I\6P7JWFGQVY!-G"1B0RGLKKT7J2JMT7D_P""6'C7
MX56O@+4?A[8S?9O%L]ZUYJ$=P0#>0@8C,1[JB]5Z@LS=&X^./B"OCA/&VJ)\
M2C??V\+QQJO]HDF;SL\[B>OMVQC'&*7X=_\ "<_\)SI7_"M/MO\ ;_VU/[*_
ML_/G>=GC;C]<\8SGC->3_P 10SW^RO[&Y?W'M.;E^U:UN3_P+WO\1^,_V[_Q
MF?\ ;/L5S6Y.6VMMK_X[:7[>[L?KW16-\//^$X_X0?2_^%E?8O[>^Q)_:O\
M9^?)\['.W/ZXXSG'&*V:^DA+GBI6M?N?O-.?M(*5FKJ]GNO7S"BBBJ+"BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***\S_
M &D/BK\4OAU=^ ?#/P@\+Z!J>K^-?' T1V\2ZG-:VUG;)IM_?S7&88Y&DD$=
MBRK&  S.,L@!8 'IE%?!'P1_X*@?M3?M(?&KQ+\7_A-\,OAX?V8/#/Q6L/AU
M9^)]3U&\37_%FI3ZA;:9-J6F,F;4V45Y=1JJNI:=4?9('^0?>] !1110 444
M4 %%%% !1110 5X7_P $]_\ DB>K?]CWK/\ Z4FO=*\+_P"">_\ R1/5O^Q[
MUG_TI- 'NE%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%4?$/B;PYX
M1TM];\5:_9:99Q?ZR[O[I(8U^K.0!7@GQ4_X*8_L]^ _,L?"$E[XJO4R NFQ
M^5;AO0S2 9'NBN*]7+,CSC.9\F"H2J>:6B]7LOFT>3FF?9-DM/GQU>-/R;U?
MI'=_),^B:Q_&?Q"\"_#K3#K/CSQ?IVCVO.)M0O$B#$=EW'+'V&37QR?VC_V_
MOVH";?X*_#U_#FCS\+J%K;A 4/K=W&%)'_3(*WM6QX,_X)?>)?%NJ#Q5^TA\
M9[S4;R7!N+?39GFE?OAKFX!/X!/H:^I_U.R[*O>SO'0I-?\ +NG^\J>CMI'U
M=T?*?ZYYCFWNY%@)U4_^7E3]W3]4WK)>2LSJ/BG_ ,%2O@MX4,EA\-="U#Q1
M=+D)/M-I:Y_WG!D/X)@^M>?_ /"P?^"D/[4_R^#=!E\'Z)/]VY@C.GIL/1A-
M*3._UBX]J^G?A9^RS\!/@V(YO OPWL(KR/!&I7:?:+G/J)9,LOT7 ]J]!I_Z
MQ\,91IE. 4Y+_EY7?._507NI]FG\A?ZM<4YSKF^8.$7_ ,N\.N1>CF_>:[IK
MYGR-\._^"5VBRWO_  D/QW^*%]K=[*V^XM=,)1';OOGEW22#W 0^]?17PS^
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
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 44V66."-III%1$4L[L<!0.I)[5Y#\5/VZ_V:_A3YEK?>
M/(]8OH\@Z?X?473Y'4%P1&I]F<'VKNP&69AFE7V6$I2J2[13?WVV]6<./S3+
MLJH^UQE:-./>32^Z^_HCV"H=1U+3M(LI-2U:_AM;:%=TUQ<2A$0>I9B !]:^
M,-8_X*$_M&_&O49?#?[,7P5EBYVF^>V:^GC]&. (8?\ @>X>],T_]@[]JOX^
M7L>N_M-?&62SA+;Q8-<F\EC]0L:%8(OJI/TKZ^/ W]GQ4\[Q=/#+^6_/4_\
M (_Y_(^-EQW_ &A)PR/!U,4_YK>SI_\ @<O\M>Y['\5/^"B/[-GPV\RSTWQ+
M+XEODR!;:!&)8\]LS,1'CW5F/M7C-U^VG^V9^T9</I7[.'PB?2[)V*#4(;;[
M2Z=L-<S!8$_[Y!'8\5[C\*_V ?V:?A?Y=V?!G]OWT>#]M\1.+CGVBP(AST^3
M(]:[_P =?&+X*_!?3E'Q#^(_AWPW!%&/)@U'4H;<[0. D9(+>P4&MZ&8<)9?
M45+*L#+%5>DJVJOY4H[KULR)93QIFZYLRQL<-3_DH+WK>=26J?I='RUX>_X)
MO?&CXKZHGBK]ISXVW$DK<FTMKA[VX4'JGF282+Z*'6O>_A7^Q7^SA\(_+N=!
M^'=M?7T>"-2UO_2YMP_B&\;$/NBK7&7O_!2OX*:]=R:3\"/ WCCXF7B-L(\'
M>%IW@1_]N:81JJ_[0W"HO^%C_P#!2+XJ?+X(^ ?@OX<64GW;WQMK[ZC=;/[R
MPV@ 1O\ 9?\ &NK,L1QUF%/V>.JK"TOY)2C027;V=U4DO^W9'9E?#'">5U/:
MT*/MJO\ /*]23??F=TGZ6/HT * JC '0"N5^(WQS^#/PAMS<?%#XIZ!H.%W+
M'JFJQ0R./]E&;<Y]E!->.?\ #%?QR^(_[S]HG]M_QKJ<4G,ND>"H8="M"/\
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
MNTM!_9FH3372SK'(PD$,,L8"J21,PZ9H _,/X4?$W_@C=XA_:3^$?AGX*?\
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
M"H#.5 '8; /:OT$HKEED>!JQ2KN51+;FG)_A>Q?^L7$*;<,7.FW_ ,^K4/\
MTPJ2/DOP+_P14_82\$.DZ^ KG4)5_CO'AS^!2(,/^^J];\+?L+_LF^#HEAT3
MX)Z5M4YQ=O+< GUQ*[#]*]9HK>EE&5T?@HQ^Y/\ ,\7%TUF$^?&-U7WJ-U']
M\VV8.@?"OX8>%-I\,?#G0M.*_=-CI$,1'_?*BOQN_;T_X)P?\%6/VR/VJO%G
MQWN?V7GBL=0O?L^@6LGC31 ;?3H1Y=NI'VWABBAV_P!MVK]KZ*QS/)L+FE"-
M&;<8IWM&RN_.Z>Q]AP3QAC. L94Q67T*4IRCRWG&3Y5>[Y>64+7LKWOMI;6_
M\ZWA#_@CU_P4@\=?;_\ A'/V9;UO[-O6M+S[7X@TVUVS+]Y1Y]RF_'JN1R.>
M:_8+_@D/X"_:U^#/[*L'P(_:U^%K^'K[PG>O;^&[HZS8W@O=.D)D52;6:3:T
M3ET^;;E#'C.&Q]3T5QY3PWA<HK^VIU).5FG>UFO2U^W4]_BOQ5XAXTRA8#,Z
M%"RDI*4(3C)-7VYJLTKIV=[W\G:Q1117T9^9A1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %?"G_  6+_86_9]\3?#K4OVX+/PY+HWQ$\,0VMK<:QHLWV<:[9SW,
M-M]EU!%&+I$\Q)8RWSH\$>&VC;7W77@/_!4GPKXW\8?\$_\ XGZ;\.?"\FMZ
MS::"FIV>CPR%9+W['<17;PH0K'>R0,J@ DL0 #FOH>$\=#+N)\%B)SY81JTW
M)Z_"IIRO;=6./,:2K8&I&UWRNWK;0_%FBOE?_AYC_P!44_\ +D_^YJ/^'F/_
M %13_P N3_[FK^UO]=>&?^?_ /Y+/_Y$_,/8U>Q_2'_P2@_Y,"\ _P#<5_\
M3K>5]$UX#_P2V\*^-_!__!/_ .&&F_$;PO)HFLW>@OJ=YH\TA:2R^V7$MVD+
MDJIWJDZJP(!# @@8KWZOXEXHQ-#&\38[$49<T)UJLHONG.33U[IGZC@8RA@J
M49;J,?R04445X1U!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %?!O\ P6>^$/@WPQIOA#]LGXB_\%*/B5\!_#7@KQ$7U:'P
MI<B\.H7,^G7EE;+IUH\$[+?,UQY9$:%'@DN2R!OWJ_>5>6?M4?"+QI\1]+\(
M^.OA=I/A[4O%OPX\7CQ+X9TCQ7/)!I]_<?V?>Z>\$MQ%%*]J3!?SE)TBD,<B
MHQ1UW*0#XR^%?[(G@'5/'WP'^*?QX_X*L_M(^./#WBO5-'\7?"_0O'-[8V>C
M:[JB0G4+*TN7M[)&$XC7SEM)'C,OEL$\SRY%7](*_,:3]G#_ (*1?'K5OV<_
MAU^V'X)^'WP2^#/P#\:^$M5NKC2O'3:]K/C37M.:&TTJ",QVT,=G;2W<B!D;
M+_O%&3V_3F@ HHHH **** "BBB@ HHHH *\+_P"">_\ R1/5O^Q[UG_TI->Z
M5X7_ ,$]_P#DB>K?]CWK/_I2: /=**** "BBB@ HHHH ***R_&GC+P[\/?"U
M]XU\6WKVVFZ; 9KVXCM9)C%&",MLB5F(&<G .!DG@$U=.G4JU%"";DW9):MM
M[)+JV14J4Z--SFTHI7;>B26[;Z)&I17BW_#PW]CW_HK_ /Y;^H?_ "/1_P /
M#?V/?^BO_P#EOZA_\CU[?^JW$_\ T UO_!4__D3P_P#6OA;_ *#Z/_@V'_R1
M[317F_PQ_:X_9\^,GBE/!7PU\>/J>I/ \PMTT:\C C0?,S/)"JJ.0.2,D@#D
M@5Z17EXS XW+ZOLL52E3E:]I1<7;O9I.QZF#Q^!S&C[7"58U(WM>,E)7[73:
MN%%%%<IUA1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%>8_&#]M/\ 9+^ 7FQ?%_\ :(\):'<PY\S3
MKC6HGN^.N+>,M*?P4UG4JTJ,>:I))=V['3A<'C,=55+#4Y3D^D4Y/[E=GIU%
M?&'B?_@MY^S9>,UM\!_AQXV\?,2?)U.VTD:;IK8ZYGO6C?\ !8F/M7('_@I-
M^U[\8]0/ASX3?";2=)N;A#Y=II-O/K%[#SPPE98X\>NZ @>O>OH,DX<SGB"/
MM,'2?LMW4E[M.W?GE:+_ .W6WY'B\29MEW"<O99G5C"MM[)-2K7[.E&\XO\
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
M6WQ,.-:L/#WQ=A\<1W7^L&H";51,D@/.\@H,'DY%?=7_  2<T[Q=I'_!+_\
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
M!T '84ZBN6OB:^)E>K*]MNR]%LEY(VIT:=%6@K?UU?4****P- HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ KPO]O;XL_M1?#OX>^%_!'[&/AKPG>_$CXA^,4\.^'M
M1\=SS+H^C :??:A<7URL'[V8);V$RI$G+2R1Y^4-7NE?/'_!3+XC>#/ G[/5
MGHGB+]G?QG\4]8\5>)[;2?!O@[X?7SV.L3:J(I[M;BWOHY8GTYH(+6XG-TLB
M&,1$ Y;! .!\??M^?$/X _"O]D[XJ?$S4M%U9_CKKOA/P?XF\/VMH89_[4UB
MSWC4K!@V?+BN"/-@=7!A8,KQLF)?L6OSYM?V OV&/^">_P"U+\(?CC\5]*^(
MGC>XO];M?!/PP\9?$OXFWGB!/!&JW<;QV=C!97!\NVAE$2P1W$?FLDSHI6-6
M\VOT&H *\Q_;#_96\%_MK?L]^(OV9OB7XN\0:3X:\5V9L]?_ .$:GMHKBZMB
M06A\R>";8IP,E K>C"O3J* //M:_9H^&OCK]FRZ_94^,,5SXW\*:EX;;0M8C
M\2"'SM0LVC\O$AMHX55PN,/&J,I56!##=7-_"O\ 8H\"_#WXHZ-\:O&7Q(\7
M_$+Q3X7\,R^'_".L^.KNTFDT+3YC$;A+<6MM;J99O(@$MS*LEPZQ*IEVY!]E
MHH ^>/'/_!,_X!>.[KQMHMUXB\4V'@GXF>(TU[XC_#33+VUCT3Q'J'[KSIIP
MUNUU$+CR(/M$=O<11S[#YB-YLWF?0EO;P6D"6MK D442!(XXU"JB@8  '  '
M:GT4 %%%% !7A?\ P3W_ .2)ZM_V/>L_^E)KW2O"_P#@GO\ \D3U;_L>]9_]
M*30![I1110 4444 %%%% !1110!^5M]_P;1ZK>^(7\4?\-TM'=FY$Z2I\-<&
M-@<KC_B9<8P,?2NG^*W_  01\=_':SM=/\5_M96VB0Z5<R+#%:>"#<B_X %T
MV;Z/RB1G$7S[,GYVSQ^E=%33BJ>"QF%3?)BVI5KRD^=QDY)M\U[\S;=M^I])
MB^+N(,;G&79I5J1=? *<</+V5%>S4XJ$DE[.S7*DE=/EW5F?G/\ "?\ X-U_
M@YX5\!ZKX>^)GQ_US5O$<-];W_P]\>^%-/DT'5_!UW&)?,EMI5NIA()2T19&
M '[H'[VUDDU?]I_]IW_@GY-!\-O^"N?PLL/BQ\)Q*MMH_P"T9X:\,+<?8HR=
MJ#7=.57:W;D SQ J25 \URS#]%*AU+3=.UC3Y](U>PANK2ZA:&YM;F(/'-&P
M(9&5@0RD$@@\$&O1P6.J82E"C*\H024?>?-%)))1EJU9))+566Q\]G56OGN.
MJXW%-.K5?--\L4I-[N48I1=]VTD[ZWNV?/6F_L>?L*?M*^"+'XG_  CCL;G1
MM:M_/TWQ!X+US?;7"'NF&>'@Y! 7(((/(Q7GWC'_ ()+1PN]W\,?C--"V"([
M;6+#)/UFB8?^BZP?B1_P2\^+_P"R?XWU']HC_@C[\2+/P+J5]<&[\3?!+Q$S
MR>#O$S=6\N('.FW! P'B(7A5'E)N)] _9!_X*J_##X]?$!OV9OV@? VI_!GX
MWV*A;_X9^-75&OCS^]TRZP(]0A;!*E,.0"0I4;S]7AN*^*<'2<L'C)5*:WC.
MTVEVE&7-IYQT]-CX7&\%\)9A/EQ6#A";V<+PN_)QY=?)Z^IX;XG_ &!_VLO
M,92V\#:+XFLXR2[:;-$[./\ @8BG/_ >:\P\7_#GP)HUS]D^/W[)E[I[$[?,
MA\RT8^_^FPW ?\",]B*_6NF7%M;WD#VMW DL3KAXY%#*P]"#UK#_ %ER/&RO
MF64T)M[RIIT9OUE#5GCOPU6#J>TRO'5*4NG,HU$O)72:7S/Q^'[*O_!.SQ^0
M;C6+_P ,S$8(UCPBL\0/M+9S!L>YC_"I;7_@CC\'_'CK/\(/C/X+U>8'-M;:
M?XF>TO >Q\IXPP_%J_3?QO\ LA?LT_$'>_B/X.Z,)9.6N-/@-G(3ZEH"A)^N
M:\?\;?\ !*'X-ZQOF\#>.M<T25ONQW(CO(5^BD(_YN:7]G^&V8;3K8>7:I&.
M)IKT4U-_@>EA\=XPY!_NF-G4BO\ GWB:]&3^4I.FONL?&4W_  2Z_;O^%5NW
M_"%_$'XD:6(Q_H\WAGQC.S >PAO,C_OC\*SHM-_X*F?"&S:35/VG/BM:20Y*
MCQ%>3W&<="?M=FZD?5L5]7_\,6?MR_!O]Y\%_CS]NM8O]58Q:O-;[L=/W$VZ
M'\VH_P"&GO\ @HM\%_D^*?P:.M6L7$]W)HA8 #_IM9'RA]2#6T>!*6*7_"=B
M\)B>T7%4)_\ @-%T'_Y,=#\6>.L!IF<\3#NZM&EBH?.3CK]Q\N^%_P!MK_@J
MKX>M?M>J_M)6NIQ+]RWOO!>AS-CL"89H9&_$9KL] _X*D_\ !331X?M>O^!_
MAS=6"?>N=;\$:]9RL/7=:M-$!7NVF_\ !1G]G7QV_P!E^.'[-R+*3MEE6SMM
M14-W)$RQL/IR1[UTNC/_ ,$NOBW*DEDVA:3=L<JLMQ<Z0T;>QW1QD_0D5Y^.
MX0SO+;O%91)+O1KUTE\YO%I?-L];+_%FIF5E"M@*[[3H0P\G\H0@_N/"/#G_
M  6U_:#$H@U/]FCX?Z^5.)7TOXI#1_KA=3MU/'IGFO0O#7_!9;6M0*KK7[#W
MC&Z8GYE\#^*=)U\_0"WF4D^U>N:E^P9\'/&VG+>^%OBMXH-HP_<H-;BU"S(]
M-DR.&'XUPGB?_@E;I=YN;3=<\%W\9Z6VI?#RUM2?<SV91R3ZU\XXY,G:2Q=+
M_M[#5K??##R9]+'BRLU?$9'0FN]*I6C_ .E5VON@78_^"P7P0TV,3?$/]G+X
MZ>#T(R7\2_"ZXC"_4Q/)6AH7_!9[_@FSKEQ]@E_:0BTVZ!Q);:SX<U*T:,^C
M&6W"C\Z\SE_X)J_$'P6[3>$?ASHUO@Y63P-\0]6TV9CZXNI)$4_08K/UW]GW
M]HK1[?[)K=U\>8X%&!!<Z[IWB^%1Z+')&F1[9I>QRA_!F4H?]?L)47WNC4JH
M?^M?"C_WK*L13?\ <K77_D^&DO\ R=>I].^&/^"A'["WC'8N@_M>_#EW<X2&
MX\76D$C'T"2NK'\J]%\,?$[X:^-@#X,^(>AZN&^Z=,U:&XS_ -\,:_-WQ+\(
M?#T3,/B#K'@&X<\!?B?^S#9V<J^S364;O_P+.:P9?V1?@IXN(&H?L[?LQ>)
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
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 '3K7S-^U/^T%^QE\4_P!E7P_^
MT&G[?GA+X=Z#)XD,OPU^-%GXFTXV5MK<27EL5B>Z+6MWNC6_@EMWSOC\]1L9
M0Z?3-?%'_!7KQO\ L^_LC_LR_"V\\=^%OA1H7PNL?CIX?7Q7I_C#PA)=6%MI
MADN;FY:PM+4!!>Y5G4LI4J9SLE<K&X!\U>!]7_9[_:0_:Q^%GB[]M'_@O_\
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
M1RX^\(X2?, 95D##%=&'PM?$MJFM%N]DO5O1?,RJUJ=%>\]_O?HC[#\=>/?
M_P +_"5]X]^)/C'2] T/3(#-J.L:S?QVUM:QCJTDLA"H/<FOB;7O^"I/[0/[
M9NMW7PR_X)!? '_A++2*=K74_CK\08)M/\):8P.US;*5$^I2*?X8U&#M;;(A
MS5OP+_P2/\9_M$^+;'XV?\%</CQ+\8]=M)Q<Z5\--(62Q\$Z#)V6.S&&OF'3
MS9\;UX='QFOMG0- T'PKHMKX:\+Z)::;IUC L%CI]A;+#!;Q*,*B(@"HH'
M  KJO@<)M^]G\U!?DY?@O)HQMB*^_N1_\F_R7XOT/D/X#?\ !'OX<VGQ"M?V
MD/V\OB?JG[0OQ5B_>6^L^-8%&C:*Q.XQZ;I2YM[= V""P8AE#*(R2*\5_;M_
MX-@_V/?VL/B+J'Q=^#7C[4_A-KFL7#7&KV>DZ3'?:3/,QRTJ6C/$T+L221'*
M(\G(0')/Z8T44\WS*C6]K"HT]NEK=N7:WE8)X'"3I\DH77X_?O\ B?F?^PC_
M ,&PG['W[)WQ&T_XO_&3Q_J?Q9UW1[E;C2+35=*CL-)@F4Y29[17E:9U(! D
ME*9&2A."/TPHHK#&8[%X^ISXB;D_ZV2T1I0PU##1Y:4;(****Y#<**** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH *_,+X[_M!_\ !9WX_P#B/Q+^
MTO\  ;]E/X'^(/V>OAUXQO)-!\#>-KV['BKQA%HM[+#-J=E(@,%M(\MM,UL)
M2GR[-R2A_F_3VOSHTK_@A[^TI=>'-0TJ3_@L/\>O"VGZU?:C=S^#O"E[:)I>
MFI>W,T[VD DC9C&OG,F2?FP3A<X !]S6.C_"#XF>!M"\97?A/2WTV_;3-8TE
MKVRCC:.;S(;BT<?W9%E$14 YW #FNQK\_P#PE_P1J_:5^'OC#P-XH/\ P5Q^
M.GC;2?"'C70=5G\#>+K^V_LK4;2RO[>9X)5@1&(6.,L@R5WHF0:_0"@ HHHH
M **** "BBB@ HHHH *\+_P"">_\ R1/5O^Q[UG_TI->Z5X7_ ,$]_P#DB>K?
M]CWK/_I2: /=**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@#A_P!H
M;]FKX$_M7_#*]^#W[1'PPTKQ7X=OAF2PU.#<8GP0)8I%P\$HR<21LKKDX(KX
MR_X5?_P4/_X)*?Z;\ +G7/VD/V?[/F7X>ZM<A_&7A*V';3K@C&HP(O2W8;P
MJ(JC=)7Z"T5UX?&5*$?9R2E![Q>WJNJ?FK,PJT(U'S+27=;_ /!7DSR/]D#]
MN7]F;]NCP WC_P#9T^(T&J"T81:UHETAM]3T:?D&"[M7_>0N"&&2"C;249AS
M7KE?*O[7_P#P2J^%_P ?/'Z_M,?L_P#CG4_@S\;[%2VG_$WP4BHUZ>/W6I6N
M1'J$+8 8/AR %+%1L/G_ ,-_^"H?QA_9.\;Z=^SO_P %@OAO9>!=1O;@6GAG
MXW>'5>3P=XE;HOFRD9TVX(&624!.&8^4FT'=X.GB5SX1W[P?Q+T_F7IKW74S
M5>=)\M?3^\MOGV^>GF?=5%0Z;J6G:QI\&KZ1?PW5I=0K-;75M*'CFC8 JZLI
M(92"""."#4U>:=84444 %%%% !1110 5^8G[=WP&'P.^.EX-(LO*T/7]VH:0
M$7"1[F_>PCL-CYP.RLE?IW7%_&/X#^!/CA_8/_":V7F_\(_K46HVV%!\S;]Z
M%L]8WPNX=]HK[3@;BG_5;-W6J7=*::FE]\6O-/\ !L^)X\X4_P!:\G5&G958
M23@W]TD_)K7U2.*_80^ _P#PH_X%67]K67E:WX@VZCJ^Y</'N7]U">XV(1D=
MF9Z]IHHKYK-,QQ&;9A5QE=WG4;;^?1>26B\D?395EN&RC+J6"H*T*<4E\MV_
M-O5^;"BBBN ] **** "BBB@ HHHH ***^<?VQ/\ @J3^RU^QWK=O\,=8U;4O
M&OQ+U,A-"^%7P_L3JFO7TK#**8(_^/=3UW2E<@$J'(Q6M&A6Q$^2G%M^1%2I
M"E'FF[(^CJ^2?VF/^"O7P2^%WQ#E_9Q_9B\%ZS\=_C VY$\ _#K;/'8.#@MJ
M-_@P6,:GARQ9TXW(H.:\Z_X9J_X*:?\ !2L_VC^VE\1YOV?/A-=\I\'OAKJH
ME\0ZM;GD)JFK 8B5@<-#",,K%71&&ZOK;]F?]DO]G']CKX>Q?"[]FGX0Z/X2
MT=-IFBTVW_?7;@8$EQ.Y,MQ)CC?(S-CC.*[?98/"?Q7[27\L7[J]9=?2/_@1
MS\]>O\"Y5W>_R73Y_<?)UC_P3A_:^_;YOH?&?_!6KXZBV\*-*L]G^SS\*[^6
MST6, Y5-3O5;SM0<<;E5@BLN8Y-IVU]J?"KX1?"[X&>!K'X9?!OX?:/X7\/Z
M;'LLM'T/3X[:WB]2$0 %CU+')8\DD\UT5%<^(QE?$)1D[16T5HE\N_F]7U9K
M2H4Z3NM6]V]6_G^FP4445RFP4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 5Y+\-/VN_"?CGX9>*?COXL\':IX*\ >&I-2D
MB\8^++NSAM=2T^REECEU.)8IY)([1EA>5'F6-VC*OL 89]5O["QU6QFTO5+*
M*YMKF)HKBWGC#QRQL"&1E/#*02"#P0:_-'XO_P#! ;Q%\<?&>D_ _P 6?$'X
M6:5^SKI'B4:M-HOA3X4Q6'C'6;-9FFBT.\U9),?9(R5C\Z)(YI(D57W/^\H
M]>_9:_X*Z>/?VE-7T+XEW?[ /CWPI\"?&VOPZ1X ^,VKZU8L-2EN)Q;V5Q<Z
M2&%W96MU.T<4,Y$BEIH=VQ7W#[5KY7^/_P#P3;^%'CN]\$^ _@_^RQ\#?#OA
M#3O%6CZGXMU*7P;;+J+V6GWD5V-/LX(K01*LQMXHI)))<>2\J",E@P^I+2TM
M;"UBL;&VCA@AC6.&&) J1H!@*H'   P * )**** "BBB@ HHHH **** "O"_
M^">__)$]6_['O6?_ $I->Z5X7_P3W_Y(GJW_ &/>L_\ I2: /=**** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH *P_B1\-/A[\8?!&H_#7XK>
M"=+\1>']7MS!J>C:S9)<6US&>SHX(/."#U! (P16Y133<7=;B:35F? &I?L3
M?MI?\$QM1G\>?\$OO$DOQ!^%PF:XUC]F[QQK#$VB$EG.A:A*6:W;DD02DJ3N
M)\UBJCZ _8I_X*2_LW_MP07WASP/J5_X;\>:#F/Q;\,/&-H;#7M%F7 =9+9^
M9$!('F1[E^8!MK':/?Z^>?VU?^":'[.W[:L]CXZUZ+4O!WQ)T'#^$_BKX)NC
M8Z[I,JYV8G3!GB!)_=29 #-M*$[J]'ZU0Q>F*5I?SK?_ +>7VO727F]CE]C4
MH:T=OY7M\GT]-O0^AJ*^ ]&_;P_;!_X)L:M;?#;_ (*M>%#XL^'K3I:Z'^TK
MX%TAVM0"0J+KEA$"UG*<@&6,%"2 HDPSU]R^ _'_ (&^*7@_3_B%\-?%^FZ_
MH6K6XN-,UC1[U+BVNHCT>.2,E6';@]017/B,)5PZ4GK%[26J?S[^3LUU1K2K
MPJW2T:W3W7]=]C7HHHKE-@HHHH **** "BBB@ HHHH **** "BBN!_:-_:E_
M9Z_9'^'DWQ4_:1^+>C>$=#AR$NM5N=KW+@9\N")<R7$F.?+C5F/I50A.I)1@
MKM]$*4HPC>3LCOJ\9_; _P""@'[*/[#'AN'6_P!H?XIVNG7U\,:)X8L$-WJ^
MKR$[52VLX\R29;"[\! 2-S+7S5_PU=_P4D_X*4?\2O\ 8,^%\GP-^%=W\K_&
M[XHZ0'U?4H#P9-)TACP".5FG.QE.08V&*]F_8_\ ^"5O[,'[)'B6;XNM::K\
M0?BEJ!\S6OBO\1+TZGK=S*1AC'))E;9>H"Q!3MPK,^,UZ'U2AA=<5+7^2._S
M>JC^+[I'+[>I6_@K3^9[?);O\%YGC/VW_@J]_P %->-,@O\ ]DSX-7G_ "\W
M"K/X_P!=MC_=7[FD!AW/[Y#R#(IKZ._8[_X)X_LG_L+Z)<6?P"^&<4&L:B"=
M>\8ZQ*;W6M8D8[G>YO),R/N;YBB[8PQ)""O;:*RK8ZI4A[."4(?RKKZO>7S?
MI8NGAX1ESR?-+N_TZ+Y!1117$= 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !7A?_!/?_DB>K?]CWK/_I2:]TKPO_@GO_R1/5O^Q[UG_P!*30![
MI1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 5
MM9T;1_$6DW.@>(-*MK^PO8'@O+*\@66&>)@59'1@592"00000:^&?'O_  3)
M^.W[&?C#4/CW_P $>?B':>&/MMPUWXE^ 7BJ=Y/">OMU8VF6W:9<-C 9"$SL
M7,4:D'[OHKIP^*K89OEU3W3U3]5^NZZ-&56C3K6ONMFMU\SY=_8X_P""I_P@
M_:4\;3?L[_%SPCJGPA^->F+C6/A5XX(ANI3@DRV$Y"IJ$! +*\?S%06V!<,?
MJ*O'/VQOV"_V9/V[/!,/A#]H'P"MW=:>WF^'_$^F2_9=7T.?(*S6EV@WQ,&"
MMMY1BHW*V,5\NCXX?\%!_P#@DRPTS]K"RUC]H7X"VIVV_P 6?#]EO\5>%K?L
M=6M ?]-A0#YKE#NP&=V)*Q5T_5\/C-<-[L_Y&]_\+Z^CU[.1C[6K0TJZQ_F7
MZK]5IZ'Z"T5QOP'_ &@_@G^T_P##6Q^+_P"S_P#$O2O%?AS45_T;4])N0ZAL
M F.13AHI%R-T;A74\,H-=E7GRC*$G&2LT=2DI*Z>@4445(PHHHH ***K:QK&
MD>'M*N=>U_5;:QL;.!IKR]O)UBB@C499W=B J@ DDG  HW LU@_$OXH_#?X,
M^"K[XD?%OQWI'AK0-,B\S4-9US4([:V@7_:DD(4$G@#.22 ,DU\>?$3_ (*\
M:]\<_&5]\"_^"3?P+G^-WBBSF-OJOCRXD:S\%^'Y/[T]^<?:V ^810']XOW'
M8C;4GPS_ ."0=[\8/&MC\>O^"K'QON?CMXPLY?M&E^#WB-KX-\/O_<M=-&%N
M2!\IEG'[P ;XRPW5Z*P,:*YL5+D_N[R?RZ>LK>29RO$.H[45S>?V?OZ_*_R,
MC4_^"E_[5'[=6I7'@/\ X)%_ 47?A\3-;W_[07Q/LIK'P[:X)5VT^V91/J,@
MYP=H56 WH5.ZNW_9R_X) ?!_P/\ $.']I#]KWQ]J_P ?OB\,/_PF7Q!19+/3
M&SNV:;IN3;V<:M@KPS(1E&3.*^MM,TO3-$TVWT;1M.@M+.TA6&UM;6%8XX8U
M&%1%4 *H   '  J>E/'N$73PT>2+[:R?K+?Y*R\@CAE)\U5\S_!>B_5W?F%%
M%%>>=04444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 <9^T1\>/AW^R]\"O%
MW[1/Q:U867AOP7H%SJ^KS\;O*AC+E$!(W2.0$1>K.RJ.37RO_P $S/CA^V3^
MUQKMO^T+KO[?/P'^(?PQGMYFO?"/PL\,R/>:3>RH&BLI[U[IB##NY+PH\FQ6
MVJ&KZU^+GQ(^#WPJ\#7/BWX[^._#?ASPUYT-K>:EXLU."TL?,FD6**)Y+AEC
MR\CHBJ3\S, ,DU\>Z#^R=\&OA9_P60\'?&K]B32M'\/1Z]\--<7]H'1?""QQ
M:9=V^^U.BW5S!#B*.\DN&N3&^!)-%#.1D1N2 9$/_!0O]IGXS?LJ?&W_ (*/
M_ 35](3P+\)/$6NQ>#O =QI22)XQT7021J=W<W9_>PSW'DW@M1#L2'RX3*EP
M691]L_!7XM>#_C[\'/"?QT^'ET\^@>,_#5CKFB32KM=[2[MTGB+ $X;9(N1V
M.:_+C]D^0_LD_P#!O5^TG^R_\0XGB\7_  LN/B+X*O\ 2G0FXO=3U&6Y?2EC
M3[TGVP:G9&$@'S!.NW.:_0?_ ()T?!/Q7^S=^P+\%_@'X\C\O7?"'POT/2M;
MBW!A%>0V,23Q@CJ%D#J#Z 4 >S4444 %>%_\$]_^2)ZM_P!CWK/_ *4FO=*\
M+_X)[_\ )$]6_P"Q[UG_ -*30![I1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !2,JLI5@"",$'O2T4 ?%?QY_X)/ZG
MX'^)5]^U5_P2\^*47P4^)MTWFZUH,=N7\)>+B"3Y>H6"@K$S9/[^%=REF8(7
M;>+W[-7_  5ATZ\^)UK^R=_P4&^%TOP,^,<N(["PUFX#:#XHYVB;2M0)\N4,
MV,0LV\%@@:1@V/L:O/\ ]I7]EC]G[]L#X8W7P?\ VC_A;I?BK0;K+"VU"']Y
M;28($T$JD26\H!.)(V5ADC."17HQQL*T53Q2YDMI+XE\_M+R?R:.65"5-\U%
MV\NC_P GYKYIGH%%?D+^WK^T!^W1_P &_OPN@T+X:_M!:;\5_AKXP-QI/PXL
M?B5YDWB/P==K$74K.@":A:1+C"R[=I,2!54'?^'_ ,;?VG/VAOVD?&\_Q&^.
M_P 9_$?BK6IYC*;W6-5DE\HDYQ$N=L*#LD855    %>SEW"U7,(^UC52I]'9
MMOY:6MUU]+[GGXO.8867(X/FZJ^WSUN?V=4$@#)-?S+_ /!)/_@O7^T_^Q+X
MW@^&GQ;U3Q%\4?AYJ,36UIX7O=2\Z^T^[*D6YLIYR3&C2;4>(GR]KEE4,/F_
M6T?L?_\ !1?_ (*2'^U_^"A?Q6?X-_#"[^9/@1\*]7SJ&H0'GRM8U=?O@CAX
M8!L8'_EFPS7)CLAJY;6MB*B4.DNK]([W_#NS?#9E#%T[THMR[=O5[6_'R.Z_
M:$_X+!?"GPY\0[C]F[]BKX=:M^T%\6TRDGA?P'*K:;I+9V[]2U,YM[1 V0W+
M,K#:X3.:X[1_^"8G[2_[;VJVWQ#_ ."O7Q]_MK2%G6YT_P" 7PVNIM/\+V)!
MW(+V96$^HR+_ +3 *P(5W0XKZX_9[_9F^ 7[*/P\M_A5^SI\)]&\(Z#;X/V+
M2+4(9GQCS)I#F2>0CK)(S.>Y-=U7%]=IX?3"1Y?[SUE\ND?EK_>9T?5Y5=:[
MOY+;_@_/3R,7X>?#?X??"/P;8_#SX6>"-*\.:#ID(BT[1M$L([6VMT]$CC 5
M>>>!R3FMJBBO.;<G=[G4DDK(****0PHHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** ,3XC?#3X<?&'P7?_  W^+GP_T3Q3X=U2,1ZGH'B/2H;ZRNT#
M!@LL$RM'( RJP# \@'M5;X5?!OX0? GPC'X ^"'PJ\-^#=!AD,D.B>%-#M].
MM$<XRPAMT1 3@9('85TE% '*:U\!_@=XD^(MG\8/$7P9\*7_ (MTY473_%-[
MX=MI=1M0F[8([ED,J!=[XPPQO;'4UU=%% !1110 5X7_ ,$]_P#DB>K?]CWK
M/_I2:]TKPO\ X)[_ /)$]6_['O6?_2DT >Z4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% 'Y ?\'>OP3\
M;^+OV=_A/\=M"L9I]%\%^)-2L->,*DBW_M&.V\B9\=$WV9CW'C=,@ZL*_ JO
M[5_B;\,OA_\ &;X?ZO\ "OXJ>$;'7O#NO6+V>KZ1J4(DANH6'*L#^!!&"" 0
M00#7Y._&W_@T*_9W\7>-Y]=^!/[5_B3P7HT\QD&@ZOX<CUG[."<^7%/]HMW"
M#H/,$C8QEF/)^[X=XBP6#P2PV)?+RWL[-JS=^FM[GS>:Y5B,1B/;4=;[K;;3
MJ?B+^S#\$_&_[2'[1'@OX$_#BQFGUKQ3XDM+"R$"DF+?(-\QQ]U(T#2,W151
MB>!7]G-?'7_!,_\ X(E_LC?\$S+F?QOX!34/%?CN\M3;W/C7Q((S-!"WWXK6
M) $MD;^(C=(PX+E?EK[%KR.),XHYKB(*BO<A>S?5NU_EHCNRG 5,%2DY_%+\
M+!1117S9ZP4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %>%_\$]_^2)ZM_P!CWK/_ *4FO=*\+_X)[_\ )$]6
M_P"Q[UG_ -*30![I1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !7A?_
M  3W_P"2)ZM_V/>L_P#I2:]TKPO_ ()[_P#)$]6_['O6?_2DT >Z4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 5X7_ ,$]_P#DB>K?]CWK/_I2:]TK
MPO\ X)[_ /)$]6_['O6?_2DT >Z4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%><
M>+?VO/V:O GQ'/PF\6_&#2;+78KNSM+VWD9S%87-X0+.WNIU4PVDUP640Q3.
MCS%U$:MN&?1Z "BBB@ KPO\ X)[_ /)$]6_['O6?_2DU[I7A?_!/?_DB>K?]
MCWK/_I2: /=**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** /R2_8CAC_:'_ .#;_P#:
M.^-?Q707.N_%*#XJ>*O$]S<<R)J,<E]'#)D]&@%E;>7_ '!!&!@*!7WW_P $
MR?BKXT^.7_!.GX%_&'XCWLUUX@\2?";0-0UJ]N"2]U=26$+2SMGO(Q+_ / Z
M\.U+_@F3\</"7[/OQE_8-^"7C3POIGPC^,GB75[Y-=O+VY76/"&FZT0VKZ;:
MV2VS07:DM=?9Y7N(?*%V Z2>0/-^R/AG\._"/PA^''A_X3?#_2EL-!\+Z)::
M1HEBA)%O:6T*0PQ@GJ%C11^% &W1110 5\:P?&C]HS]B/4]4^"GA3]B3QI\3
M;)]7N-6B\5>&G$=I)]J<R^2 T;'='G:QR.0>,=?LJB@#X\_X>2_M8?\ 2*+X
MI_\ @6O_ ,8H_P"'DO[6'_2*+XI_^!:__&*^PZ* /CS_ (>2_M8?](HOBG_X
M%K_\8H_X>2_M8?\ 2*+XI_\ @6O_ ,8K[#HH ^//^'DO[6'_ $BB^*?_ (%K
M_P#&*/\ AY+^UA_TBB^*?_@6O_QBOL.B@#X\_P"'DO[6'_2*+XI_^!:__&*/
M^'DO[6'_ $BB^*?_ (%K_P#&*^PZ* /CS_AY+^UA_P!(HOBG_P"!:_\ QBLN
MT_X*K_M%WOBV[\#VO_!+_P"(TFJV-K'<76GIJB&>*)SA79/(RJGL>]?:]>%^
M ?\ E()X_P#^Q$TK_P!&-0!YA_P\E_:P_P"D47Q3_P# M?\ XQ1_P\E_:P_Z
M11?%/_P+7_XQ7V'10!\>?\/)?VL/^D47Q3_\"U_^,4?\/)?VL/\ I%%\4_\
MP+7_ .,5]AT4 ?'G_#R7]K#_ *11?%/_ ,"U_P#C%'_#R7]K#_I%%\4__ M?
M_C%?8=% 'QY_P\E_:P_Z11?%/_P+7_XQ1_P\E_:P_P"D47Q3_P# M?\ XQ7V
M'10!\>?\/)?VL/\ I%%\4_\ P+7_ .,4?\/)?VL/^D47Q3_\"U_^,5]AT4 ?
M'G_#R7]K#_I%%\4__ M?_C%'_#R7]K#_ *11?%/_ ,"U_P#C%?8=% 'QY_P\
ME_:P_P"D47Q3_P# M?\ XQ1_P\E_:P_Z11?%/_P+7_XQ7V'10!\>?\/)?VL/
M^D47Q3_\"U_^,4?\/)?VL/\ I%%\4_\ P+7_ .,5]AT4 ?'G_#R7]K#_ *11
M?%/_ ,"U_P#C%'_#R7]K#_I%%\4__ M?_C%?8=% 'QY_P\E_:P_Z11?%/_P+
M7_XQ67K_ /P57_:+\,ZGIFD:Y_P2_P#B-:7.L71M]-@NM41'N90NXI&#!\[8
MYQ7VO7A?[6'_ "6SX'_]CW+_ .DS4 >8?\/)?VL/^D47Q3_\"U_^,4?\/)?V
ML/\ I%%\4_\ P+7_ .,5]AT4 ?'G_#R7]K#_ *11?%/_ ,"U_P#C%'_#R7]K
M#_I%%\4__ M?_C%?8=% 'QY_P\E_:P_Z11?%/_P+7_XQ1_P\E_:P_P"D47Q3
M_P# M?\ XQ7V'10!\>?\/)?VL/\ I%%\4_\ P+7_ .,4?\/)?VL/^D47Q3_\
M"U_^,5]AT4 ?'G_#R7]K#_I%%\4__ M?_C%'_#R7]K#_ *11?%/_ ,"U_P#C
M%?8=% 'QY_P\E_:P_P"D47Q3_P# M?\ XQ1_P\E_:P_Z11?%/_P+7_XQ7V'1
M0!\>?\/)?VL/^D47Q3_\"U_^,4?\/)?VL/\ I%%\4_\ P+7_ .,5]AT4 ?'G
M_#R7]K#_ *11?%/_ ,"U_P#C%'_#R7]K#_I%%\4__ M?_C%?8=% 'QY_P\E_
M:P_Z11?%/_P+7_XQ1_P\E_:P_P"D47Q3_P# M?\ XQ7V'10!\>?\/)?VL/\
MI%%\4_\ P+7_ .,50\4?\%2_VE/!OA^[\4>)?^"7'Q)L;"RB\RZO+W4DCBB7
M^\S&#@>]?:5>4?MS_P#)H_CW_L O_P"AK0!X=8_\%,OVIM1LH=0LO^"5/Q0E
MAGB62*6.]4JZL,@@^1R"#UJ7_AY+^UA_TBB^*?\ X%K_ /&*^IOA=_R3/P[_
M -@*T_\ 1*5NT ?'G_#R7]K#_I%%\4__  +7_P",4?\ #R7]K#_I%%\4_P#P
M+7_XQ7V'10!\>?\ #R7]K#_I%%\4_P#P+7_XQ1_P\E_:P_Z11?%/_P "U_\
MC%?8=% 'QY_P\E_:P_Z11?%/_P "U_\ C%'_  \E_:P_Z11?%/\ \"U_^,5]
MAT4 ?'G_  \E_:P_Z11?%/\ \"U_^,4?\/)?VL/^D47Q3_\  M?_ (Q7V'10
M!\>?\/)?VL/^D47Q3_\  M?_ (Q1_P /)?VL/^D47Q3_ / M?_C%?8=% 'QY
M_P /)?VL/^D47Q3_ / M?_C%'_#R7]K#_I%%\4__  +7_P",5]AT4 ?'G_#R
M7]K#_I%%\4__  +7_P",4?\ #R7]K#_I%%\4_P#P+7_XQ7V'10!\>?\ #R7]
MK#_I%%\4_P#P+7_XQ1_P\E_:P_Z11?%/_P "U_\ C%?8=% 'QY_P\E_:P_Z1
M1?%/_P "U_\ C%'_  \E_:P_Z11?%/\ \"U_^,5]AT4 ?%%I_P %5_VB[WQ;
M=^![7_@E_P#$:35;&UCN+K3TU1#/%$YPKLGD953V/>M3_AY+^UA_TBB^*?\
MX%K_ /&*]/\  /\ RD$\?_\ 8B:5_P"C&KW2@#X\_P"'DO[6'_2*+XI_^!:_
M_&*/^'DO[6'_ $BB^*?_ (%K_P#&*^PZ* /CS_AY+^UA_P!(HOBG_P"!:_\
MQBC_ (>2_M8?](HOBG_X%K_\8K[#HH ^//\ AY+^UA_TBB^*?_@6O_QBC_AY
M+^UA_P!(HOBG_P"!:_\ QBOL.B@#X\_X>2_M8?\ 2*+XI_\ @6O_ ,8H_P"'
MDO[6'_2*+XI_^!:__&*^PZ* /CS_ (>2_M8?](HOBG_X%K_\8H_X>2_M8?\
M2*+XI_\ @6O_ ,8K[#HH ^//^'DO[6'_ $BB^*?_ (%K_P#&*/\ AY+^UA_T
MBB^*?_@6O_QBOL.B@#X\_P"'DO[6'_2*+XI_^!:__&*/^'DO[6'_ $BB^*?_
M (%K_P#&*^PZ* /CS_AY+^UA_P!(HOBG_P"!:_\ QBC_ (>2_M8?](HOBG_X
M%K_\8K[#HH ^//\ AY+^UA_TBB^*?_@6O_QBC_AY+^UA_P!(HOBG_P"!:_\
MQBOL.B@#XHU__@JO^T7X9U/3-(US_@E_\1K2YUBZ-OIL%UJB(]S*%W%(P8/G
M;'.*U/\ AY+^UA_TBB^*?_@6O_QBO3_VL/\ DMGP/_['N7_TF:O=* /CS_AY
M+^UA_P!(HOBG_P"!:_\ QBC_ (>2_M8?](HOBG_X%K_\8K[#HH ^//\ AY+^
MUA_TBB^*?_@6O_QBC_AY+^UA_P!(HOBG_P"!:_\ QBOL.B@#X\_X>2_M8?\
M2*+XI_\ @6O_ ,8H_P"'DO[6'_2*+XI_^!:__&*^PZ* /CS_ (>2_M8?](HO
MBG_X%K_\8H_X>2_M8?\ 2*+XI_\ @6O_ ,8K[#HH ^//^'DO[6'_ $BB^*?_
M (%K_P#&*/\ AY+^UA_TBB^*?_@6O_QBOL.B@#X\_P"'DO[6'_2*+XI_^!:_
M_&*/^'DO[6'_ $BB^*?_ (%K_P#&*^PZ* /CS_AY+^UA_P!(HOBG_P"!:_\
MQBC_ (>2_M8?](HOBG_X%K_\8K[#HH ^//\ AY+^UA_TBB^*?_@6O_QBC_AY
M+^UA_P!(HOBG_P"!:_\ QBOL.B@#X\_X>2_M8?\ 2*+XI_\ @6O_ ,8H_P"'
MDO[6'_2*+XI_^!:__&*^PZ* /BWQ1_P5+_:4\&^'[OQ1XE_X)<?$FQL+*+S+
MJ\O=22.*)?[S,8.![U:L?^"F7[4VHV4.H67_  2I^*$L,\2R12QWJE75AD$'
MR.00>M>X_MS_ /)H_CW_ + +_P#H:UW7PN_Y)GX=_P"P%:?^B4H ^6?^'DO[
M6'_2*+XI_P#@6O\ \8H_X>2_M8?](HOBG_X%K_\ &*^PZ* /CS_AY+^UA_TB
MB^*?_@6O_P 8H_X>2_M8?](HOBG_ .!:_P#QBOL.B@#X\_X>2_M8?](HOBG_
M .!:_P#QBC_AY+^UA_TBB^*?_@6O_P 8K[#HH ^//^'DO[6'_2*+XI_^!:__
M !BC_AY+^UA_TBB^*?\ X%K_ /&*^PZ* /CS_AY+^UA_TBB^*?\ X%K_ /&*
M^@_V:OC!XZ^.'PU'C?XA_ S7/AYJ)OY;?_A'O$$@:XV)MVS9"K\K9../X37H
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 445\J_\%&/VI/VCOV9OB[^SEI7PLOO"
M\?A3XG_';1_!'BV/4=*EGU$Q74-W<,UO+YJQ1+LM"AW1NQ\S*E-O(!]545Y%
M^U=IW[87B^RT?X;?LA>-?#7@F\U47,^O?$;Q/X=;68]%@A$82&WT]9X!<7,[
MRY5I)!%''!,6#,8U/C__  3*_:B_:X^('Q?^.G[%_P"VR/#FL^-O@7KNC0IX
M_P#".FO8V/B;3=5LGO+25K9G<07*(A$J*VT&1  <;W /KVBOF+6OB%^VK\<8
MO&\/[+/BWP]HMM??$6Y\-^&O%?BC0A?67AS3=+@%MJ5^+6-X9+Z[DU9;NUCA
M>98@ENLI("M'+Y=^R]^W!^UI\"/CA\?OV6?^"B6O>'O&C?!?X<6OQ"TGXG^"
MO#ITP:QH,J71DBNK$RR);W2/:2A51RK*I]-S 'W=4$>EZ9%J$FK1:= MW+&$
MENEA42.HZ*6QD@>E?GUX[_X*'?M0_!'_ ()^?#7_ (*\?$+Q;H^H> _$[>'M
M8^(GPUMM&C6'0?#6MSP16\MC=C$\E]:?;+4S&9GBGVS;8[?*[?KKX_?$GQAH
M_P 0/AM\(_AOJK6NI^*_$SWFL3P6T<TD&@:=";J]<)(K+MEE-E8%@-R?VD&0
MJRJP /4J*_.?]L;]H[_@KU^P_P""M*_;_P#B)XW^&NO?#L>*M'M/&WP#T[P;
M+%J&A:9J-_!8Q?9M9^U.U]?QR7,"OF&.$N7*H5 %>[_$[]J7XC_%#_@H9#_P
M3N^!/B^/PP?#WPR/C;XB^,XM-AO+JV6>[%II^FVL<X:%))&$L\LDB2 11HB*
M&EWQ@'U#17SE^P+^U_XY_:L^&GQ$\)>+[/1[/XF?"/XCZQX#\7-;6\B:?=W]
MDP-OJ,,1<R);W%O+!/Y1<E6:2/>=F\Y'_!*#]JCX\_M7_ +QOXX_:)ET*Y\2
M>&?C'XI\*[?"VF/:69@TR]-M&(HY99'&=A.7D8_-RU 'U)17YN?M:>,/^"\O
MP"^!WB']I*Y_:8^!6F;KZ"/P[\-H/AO=7UT+S4+Z.TTW1_MINT6:9IKFWMS,
M(]I8E@".OZ*^&;;7K/PYI]GXIU.&]U.*QB34;RW@\J.><(!)(J9.Q6;)"Y.
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
MVT_4=;CM$%U<VEL\\EO \N-S1QO<W#(A.%:>0@ N<ZM !1110 4444 %%%%
M!1145]8V6J64VFZE9Q7%M<1-%<6\\8=)488964\,""00>"#0!\3?\$-YX9_
MO[2[03*X'[:7Q*R5;/74U(_0@_C2_&K]L_\ 8'_:F^(L'A?XH?MC?"G2/A5\
M,O%D.I:[!K?Q TVW/BK7M/F$EO 8Y9@?L%G<QI,S$?Z1<P1*O[J&3S_JWX?_
M +/7P!^$]KJ5C\+/@=X/\-0:QN_M>'P_X9M;)+[<,-YPAC42Y'!W9S7(#_@G
MO^P,#D?L/_" $="/AII7_P CT 8_@[Q%I/[0W[8\7CK0+A[KPU\-? $ TZ9X
M'C675]=$=RVZ.0*\4]OIUM:D!@&":RX(!R!X!_P6=^%/PB_:<_8R\1_M,_ W
M]IK7M.^)7PAEN+OX6ZS\.?B)</&/%=N7B@THV-O.UM/>7$S_ &+8T1G!N/+!
M +(?N?1?"OAGPY>:GJ&@:!9V4^LWPO=7FM;94>]N1#% )I2!F1Q#!#'N;)V1
M(O10!P_@[]CO]D?X=?$N]^-'P^_99^'&A>,=2NI+G4?%FC>"+"UU.ZF?=OED
MNHX5E=VWOEF8D[VSU- 'CO\ P5"N/&#?\$7_ (Z3_$J.WA\0/^SOKO\ ;J6Y
M'E+>G1I?.5,<;?-+ 8]JDB\;>(?#7_!*SX=:/\/=7>T\3>,_AQX6\*^$KVW.
M7M;_ %2UM;.*\4?Q"V$S7;8_Y9VSGM7T3\0OAE\-_BWX;D\&_%;X?:'XGT>6
M0/+I7B'28;VV=AG#&*964D9.#CN:KZ%\'/A'X7TG0] \+_"_P]IEAX8O3=^'
M+'3M&@@ATNX,$MN9;>-%"POY,\T>Y0#ME=>C&@#S7]H/]I;]GC_@GS\'?"_@
M[4_$'AO0Y+B"'P]\-_#.L^(K?3(;MX(%6.-IYR%@MH8E5I9R"(T  5Y'CBD^
M2/VCOA5\#?VE?^"7G[2_[+7[)W[1'A+XN_&3QOX6O_&/CZ^\#:K#?OJ>LN8W
MBA(MI)5M49+..RL[>1]_DVRC,ACED/W?\4_V:?V<OCGJ-KJ_QM^ '@GQC=V,
M)ALKKQ5X4L]0DMXR=Q1&N(W**3R0,#-6/A3\ /@/\"(KZ#X'_!/PCX-34VC;
M4D\*>&[73A=F/=L,HMXT\PKO?&[.-S8ZF@#\[OVZ]5L?VTO^"?G[$WPE^"]P
MM]J?Q0^*'@'4;*UM&W2V>F:=:&^U.Z=1RBVB0E9<X*2,J'#,!7L/_!7>>&+]
MH;]B999E4M^U38[0S8S_ ,2;5!_,@?B*^L_!_P !_@=\//%^I_$+P!\&?"FA
M:_K1<ZSKFC^';:UO+\O)YCF::- \NY_G.XG+<GGFH_B'^S[\!/B[K5AXD^+'
MP1\(>*-1TK']EW_B+PU:WLUGAMP\IYHV:/#<_*1SS0!\U?\ !6"Q\*_'+Q!\
M%/\ @GW\7/!MA<?#OX\>-K[3/&NO:E:HXM8M/TV;48+"VD<;;>\O)H%CCG!$
MJ)',82LOENG,_P#!)+X?_&?]C?XX_&+_ ()F^(/'4GCGX;_#.WT?7_ACXPO(
M$&HV5IK#WLDFCZC)&JK/<Q/;F82$;VCN%=MJR1HOV?XX^&OPZ^)OA23P)\2?
M &B>(=#F,9ET;7-*AN[1RC!DS#*K(=K $<<$ CI2^!/AO\._A;HK>&_AEX"T
M7PYISW#7#V&@Z7#9PM*V TA2)54L<#+8R<#TH VJ*** "BBB@ HHHH ****
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
MXI_LT_LY?'/4;75_C;\ /!/C&[L83#977BKPI9ZA);QD[BB-<1N44GD@8&:
M/A#]H[X5? W]I7_@EY^TO^RU^R=^T1X2^+OQD\;^%K_QCX^OO VJPW[ZGK+F
M-XH2+:25;5&2SCLK.WD??Y-LHS(8Y9#B_MUZK8_MI?\ !/S]B;X2_!>X6^U/
MXH?%#P#J-E:VC;I;/3-.M#?:G=.HY1;1(2LN<%)&5#AF K]$?A3\ /@/\"(K
MZ#X'_!/PCX-34VC;4D\*>&[73A=F/=L,HMXT\PKO?&[.-S8ZFG^#_@/\#OAY
MXOU/XA> /@SX4T+7]:+G6=<T?P[;6MY?EY/,<S31H'EW/\YW$Y;D\\T ?-/[
M:G[67[)OQC\0>(?V#?&/[5_@'PCHHMQ;?&G4M:\<V6G3PZ;*H:31(/-F1OM%
MU$2DSC_CWMI'.5EEA(]3^*?Q"^#_ ,2?^"?'CGQM\"?$.DZEX,D^&6NP:!J.
MB8^P26UO:7, -NR@(\ ,1".F8W0*R%D*L=C6_P!A']A[Q+K-WXC\1_L:_"G4
M-0U"YDN;^_O?AWIDLUS,[%GDD=H"SNS$DL2222379WWP?^$NI_#J+X/ZE\+O
M#EQX2ALDLX?"T^B0/IT=NB[4A6V*>4(U  "A< # % 'A/_!&&1)/^"2W[.#1
MN& ^#/A\9!SR+&($?G7TS6'\//AC\-?A%X;3P;\*/A[H?AC2(Y&DCTKP]I,-
ME;*YQEA%"JJ"<#)QS@5N4 %%%% !1110 4444 %?$.@3PG_@X[\3P"92X_8M
MT?*!N>/%FH9X_$?F*^WJXZV_9X^ %G\2)/C)9_ SP=%XOE),OBN/PS:+J3D]
M<W(C\TY_WJ /%?VT_P!M/X+^&O$L_P"QQ8?M3^#/ 'C+7-)$OB/Q%KOBNRL9
M/">DS J;J,7$BA[Z5=PMH\$*W[^0&.,)+@IKW[+'Q/\ @O\ "+]C3]BCQ/X?
MUKX=W'BJUTF27PG>K>6$6@>'XXKZ[1)T+1W43S1V&G3.K."^HNK-O5P/;?&?
M[%G[''Q&\3WGC?XA?LF?#/7M:U&02:AJ^L^ ]/NKJY? 7=)++"SN< #))X K
MI?!/P4^#GPSCTN#X<?"CPWX?BT2PNK+1H=#T2"T2PMKF:.>YAA6)%$22S112
M.J@!WC5FR0#0!Q7[3_PX_9H_:[\$>)_V.OC!\2G0W^@FX\0^'_#GCZ?2=4AL
M)0\8GE6TGCE^SM\PQ*&@DVD.K@$5^87Q1^&O[1<W_!%[X6_$CXJ^.]:\?:)^
MSW^UG8>+=+\7:J[3W^O?#[1_$%U:6VJRM]Z6,V4HNA(>#;1I)DK\Q_53XE?L
M@?LE_&?Q[9?%7XP_LN_#KQ9XHTVW$&G>)/$O@FPO[^UB!8B..XGB:1%!9B%5
M@/F/J:] FL;*XLFTR>SB>V>(Q/;O&"C(1@J5/!&.,=,4 ?!O[<>GP?%[_@L?
M^R'<^&M6MWTGX/>%?'/Q ^(.JI,/)TO2KK3H+"QEDD!VA9Y_."Y/S);RL,A&
MQ[E^SQ\1_ WP(_8[U/\ :_\ VC?$UKX4M/%T]YX_\7:GKC^4=/@OF#V=K-GE
MI;>Q%A8A%!9VME506(!]0\+?LU_L[>!?!>M?#CP-\!O!NB>'_$=L]OX@T31O
M#%K:6FI1/$8G2>**-4E4QDH0P.5)'2M;XB?"CX6_%_PN? _Q9^&N@>*-%,J2
MG1_$6C07MJ73[C>5,K)N7L<9':@#Y7_9Y_:1_8^^,'[3]G^TEXV_:7^'E_\
M$7Q7IG_"+?"OX=:-XSL=3U+0]'DD%S,A@M)9'>\N6ACN+MT!B@BM88]VVWDG
ME^=/V+KZW_8U_P""0W[8/P-^*LGV+Q!\*?&?Q"L[^SN.)KX:A"UUI,T:'YG6
M]2\MQ"0/WC/M'S @?H9\/_V/?V2?A-XJM_'7PK_9;^'/AG7+176TUGP_X(L+
M*[A#H4<)-#"KJ&1F4X/(8@\&MOQ)\!_@=XQ\?:?\5?%WP9\*:KXHTD1C2O$F
MI>';:>_LQ&S,@BN'0R1[6=B-K#!8D=30!\=?LU?&7PW_ ,$O_P#@FG^SW^R;
M\7OB'X/\._%N^^&]C::;H?CCQ%!I]M870@62[N+QY9$VVMH\I5]IW2,JQ1Y>
M1:]1_9=^.G_!/O\ 9L_9J\5W'@#]K/PCXFT+P))-K_Q7^(=KKMO>1W.KZC/-
M<75Y=W%L6B-W<3^8WV9"70/#&L85H5/L/Q,_93_9=^-7B)/%_P 9/V;? /BW
M5DMEMDU3Q-X.LK^X6%2S+&))XF8("S$+G +'U-0VO[(7[)MCX N?A/9?LO\
MP[A\+7NH+?WGAJ+P38+I\]VJA5N'MQ%Y;2A54!RI8  9XH ^?/V>?VD?V/OC
M!^T_9_M)>-OVE_AY?_$7Q7IG_"+?"OX=:-XSL=3U+0]'DD%S,A@M)9'>\N6A
MCN+MT!B@BM88]VVWDGE^QZ\Y^'_['O[)/PF\56_CKX5_LM_#GPSKEHKK::SX
M?\$6%E=PAT*.$FAA5U#(S*<'D,0>#7HU !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%<7=?M'_L\65S)97OQ
MY\%PS0N4EBE\4VBLC X*D&3((/&*J,)3^%7$Y);L[2BN(_X:9_9O_P"C@?!'
M_A5V?_QRC_AIG]F__HX'P1_X5=G_ /'*KV-7^5_<+GAW.WKQ']J?_@I%^PU^
MQ1=PZ5^T[^TGX>\+ZC/$)8M'=I;N_,9Z2?9;5))@A[,4VG!P>#7*_M__ /!1
MKX/?LL?L9_$/X]?#WXK>$=<\0Z!X>=O#VEVNOVUPTU_,ZP6V8T<LZ+-*C,!_
M"K=.M?R>_$?XC^._B]X[U;XG_$_Q9?:[X@UV^>\U?5]2G,D]U.YRSLQ_(#H
M    !7T>0\.O-.:I6;C!::;M_,\G,LU6"M&FDY/[D?UV?LL?\%(OV&OVU[N;
M2OV8OVD_#WBC48(C++HZ/+:7XC'606MTD<Q0=V"8&1D\BO;J_BE^''Q'\=_"
M'QWI/Q/^&'BR^T+Q!H5\EYI&KZ;.8Y[6=#E75A^1'0@D$$$BOZPOV /^"C7P
M>_:G_8S^'GQZ^(7Q6\(Z'XAU_P /(WB'2[K7[:W:&_A=H+G$;N&1&FB=E!_A
M9>O6C/N'7E?+4HMR@]-=T_EO?T#+<T^NWC424E]S/IBBN(_X:9_9O_Z.!\$?
M^%79_P#QRC_AIG]F_P#Z.!\$?^%79_\ QROG/8U?Y7]QZW/#N=O17$?\-,_L
MW_\ 1P/@C_PJ[/\ ^.5VEK=6U[;1WME<)-#,@>*6)PRNI&0P(X((YS4RA.'Q
M*PU*+V9Y;HO[;O[+GB+XVZC^S7H/Q7@O/B#H]L;G5?!EOIMT^I6<'RD32VXB
MWQQ'<F)& 5MZX)W#//:?_P %-OV#=4U37=%L?VE]!>Z\+W;VOB>$I.IT:=,[
MX[O,8^S,NULB7:1@YZ5\Z_ 9$'_!R+\>W"#/_#./A;G'/_'[)_@/RKS[_@G5
M\:/B%\)/VW_V]9? _P"R?X^^(RCXZ0W+-X+OM!B".--3]R5U/4[1V<XS\BL,
M'KN^6I&?H7#^TA\"+_X,_P##1.@?%71M:\"_8VO!XL\.W8U*P-NF=\PEM?,4
MQKM;<X^5=I+$8-<%\,?^"F?_  3^^,FLZ)X>^&_[7G@74;WQ/.8/#,']NQPG
M6)0<&*T\W:+E\\;(MS>U?%'_  0^U+P]X@_9J_:^\4C6;+0=?\2_%KQ1K?B3
MX'PVUQ!/\-9+BWD5+"YBGBB_?R")RSPH8&,6$8E'"_//PP^#'QK_ &]/^#9W
MX(_L*?L[_LU>(-8\8Z_-82Z5XZU.."RT?PHMMKTMS+JIO)) Q(@6: ) KS'S
MG 7L0#]T**S_  GI.HZ!X5TS0M7UN74KNRT^&"ZU&<8>ZD1 K2L/5B"Q]S6A
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 45D:S\0? 7AR].F>(?&^D6
M%R%#&WO=2BB< ]#M9@<&JG_"WOA-_P!%0\._^#N#_P"+KHCA,5.*E&G)I^3(
M<X)V;1T5%<[_ ,+>^$W_ $5#P[_X.X/_ (NC_A;WPF_Z*AX=_P#!W!_\73^I
M8S_GW+[G_D'M*?='C'_#U_\ 8"_Z+W_Y:VJ__(M'_#U_]@+_ *+W_P"6MJO_
M ,BU^,E%?U7_ ,0&X0_Y_P!?_P "I_\ RH^&_P!:,P_EC]S_ /DC]X/@'^UA
M\ /VG_[6_P"%&>/O[<_L/R/[4_XE5U;>1YWF>7_Q\11[L^5)]W.-O.,C/HE?
MFY_P0M\7^$_"G_"TO^$H\4:=IOVC^Q/(^WWL</F;?M^[;O(SC(SCID>M?H#_
M ,+>^$W_ $5#P[_X.X/_ (NOY_XWX7APYQ1B,NP2G.E#DLY:M\T(R=W&*6[:
MT6Q]7EN->,P4*U2RD[[>3:ZLZ*BN=_X6]\)O^BH>'?\ P=P?_%T?\+>^$W_1
M4/#O_@[@_P#BZ^4^I8S_ )]R^Y_Y'=[2GW1T5>4_'/\ ;A_91_9F\7Z1X"^/
MOQITSPIJ_B L- L=8BFC;5"H4NML=F+AEW+N$98KN&<9KTO1M>T/Q'9#4_#V
MLVE_;%BHN+*X65"1U&Y21D5^??\ P63URX\,_M^_L'>(+/PQJ&LS6OQ?UUDT
MW25B-S<?\2@C;&)71,]_F91Q7/*,H2<9*S+335T?:?P1_:B_9S_:275!\!?C
M;X9\6RZ%<+!KMIHFKQ3W&F2L"5CN80?,MV(!(615)P<5WE?FC_P3RMKG_@H%
M_P %:O'?_!77X8Z2W@;P%X>\ 3?"6\\):I(D/B+6=;L[_P ZXN=6LXBPLC"N
MR*..5S,R1P/A%^6O;/AS^W'^T;XS\5_M>?#*]L_!,6K?L]7EFGA35HM#O/L^
MI1SZ*NJ 7<!O"VX!A%F.51QOQ_!2 ^PJ*_/]_P#@L1JNF?L]_LI?%3XP^)/
M_P *X?VB/!\^J:QX_P#%.B7=YX<T34DM;2:'3&VW=O\ 9VN?M,S1S3W 15LI
M%(8N&3K?V@/^"C7Q+_92\ ?!AOVF_&'PY\$R?$OQ7K6E:S\5YM&N[WPEIL=N
M9WTQ]J7J-$+^ 02))+=!(P)=WHH!]IUS'QF^,_PO_9Z^&.L_&7XS^,K7P_X8
M\/V3WFL:M>!BEO"@+,Q" LV "<*"< \5\W>,_P!NWXO_  G^'/PH\%?$%?"V
MI?$GXM^+]>L-!UKP5X8U/6=&_L6P:]N8M9CL+&:>ZN5ET^*R;R(Y^);W)E2.
M-F'F/C[]JG]J'XU?L?\ [:?P9_:2^!U]I]EX+^$6MR^"OB9:_#O6?#>D^,-/
MN]!NW9([/5B\T-S:R*8I1YKJY8,N%Z@'U/KW[>O[(_ACP]\*_%&O_&6TMK/X
MVW6EVWPO,FG7?FZ[+J,:26:K$(O,A\Q'5LS+&$&=Y7:V/7R0!DG '4FORR^.
M8!_X)U?\$NB1T^-GP<Q_X3US7Z<^-_!^A_$/P7J_@#Q-%+)INN:7<:?J"03M
M$[031M'(%="&0[6.&!!!Y!S0!XW\&?\ @J#_ ,$]/VB/C?>?LW_!#]L#P+XF
M\;V33*_A_2M;226<Q F40-]RY*!6+"%GVA6)P 37=?&+]J+X!_ &_M=(^+7Q
M*L])O;RQGOXK$12W%PMC 5$][)%"CO%:Q%E\RY<+#'N7>ZY%?,O[?_[+OP_^
M/'[2G[*OP8^#G@G3-+\1_"GXHZ?X\N=4T:PCMQX8\)Z;',)+3=$!Y45]<BVM
M8[<8641S. 5M9"N)_P $X_$&J_%O_@J[^W-X\\<G[3<^'_$/A'P9H4%R-PL-
M)M=,GG\F,'[L<T]S+.P'#,^>PP ?9_BSXP_"GP+\,9OC3XO^(^BZ?X1AL([Y
M_$MSJ4:V1MY-OE2K-G:ZOO0)M)WEU"Y+#-;X3?'3X4_'&RU&\^&/B^+4'T>]
M%GK5A+;2VUYIMP8UD6*YMIT2:W=HW215D12R.KC*L"?Q/_9+^*OC3QIHO[&G
M[&.KW\\O@;0?VUO'5C8QS,2DUCX;,U[I-LQ/WXHI+G"(>%^RQ8'[M<?1O_!2
M3X_?$7]DS_@J/\6_&_P7O9K6\UC_ ()Y>)?$&HP6O"G5=$O+N33=0<#K)$)I
M8@Q_@?'84 ?H3X<_:[_9K\7?$S_A4'AOXP:3=Z\^H76GVUO$S^1=WUJ&:ZLK
M>Y*^1<74 1S+;Q.TL01RZKM./1Z_(+]KR+_AG3_@U?\ @K\;_ANY@\3_  \\
M-?"_QQX8OH#^]&MSZAIDL\ZGJ6E-]=[C_&)G!SN-?K[0 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 5\R
M:[_P1F_X)<^)M;O/$FO?L4>"[J^U"ZDN;VYEM9=TTLC%G<_/U+$D_6OINBMJ
M6(KT+^RFXW[-K\B)TJ=3XXI^J/EK_AR7_P $H_\ HQGP/_X"2_\ QRC_ (<E
M_P#!*/\ Z,9\#_\ @)+_ /'*^I:*V_M#'_\ /Z7_ ($_\S/ZKAOY%]R/A/\
M:[_X(&_L!?%#]F7QMX%_9^_9=\(^%/'%_H$P\)Z_:121M:Z@@\R#+%SM1G54
M<X.$=N#7\R/Q'^''COX0^.]6^&'Q/\)WVA>(-"OGL]7TC4H#'/:SH<,C*?S!
MZ$$$$@@U_:U7@O[9'[ '_!/_ /:JTZ3QU^V%\ ?#&MG2K0F;Q'=^997D,"_P
M&[MGCF*#LF\C)X&37NY-Q/4RWFCBFYP>M[W:^][?-'EYEE5*O'GIM0:WZ*WG
MV/Y'_AQ\./'?Q>\=Z3\,/AAX3OM=\0:[?)9Z1I&FP&2>ZG<X5%4?F3T !)(
M)K^F[]D3_@@;^P%\+_V9?!/@7]H']EWPCXK\<6&@0CQ9K]W%)(UUJ#CS)\,'
M&Y%=F1#@91%X%>Y?L;_L ?\ !/\ _95TZ/QU^Q[\ ?#&B'5;0&'Q':>9>WDT
M#?P"[N7DF"'NF\#(Y&17O5&<\3U,RY8X5N$%K>]F_N>WS89;E5*A'GJ-3;VZ
MJWEZGRU_PY+_ ."4?_1C/@?_ ,!)?_CE'_#DO_@E'_T8SX'_ / 27_XY7U+1
M7A?VAC_^?TO_  )_YGJ?5<-_(ON1\M?\.2_^"4?_ $8SX'_\!)?_ (Y7TWH6
MB:3X9T2S\-Z#8I:V.GVL=M96T0^6&*-0J(/8* /PJU16-7$XBNDJLW*W=M_F
M7"E2I_!%+T1\?_#+]C?]JCP9_P %8OB-^WSJL/P_E\*^-OASIWA2ST2W\3WW
M]H6OV*7S4N7)T\1MO)<&,,-HVD,V"#SO[)O[(W_!0+]DWX^?M"?&32O!_P '
M/$</QN^(?_"365G<?$;5;)M%"0"".%R-%E%Q\JJQ(\OG('K7T=\4OVVOV6O@
MQXSO/A[\1?B_96>L:78Q7NN6=M:7%V=&M9,^7<7[6\;K81, Q62X,:L%8@D
MFNT^%OQ7^&?QO\#6?Q.^#OCW2?%'AS47F73M>T*^2ZL[ORIG@D:*:,E)%$D;
MKN4E3MX)'-8FA\D?LL_\$U/C5^SLO[1W[0WBKQYX4\7?&O\ :.O%GUM+9+C2
MO#^D0P6T]O96D!V7$[K$L[EYF3=+\H*J5+-Z+_P26_9/^,O["W[!_@7]D/XU
MW_AC4-1\"V,]E#K7A;4KB:"_C>ZGG#LD]O"T+ 2JNT%P2I.1G%>@^&_VU?V6
M?&'Q27X->&/C1I5[K\FKW6DV\4"RFVN=2MD:2YL(;O9]GFNX421I+:.1I8Q'
M(60;&QTGQL^.WPF_9R\ 7?Q5^-WC.#P[X;T\;M1UR^AD-K9I_?FD12(4[;WP
MN2!G) H ZVBO'_A#_P % /V*/CUXLT_P#\(_VGO!NM:]J]B;W1M$AUF..\U&
MV"[C/;0R%7N(PO)>,,H')->P4 %%>(-_P4H_8*'[1'_#)4?[5W@R3XE_VQ_9
M7_"%0ZLLFH"]QDP&-<D.!U'\.#G&#75?%W]K7]G'X#Z^OA?XM?%K3-&OQIO]
MI7=O-OD.GZ?O,?VZ\,:L+*TW@K]IG,<.Y6&_(. #T6BN<^)'Q=^&7P@\$/\
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
M7TW6/X_\?>#?A9X*U/XB_$+Q#;Z3HFC6;W6IZC=$B.")1DL< D_0 DG  )-
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
M(4 #+^L7B6#Q!=>'-0MO">HVUGJLEE*NF7=[;&>&"X*$1O)&K(9$5L$J&4D
MC(SFO/?V+?AA\2O@=^RA\//@=\6HM#_MOP3X,TOP_<W/AW49KFUO/L=G%;_:
M%,T$+IO,9;RRIVY WMUKK?BW#\5[CX7^((?@5?\ A^U\9MI$X\+7'BNVGFTQ
M+_8?)-TD#I*T._;NV,&QG&3Q0!^=_P"RQJ?[7_\ P3+_ &F/AA^RY^WI\._A
MC\0/"/Q+UFYT?P#^T'X'\-M8ZM#XCDBGNFM]:BEW%IKS;<,L\3'<Y<N6RVSL
MO^"2X3]H[XV?MW>.?BY9)J5QJW[2FK> +RWNUW!]"TC3X+.TML'I%Y5Q,=O0
MF9VZL2?=?!WP-_:G^/NN?#[Q?^W?I/PUTF7X<:Z/$&G^'_AIJU_J=MJ>N+:3
MVL-Y)<7UM;/!#$ES.Z6PCD8RF)S.1$4?FI/V,/VAO@-\9/C?X[_8YUOP?!IG
MQY:#5=3A\5:A=6[^%/$:VALY]5MHH+>47Z31K;S-;/);$36[8FVS?N@#\W_^
M"7_QU^)O[0EU_P $N_A!\3M<NM2T+2+?XG:F_P!L<O'JD^@QWFF:/(<_>:U@
M;Y3V/-?<7P4\5:MX,_X.(?C;\(O#\KKH?C/]G3PUXNUZW4_NSJ]I?R:;%-CH
M)&M61">K+#&#G8N.CB_X)+>&/@A\(?V:M(_91U:RM_%O[+=W,_@^[\22/#;Z
M_:WUJ]MK5K=R0QR-;F]$KS>:D<GE3(A$;J"I]*_9C_9#\3>!?VG/BC^VU\;K
MS2)?'WQ+M]+TF#2] N9;FQ\.Z'IT3+!9PW$T44EP\LTDUQ-*8H@6=$5,1;W
M/ /^#D!$?]ACP6'0$?\ #07@C@C_ *B:UZ/^T_\ MB_M??#[_@HI\-OV*?@G
MX%^'<VD_$CP%K^KVFO>)KF^:>QN=/^S R2)"5!B'V@$0KEI2H7S8 2ZS_P#!
M7O\ 8O\ VA?V\/@-X;^"_P "+_P;ITFE?$/1?$][J?BW5[N$$:=<&=;=([>U
MFW>8P4%RPVC/RM5KXF_LJ_M+_$/_ (*0_!O]M".S\"VGA_X>>"-=T+6M'/B:
M\DO)Y-4-L7E@/V (RQ?9EP&*&3><[,#(!Y7X#_X*[_%/P'^R9\9?'/[37P]\
M+ZC\3OA-\=9/A5INF>"WN+'2_%>KW$EDNF21"Y>>6SCD^WQF4,\IC6"5EW?*
ME8/[2&F_M0V'_!:?]B:V^-OC'P'J\<N@_$IM'O?"OA:\T[[+>?V%;B>.:*XO
M[DSQ?ZED=7B)Q(&4?*U1>./^"-G[0'QJ^"/[2/PR\=_$?PGX7UKXI?':/XK?
M#'Q-X<U&ZOV\/:M;K9BUANHIK6$2)_H8#.A)Q.V$R@)[F_\ V2_^"FWQN_;"
M_9J_:M^/]_\  W09_@M#XG@\3V'A'5-8U%=5_M6PMK1I[?[1;6QC)\MV$#9$
M6P?O9O,Q& 8S_P#!4+]IY/\ @G5^T[^U9_PC?@+_ (2W]GGXI^,/#-O:_P!C
MWO\ 9VMVNA3K%YC1_;/-@EFRQR)75.!M;K76?&S_ (*<WOP_^/7PV_9[\0_%
M#X>_"FZ^(OPFM_$_A_Q;\2M"N[G2-;U:67RVT>WF2]M$MY8ALD822.\BW401
M<@[O+_B/_P $L_V^)O@;^UC^R'\+_'WPF3P#\?\ QKXF\7>'O$.L7&I?VQ9W
M>M>7)/IUQ;I;F".%9@V+I))7V9'D;F#1^O?%']C3]I3XL?#.P_9]^.WPF^!_
MQ>^'<_PHTO1=6\-^*=6O]*%CX@M6O%DU"S=;"\8))!+:H'W1S(]OO0KG:0#S
M?]I+XG?\% ;O_@H#^Q'\.;KXK^"_"-QXY\'>*=8\4^%?^$,N=0LK/Q%8>'X1
M=&1TU.%[N '49XX(U>/RBI=VN"5$?3>!OVR/^"FWQR_;5^-_[+GPA^'WP0TZ
MP^"GCKPG;ZEJGB6[U>1K_1=3L4O[B.$P$$WHMY,I(T:1(\84K*)"\5"S_P""
M6W[4/PEM?V-=:^#7QS\+^(O$7[,WAK6_#NOW_C^&\$6K6FJ:=;VDEQ +?<^Z
MW-NAB@=E#Q@(94(W5ZK^R3^R?^T+\%OV[?VC/VF?B/+X-E\.?&S4O#MYI5KH
MNM7<M]IK:5I2::%F26TCC?SE19?E<>6<K^\'S  X[X-_M^?MD_$KP9^U?'I/
M[.?AGQ3XZ^!WCZ?P[X!\&^%M4DMUUUAIUK<Q"XNKMU4MNN"694B&U-H7=@FW
M^S3_ ,% _B;XV_X*+7'["OCGQM\-O'-E-\%W\:VOC#X<Z5<V45A?6VJ0:?>:
M7*);Z]CN"&N$D$D<B%"K1NF<-7G'C3_@EM^V9XW^!O[8_P ,--^*_@WPEJO[
M1OC)/$7A+6=%UJ_G_LX+'90OI]Z#:1-Y-Q!9F*62(L0ES( C8&[L_AE^Q1^W
M;I_[?WP^_;;\;ZI\%-&L]$^!]W\/M?\ !/A"WU,V^GPMJ%K>QBPDD2,2JS6V
MS>Z0B!'4"&<IN< \._9)_:RN?V(/V$_VJ?VB8-%6>VTG]N3QG::IJ,VF3WEM
MH=C=>);:UN=5N+>W999X+2&:2X:*-E9Q%MWIN+K]P_L;_&_Q_P#'K3];\<7G
MQ7^&GQ \#7264_@/QS\,8)(K74(W23[3#/&][=[)H9%52 XX=20&+(GAO[,?
M[%W[>/[,?P6^)_AOPMJGPLN?$GC;]HK5OB);6USKVH/IMUI6J7RSWND7+'3]
M\;>3YD2SK'(-S*YC&TJW:?L ?\$]HOV/_CQ\9?C?HO@[PIX#TKXK7&C30_##
MX?ZE-=:-IES9PSK<:@AEMK54FN6G4/'% B*+="2Y<[ #ZIHHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH P?$/Q4^&'A+43H_BOXCZ#
MIEVJ!VM=0UB"&0*>AVNP.#ZU1_X7U\#/^BT>$_\ PH[7_P"+KD/C%^PA^R!^
MT!XT?XB_&?X Z#XBUN6WC@DU+4(7:1HT&$7(8< &N6_X=1_\$Z?^C2/"?_@/
M)_\ %UPSEF2F^2,+=+R=_P#TD^BP]+A-T(NO5KJ=M5&G3:OULW53:]4O0]8_
MX7U\#/\ HM'A/_PH[7_XNC_A?7P,_P"BT>$__"CM?_BZ\G_X=1_\$Z?^C2/"
M?_@/)_\ %T?\.H_^"=/_ $:1X3_\!Y/_ (NIYLU_DA_X%+_Y$V]CP7_S^Q'_
M (*I_P#RXD_;5_;[^#?[,7[,_BGXNZ!\1_#NKZU96!A\.Z59ZO!.]UJ$OR0+
ML1B2BL=[^B(YK\R_^"$G[?,_PH_:8U[X1?&KQN$T7XG3R7S:KJUV%2'7%W/Y
MSNY 7SU+HQ/WG$(KR_\ X+-']EWP=^U(WP(_97^$VA>'-.\%VOV;Q#>:1"0U
M[J<F&DC+$GY85V1XXQ)YH.<#'R)&[12+(H!*D$!E!'X@\&OSS-^(,7'.835O
MW+:LFVF_M:V7IMT/ZCX(\,,CJ\!5J%3G_P!NBI<TXQ4X):T]$Y+1^_OK>S/Z
MD_\ A?7P,_Z+1X3_ /"CM?\ XNC_ (7U\#/^BT>$_P#PH[7_ .+KY$_8(_9.
M_P"":/[9O[*_A?XYV/[)?@U=0O+3[+XCLXK>3%IJ4.$N(\;_ )5+?O%!YV2(
M>]>Q_P##J/\ X)T_]&D>$_\ P'D_^+K[ZCB,QQ%&-6G&#C))KWI;/_MT_F?'
MY7PIEF.JX3$U,1&I3DXR7LJ>C3L_^7QZQ_POKX&?]%H\)_\ A1VO_P 71_PO
MKX&?]%H\)_\ A1VO_P 77D__  ZC_P""=/\ T:1X3_\  >3_ .+H_P"'4?\
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
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!117FM]^V%^S)IM[-IU_\9M&BGMY6CFB:5LHZG!!^7L175A<#CL<VL-2E.V_
M+%RMZV3.3%8_ X%)XFK&%]N:2C?TNT>E45YC_P -G_LM?]%MT3_OZW_Q-'_#
M9_[+7_1;=$_[^M_\379_8&>_] M3_P  E_D<?^L&0_\ 072_\&0_S.Z\:>,O
M#OP]\+7WC7Q;>O;:;IL!FO;B.UDF,48(RVR)68@9R< X&2> 37COB+]NS]B'
MQ;H=UX:\2_$J&]L+V%HKNTN/#FH,DB'J"/L__P"KK70ZE^U[^R7K&G7&D:I\
M8M!GM;J!X;F"61BLD; JRD;>002/QK\TOBQX<\+>$_B-J^A>"/$L&KZ-#>,=
M*U&WDW++;M\R9/\ > (5O]H&OO>"N \%G_MJ.:TZU*<;-:*,91>C7O0>J?GJ
MGMHS\]X[X\Q>1PI5,LG0K4YWC)-\[3Z?#->ZU?INM]4?H9X=_;L_8A\):':^
M&O#7Q*ALK"RA6*TM+?PYJ"I&@Z #[/\ _KZUZ1\(_CK\+?CKIUYJ_P *_$KZ
MI:V$ZPW4YTZX@59"-P4&:--QQR=N<9&<9&?R*52[! 1DG R<#\S7Z,_LU_&G
M]DOX"_!O1_AU;?&O06NH(/.U6=)6_?7;_-*V=O(!^4?[*KZ5W\9>'64\/Y;!
MY=&M5JR=DM)126[:C33[):K?R9YW!'B+FF>YA*GCW0HT(1WUBV]HQCS5&O-Z
M.R5M+H^BJ*\Q_P"&S_V6O^BVZ)_W];_XFC_AL_\ 9:_Z+;HG_?UO_B:_,_[
MSW_H%J?^ 2_R/U/_ %@R'_H+I?\ @R'^9Z=17F/_  V?^RU_T6W1/^_K?_$U
MZ38WMKJ5E#J-C.LL%Q$LD,B]'1AD$?4&N7%9?C\"D\31E"^W-%QOZ72.O"YC
ME^.;6&K1G;?EDI6];-GF'Q2_;:_9:^#'C.\^'OQ%^+]E9ZQI=C%>ZY9VUI<7
M9T:UDSY=Q?M;QNMA$P#%9+@QJP5B"0":[3X6_%?X9_&_P-9_$[X.^/=)\4>'
M-1>9=.U[0KY+JSN_*F>"1HIHR4D421NNY25.W@D<U^;WQ=^)G[;?_!%G]K7X
MP_M'ZM^S9J?QK_9H^+_C%?%_B37_  .@E\3^!;TV=O:SB>W8C[59)':ILP52
M-%!,D9RK_3O[-?[7?_!/7X3?\$^]&_:5^!7Q/M&^$&J:Q?7/AK^SM/D:>2_U
M/5KB;^R+:QCC\XW/VNY>WCM$C\P%54# S7&=AZGX;_;5_99\8?%)?@UX8^-&
ME7NOR:O=:3;Q0+*;:YU*V1I+FPAN]GV>:[A1)&DMHY&EC$<A9!L;'2?&SX[?
M";]G+P!=_%7XW>,X/#OAO3QNU'7+Z&0VMFG]^:1%(A3MO?"Y(&<D"OQ^_P""
M:/B#Q[X \(^,_P!B7]J+5[;P=J_[$VMZS\3_  AX*\46ZI?^)X+U-0O=/U*_
MNK>:5#!;_P!I2++%;&0^?-!NF8)Y4GV=^W?XM_:)^(/_  0>^-_CO]J?X>:'
MX2\8:U\"M;OK_P )Z'=37":-YFFNXM9990#).A)#E5"A@57<%WL ?0'PA_X*
M ?L4?'KQ9I_@'X1_M/>#=:U[5[$WNC:)#K,<=YJ-L%W&>VAD*O<1A>2\890.
M2:]@K\D/BE\ ?CW_ ,%!?V0OV"_A%^SY\!?$NAZC\.;[P/XNU[XP:W%!86OA
MW2[+28UG2TD,OG74MP6B9(X59#Y*&0H &7]$/V__ -I6Y_8Y_8D^*G[46GZ;
M'>7O@?P-J.JZ9:3@F.>\CA;[.CX(.PS&,-CG:3B@#K]=^/OPA\/?$FV^#EWX
MUAN?%ES#'.?#>E6\M[>V]O(Q5+FXAMT=[:W+ @3RA(\J?FX-97Q=_:U_9Q^
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
M!;[XP6&E^-?%EH]SX8\+:_;3Z;?:K$D9D9[>&ZCC:8! 6.T'@'TKP'_@H?\
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
M^-5S'\/[F#]H&'2?^$6L4\37ROIKV&C#2E%TQT\C$B@3$Q[BIRF&!WC[%HH
M_*SXA_LX?M _"+]F[]D3_@E5I7C/X(ZA\5?!LDVMQ:/XMU'4XM-UFQT6U:&*
M^MK^WCAOK"[CNKRV=$ME,K%'^<P1W"M]'?\ !/[4OVIO@U\=-;_9A_:3_9]^
M#6B7FOZ'=^,[KQ1\'_&^J:M+<7:W%I:DZQ_:MM'=-<7"R_N9Y))/,2PF0<0C
M'T%^T1^R7^S%^UOX;M?"/[3OP#\)^/-/L)S-IT'BC0X;PV<IP&D@:12T+$
MLA4D#!XJ_P# S]G'X!?LR>$G\"?L\?!KPUX*TB6?S[BP\,Z-#9I/-@ RR^6H
M,LF !O?+8 &>* /G_P#X*U?L8?M$_MQ_#WX<^ ?@3>^"]/\ ^$+^+>@^-[V]
M\6ZQ=P?:/[-DED%FD=O:38\PNO[TM\H!^1L@U]2QW'B@^&OM4VCV"ZQ]D+"Q
M74G-MY^WB/S_ "0VS=@;_*R!SL/2K]% 'Q7^R)_P3)\=^&?^":_Q _X)V_M=
M7_ANZT[QM>^*-VK>"=5N9REOK-Y=79.+FVA\N:W>Y^0_.KF-6(7E:S;'_@GM
M^UQ\9OV2_AM^P-^U_P"(OA[J'@?P!K>@/KGC/PWJU])J7C'3-$GCFLK>73YK
M../3Y)FM[47$BW=P,)+L&908ON:B@#XF^'_[#G[:_P"R;^V#\9/B'^R=XJ^&
MFL_"[X\:\/$OB#1?'E]J%KJ7A7Q!) (;F[M%M;>6/4(9MJR-!));-E5595"E
MG\O\!?\ !)/]M;X:?\$Y/V9O@7H/Q#^%]]\5?V:_B99>*M(2\FU&'0=7@C%]
M'-8S7*PO<(QCOFQ.MOC=$H\O#$C]*:* /@9_^"6G[1_QS^/G[1?C7]J[Q_X#
M7PE^T/\ ![2_!^KZ;X.@O'O-)GM;>[C5[=YPJLL376X2R9,S1;C% K"->V_8
M5_9]_P""KOPPT;PE\$_VPOCS\*=5\"_#RUAM=-\0> K74U\0^+H;5/+LTU'[
M0$ALP (Y)A"9C.T80LJ-)YGV'10!\3? O]B?]OG]F"T_: T/X-?$WX8M:?$'
MXW:E\1_ 5UJ::@+@S:CJ5G=W6GZCMC*Q0"&&Y@W0B5Y1<*V8=A#=)^QY_P $
M\;CX!?MK_$#]LFS^'?@GX9P>//!6GZ1K'P[^&NLSWFF:EJ<-U-<2ZU.9+.S1
M+C;(L"JD'(\V1G+2D#ZUHH ^._\ @HW\)+_PK^UK^S-_P44M(&?2/@WXJUG2
M/'Y0<6F@:_IYL7U&3TAM+I;665ND<+32,0D;$>M?%_X6_'GQ;^UA\+_C#X%T
MKP?+X5\&V6LP:O\ VGXBNH;^X%_#;HK011V<D?[LPDX:0;PPY7'/M$L44\30
M3QJZ.I5T<9# ]01W%5?#_A[0O"FBVWAOPQH]MI^G64(BLK&RA6.&WC'W41%
M"*!P%       H ^5/^"AG_!*KP+^V?\ &[X/?M4^$-:3PQ\2?A1\0= U*368
MF>--?T"TU:VO;K2+ORQF5/W)F@W A)E'W5D=ASGQ^_8I_P""@/PO_;Q\0?MQ
M_P#!-SXH?##;\3?#VFZ7\6/A_P#%]-12PNI].1XK+4[.?3T>1)TA?RC&P"%0
M26)9?+^VJ* /FG]JO]A_XA?M7?\ !./Q9^RA\3?BI;ZG\0->TB6_L?&4=M):
M6UAXD2Y^WV,]O&&DDM[6WNTA2--SR""(*S2.69N \9?\$D$U_P"-?[/'QCLO
MB@PU#X<17]I\8+WRA%-X^M[FX367\X*I4!M?MX;QHOE0I/.@X(4_:M% 'R1_
MP6B^'GB#]I?]CFX_82^'DI/BKXW>(-,\/V9C&XV&F1W]M=:KJ4@_A@M[*&7+
MG@RRV\?+S1JWU9H.B:;X9T.R\.:-;"&ST^TCMK2$'.R*-0JK^  %,A\,>';?
MQ%/XN@T*T75;FU2VN-2%NOGR0(2R1&3&[8&9F"YP"S'&235Z@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
&*** /__9

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>14
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687975043536">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cover Page - USD ($)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Feb. 15, 2023</div></th>
<th class="th"><div>Jun. 30, 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_dei_CoverAbstract', window );"><strong>Cover [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentType', window );">Document Type</a></td>
<td class="text">10-K<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentAnnualReport', window );">Document Annual Report</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" 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">Dec. 31,  2022<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_dei_CurrentFiscalYearEndDate', window );">Current Fiscal Year End Date</a></td>
<td class="text">--12-31<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" 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>
<td class="text">&#160;<span></span>
</td>
</tr>
<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-36307<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_dei_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">Installed Building Products, Inc.<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_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>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_EntityTaxIdentificationNumber', window );">Entity Tax Identification Number</a></td>
<td class="text">45-3707650<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_dei_EntityAddressAddressLine1', window );">Entity Address, Address Line One</a></td>
<td class="text">495 South High Street<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_dei_EntityAddressAddressLine2', window );">Entity Address, Address Line Two</a></td>
<td class="text">Suite 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_dei_EntityAddressCityOrTown', window );">Entity Address, City or Town</a></td>
<td class="text">Columbus<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_dei_EntityAddressStateOrProvince', window );">Entity Address, State or Province</a></td>
<td class="text">OH<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_dei_EntityAddressPostalZipCode', window );">Entity Address, Postal Zip Code</a></td>
<td class="text">43215<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_dei_CityAreaCode', window );">City Area Code</a></td>
<td class="text">(614)<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_dei_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">221-3399<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_dei_Security12bTitle', window );">Title of 12(b) Security</a></td>
<td class="text">Common Stock,<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" 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">IBP<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_dei_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NYSE<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_dei_EntityWellKnownSeasonedIssuer', window );">Entity Well-known Seasoned Issuer</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityVoluntaryFilers', window );">Entity Voluntary Filers</a></td>
<td class="text">No<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
<td class="text">&#160;<span></span>
</td>
</tr>
<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>
<td class="text">&#160;<span></span>
</td>
</tr>
<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>
<td class="text">&#160;<span></span>
</td>
</tr>
<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>
<td class="text">&#160;<span></span>
</td>
</tr>
<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>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_IcfrAuditorAttestationFlag', window );">ICFR Auditor Attestation Flag</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" 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>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_EntityPublicFloat', window );">Entity Public Float</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,955,334,261<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCommonStockSharesOutstanding', window );">Entity Common Stock, Shares Outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">28,306,393<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_DocumentsIncorporatedByReferenceTextBlock', window );">Documents Incorporated by Reference</a></td>
<td class="text">Portions of the registrant&#8217;s Definitive Proxy Statement relating to the 2023 Annual Meeting of Stockholders are incorporated by reference into Part III of this Annual Report on Form 10-K where indicated. Such Definitive Proxy Statement will be filed with the Securities and Exchange Commission within 120 days after the end of the registrant&#8217;s fiscal year ended December&#160;31, 2022.<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_dei_AmendmentFlag', window );">Amendment Flag</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2022<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_dei_DocumentFiscalPeriodFocus', window );">Document Fiscal Period Focus</a></td>
<td class="text">FY<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" 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">0001580905<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_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_DocumentAnnualReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 annual 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-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentAnnualReport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalPeriodFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_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_DocumentsIncorporatedByReferenceTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Documents incorporated by reference.</p></div>
<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-23<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_DocumentsIncorporatedByReferenceTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types: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_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_EntityAddressAddressLine2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 2 such as Street or Suite number</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_EntityAddressAddressLine2</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_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_EntityPublicFloat">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant's most recently completed second fiscal quarter.</p></div>
<a href="javascript:void(0);" onclick="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_EntityPublicFloat</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityRegistrantName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_EntityVoluntaryFilers">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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' if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act.</p></div>
<a href="javascript:void(0);" onclick="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_EntityVoluntaryFilers</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityWellKnownSeasonedIssuer">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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' if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Is used on Form Type: 10-K, 10-Q, 8-K, 20-F, 6-K, 10-K/A, 10-Q/A, 20-F/A, 6-K/A, N-CSR, N-Q, N-1A.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br> -Section 405<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityWellKnownSeasonedIssuer</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_IcfrAuditorAttestationFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_IcfrAuditorAttestationFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LocalPhoneNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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>15
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687974951536">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Audit Information<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_ibp_AuditorInformationAbstract', window );"><strong>Auditor Information [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_dei_AuditorName', window );">Auditor Name</a></td>
<td class="text">Deloitte & Touche LLP<span></span>
</td>
</tr>
<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_AuditorLocation', window );">Auditor Location</a></td>
<td class="text">Columbus, Ohio<span></span>
</td>
</tr>
<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_AuditorFirmId', window );">Auditor Firm ID</a></td>
<td class="text">34<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AuditorFirmId">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>PCAOB issued Audit Firm Identifier</p></div>
<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-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_AuditorFirmId</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:nonemptySequenceNumberItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AuditorLocation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_AuditorLocation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:internationalNameItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AuditorName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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 Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_AuditorName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:internationalNameItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ibp_AuditorInformationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Auditor Information</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;">ibp_AuditorInformationAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance 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>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687975729904">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>CONSOLIDATED BALANCE SHEETS - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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">$ 229,627<span></span>
</td>
<td class="nump">$ 333,485<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable (less allowance for credit losses of $9,549 and $8,717 at December&#160;31, 2022 and 2021, respectively)</a></td>
<td class="nump">397,222<span></span>
</td>
<td class="nump">312,767<span></span>
</td>
</tr>
<tr class="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,629<span></span>
</td>
<td class="nump">143,039<span></span>
</td>
</tr>
<tr class="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 current assets</a></td>
<td class="nump">80,933<span></span>
</td>
<td class="nump">70,025<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">884,411<span></span>
</td>
<td class="nump">859,316<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization', window );">Property and equipment, net</a></td>
<td class="nump">118,774<span></span>
</td>
<td class="nump">105,933<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Operating lease right-of-use assets</a></td>
<td class="nump">76,174<span></span>
</td>
<td class="nump">69,871<span></span>
</td>
</tr>
<tr class="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">373,555<span></span>
</td>
<td class="nump">322,517<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Intangible assets</a></td>
<td class="nump">283,473<span></span>
</td>
<td class="nump">264,421<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherAssetsNoncurrent', window );">Other non-current assets</a></td>
<td class="nump">42,545<span></span>
</td>
<td class="nump">31,144<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">1,778,932<span></span>
</td>
<td class="nump">1,653,202<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrentAbstract', window );"><strong>Current liabilities</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtCurrent', window );">Current maturities of long-term debt</a></td>
<td class="nump">30,983<span></span>
</td>
<td class="nump">30,839<span></span>
</td>
</tr>
<tr class="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 );">Current maturities of operating lease obligations</a></td>
<td class="nump">26,145<span></span>
</td>
<td class="nump">23,224<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityCurrent', window );">Current maturities of finance lease obligations</a></td>
<td class="nump">2,508<span></span>
</td>
<td class="nump">1,747<span></span>
</td>
</tr>
<tr class="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">149,186<span></span>
</td>
<td class="nump">132,705<span></span>
</td>
</tr>
<tr class="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 );">Accrued compensation</a></td>
<td class="nump">51,608<span></span>
</td>
<td class="nump">50,964<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherLiabilitiesCurrent', window );">Other current liabilities</a></td>
<td class="nump">67,631<span></span>
</td>
<td class="nump">68,090<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">328,061<span></span>
</td>
<td class="nump">307,569<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtNoncurrent', window );">Long-term debt</a></td>
<td class="nump">830,171<span></span>
</td>
<td class="nump">832,193<span></span>
</td>
</tr>
<tr class="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 obligations</a></td>
<td class="nump">49,789<span></span>
</td>
<td class="nump">46,075<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityNoncurrent', window );">Finance lease obligations</a></td>
<td class="nump">6,397<span></span>
</td>
<td class="nump">3,297<span></span>
</td>
</tr>
<tr class="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">28,458<span></span>
</td>
<td class="nump">4,819<span></span>
</td>
</tr>
<tr class="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">42,557<span></span>
</td>
<td class="nump">42,409<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Liabilities', window );">Total liabilities</a></td>
<td class="nump">1,285,433<span></span>
</td>
<td class="nump">1,236,362<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingencies', window );">Commitments and contingencies (Note 17)</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&#8217; equity</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockValue', window );">Preferred Stock; $0.01 par value: 5,000,000 authorized and 0 shares issued and outstanding at December&#160;31, 2022 and 2021, respectively</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: 100,000,000 authorized, 33,429,557 and 33,271,659 issued and 28,306,482 and 29,706,401 shares outstanding at December&#160;31, 2022 and 2021, respectively</a></td>
<td class="nump">334<span></span>
</td>
<td class="nump">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_AdditionalPaidInCapitalCommonStock', window );">Additional paid in capital</a></td>
<td class="nump">228,827<span></span>
</td>
<td class="nump">211,430<span></span>
</td>
</tr>
<tr class="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">513,095<span></span>
</td>
<td class="nump">352,543<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockCommonValue', window );">Treasury stock; at cost: 5,123,075 and 3,565,258 shares at December&#160;31, 2022 and 2021, respectively</a></td>
<td class="num">(289,317)<span></span>
</td>
<td class="num">(147,239)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax', window );">Accumulated other comprehensive income (loss)</a></td>
<td class="nump">40,560<span></span>
</td>
<td class="num">(227)<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_StockholdersEquity', window );">Total stockholders&#8217; equity</a></td>
<td class="nump">493,499<span></span>
</td>
<td class="nump">416,840<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_LiabilitiesAndStockholdersEquity', window );">Total liabilities and stockholders&#8217; equity</a></td>
<td class="nump">1,778,932<span></span>
</td>
<td class="nump">1,653,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_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelationshipsMember', window );">Customer relationships</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_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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Intangible assets</a></td>
<td class="nump">192,328<span></span>
</td>
<td class="nump">178,264<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=ibp_IntangibleAssetsExcludingCustomerRelationshipsMember', window );">Other intangibles, net</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsCurrentAbstract', window );"><strong>Current assets</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Intangible assets</a></td>
<td class="nump">$ 91,145<span></span>
</td>
<td class="nump">$ 86,157<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_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(a))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4428-111522<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4531-111522<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_AccumulatedOtherComprehensiveIncomeLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Accumulated change in equity from transactions and other events and circumstances from non-owner sources, net of tax effect, at period end. Excludes Net Income (Loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners. Includes foreign currency translation items, certain pension adjustments, unrealized gains and losses on certain investments in debt and equity securities, other than temporary impairment (OTTI) losses related to factors other than credit losses on available-for-sale and held-to-maturity debt securities that an entity does not intend to sell and it is not more likely than not that the entity will be required to sell before recovery of the amortized cost basis, as well as changes in the fair value of derivatives related to the effective portion of a designated cash flow hedge.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(4))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e637-108580<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(3))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669686-108580<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e681-108580<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(11))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(12))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI https://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(18))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Assets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI https://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(9))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3044-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.25)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03.(a),19)<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03.17)<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingencies</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e31931-109318<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e31917-109318<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_FinanceLeaseLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from finance lease, 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FinanceLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from finance lease, 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FiniteLivedIntangibleAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 926<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=120154696&amp;loc=d3e54445-107959<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=122137925&amp;loc=d3e14258-109268<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13770-109266<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(15))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19-26)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI https://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(23))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(25))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(32))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesAndStockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI https://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6904-107765<br><br>Reference 21: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.21)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_LongTermDebtCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after unamortized (discount) premium and debt issuance costs, of long-term debt, classified as current. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19,20)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding unamortized premium (discount) and debt issuance cost, of long-term debt classified as noncurrent. Excludes lease obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(17))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAssetsNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of liabilities classified as other, due within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.24)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(9))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 and amortization, of property, plant, and equipment and finance lease right-of-use asset.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>The cumulative amount of the reporting entity's undistributed earnings or 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(3))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(4))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RetainedEarningsAccumulatedDeficit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -URI https://asc.fasb.org/extlink&amp;oid=122038336&amp;loc=d3e74512-122707<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_TreasuryStockCommonValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount allocated to 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6405813&amp;loc=d3e23239-112655<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=6405834&amp;loc=d3e23315-112656<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.30)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockCommonValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelationshipsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CustomerRelationshipsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=ibp_IntangibleAssetsExcludingCustomerRelationshipsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=ibp_IntangibleAssetsExcludingCustomerRelationshipsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>17
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687974978320">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>CONSOLIDATED BALANCE SHEETS (Parenthetical) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Allowance for doubtful accounts</a></td>
<td class="nump">$ 9,549<span></span>
</td>
<td class="nump">$ 8,717<span></span>
</td>
</tr>
<tr class="re">
<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&#8217; equity</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" 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 in USD per share)</a></td>
<td class="nump">$ 0.01<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockSharesAuthorized', window );">Preferred stock, shares authorized (in shares)</a></td>
<td class="nump">5,000,000<span></span>
</td>
<td class="nump">5,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 (in shares)</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 (in shares)</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 (in USD per share)</a></td>
<td class="nump">$ 0.01<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesAuthorized', window );">Common stock, shares authorized (in shares)</a></td>
<td class="nump">100,000,000<span></span>
</td>
<td class="nump">100,000,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesIssued', window );">Common stock, shares issued (in shares)</a></td>
<td class="nump">33,429,557<span></span>
</td>
<td class="nump">33,271,659<span></span>
</td>
</tr>
<tr class="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 (in shares)</a></td>
<td class="nump">28,306,482<span></span>
</td>
<td class="nump">29,706,401<span></span>
</td>
</tr>
<tr class="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 (in shares)</a></td>
<td class="nump">5,123,075<span></span>
</td>
<td class="nump">3,565,258<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of allowance for credit loss on accounts receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=d3e5074-111524<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=124255206&amp;loc=SL82895884-210446<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496158-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>Total number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496158-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_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_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6405813&amp;loc=d3e23239-112655<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockCommonShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>18
<FILENAME>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687975273424">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 revenue</a></td>
<td class="nump">$ 2,669,844<span></span>
</td>
<td class="nump">$ 1,968,650<span></span>
</td>
<td class="nump">$ 1,653,225<span></span>
</td>
</tr>
<tr class="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">1,842,060<span></span>
</td>
<td class="nump">1,379,131<span></span>
</td>
<td class="nump">1,143,251<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">827,784<span></span>
</td>
<td class="nump">589,519<span></span>
</td>
<td class="nump">509,974<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingExpensesAbstract', window );"><strong>Operating expenses</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SellingExpense', window );">Selling</a></td>
<td class="nump">119,031<span></span>
</td>
<td class="nump">93,204<span></span>
</td>
<td class="nump">81,613<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GeneralAndAdministrativeExpense', window );">Administrative</a></td>
<td class="nump">335,688<span></span>
</td>
<td class="nump">272,391<span></span>
</td>
<td class="nump">238,147<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1', window );">Gains on acquisition earnouts</a></td>
<td class="num">(16,109)<span></span>
</td>
<td class="num">(1,035)<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_AmortizationOfIntangibleAssets', window );">Amortization</a></td>
<td class="nump">43,763<span></span>
</td>
<td class="nump">37,079<span></span>
</td>
<td class="nump">28,535<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Operating income</a></td>
<td class="nump">345,411<span></span>
</td>
<td class="nump">187,880<span></span>
</td>
<td class="nump">161,867<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherNonoperatingIncomeExpenseAbstract', window );"><strong>Other expense</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_InterestExpense', window );">Interest expense, net</a></td>
<td class="nump">41,574<span></span>
</td>
<td class="nump">32,842<span></span>
</td>
<td class="nump">30,291<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherNonoperatingIncomeExpense', window );">Other expense (income)</a></td>
<td class="nump">530<span></span>
</td>
<td class="num">(437)<span></span>
</td>
<td class="nump">399<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">303,307<span></span>
</td>
<td class="nump">155,475<span></span>
</td>
<td class="nump">131,177<span></span>
</td>
</tr>
<tr class="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 provision</a></td>
<td class="nump">79,879<span></span>
</td>
<td class="nump">36,712<span></span>
</td>
<td class="nump">33,938<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">223,428<span></span>
</td>
<td class="nump">118,763<span></span>
</td>
<td class="nump">97,239<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNetOfTaxAbstract', window );"><strong>Other comprehensive gain (loss), net of tax:</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_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax', window );">Net change in cash flow hedges, net of tax</a></td>
<td class="nump">40,787<span></span>
</td>
<td class="nump">8,536<span></span>
</td>
<td class="num">(1,620)<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">$ 264,215<span></span>
</td>
<td class="nump">$ 127,299<span></span>
</td>
<td class="nump">$ 95,619<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings Per Share:</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_EarningsPerShareBasic', window );">Basic (in USD per share)</a></td>
<td class="nump">$ 7.78<span></span>
</td>
<td class="nump">$ 4.04<span></span>
</td>
<td class="nump">$ 3.30<span></span>
</td>
</tr>
<tr class="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 (in USD per share)</a></td>
<td class="nump">$ 7.74<span></span>
</td>
<td class="nump">$ 4.01<span></span>
</td>
<td class="nump">$ 3.27<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract', window );"><strong>Weighted average shares outstanding:</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_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic (in shares)</a></td>
<td class="nump">28,708,166<span></span>
</td>
<td class="nump">29,367,676<span></span>
</td>
<td class="nump">29,504,115<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted (in shares)</a></td>
<td class="nump">28,869,501<span></span>
</td>
<td class="nump">29,628,527<span></span>
</td>
<td class="nump">29,717,609<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockDividendsPerShareDeclared', window );">Cash dividends declared per share (in USD per share)</a></td>
<td class="nump">$ 2.16<span></span>
</td>
<td class="nump">$ 1.20<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_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16225-109274<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 value of a contingent consideration liability, including, but not limited to, differences arising upon settlement.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=126975305&amp;loc=d3e7008-128479<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_CommonStockDividendsPerShareDeclared">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 dividends declared during the period for each share of common stock outstanding.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockDividendsPerShareDeclared</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(22))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(24))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e557-108580<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(26))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669625-108580<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669619-108580<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ComprehensiveIncomeNetOfTaxAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ComprehensiveIncomeNetOfTaxAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CostOfGoodsAndServicesSold">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI https://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.2(a),(d))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1448-109256<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1337-109256<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI https://asc.fasb.org/extlink&amp;oid=128363288&amp;loc=d3e4984-109258<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI https://asc.fasb.org/extlink&amp;oid=128363288&amp;loc=d3e3842-109258<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22644-107794<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1252-109256<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI https://asc.fasb.org/extlink&amp;oid=128363288&amp;loc=d3e4984-109258<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22644-107794<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI https://asc.fasb.org/extlink&amp;oid=128363288&amp;loc=d3e3842-109258<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1252-109256<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1337-109256<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_GeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate total of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.4)<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GeneralAndAdministrativeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GrossProfit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 18: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.1,2)<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GrossProfit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 940<br> -SubTopic 20<br> -Section 25<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=126941158&amp;loc=d3e41242-110953<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(8))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.7)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32672-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123586238&amp;loc=d3e38679-109324<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InterestExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the cost of borrowed funds accounted for as interest expense.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=6450988&amp;loc=d3e26243-108391<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124435984&amp;loc=d3e28555-108399<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (210.5-03(11))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04.9)<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669619-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669625-108580<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OperatingExpensesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingExpensesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The net result for the period of deducting operating expenses from operating revenues.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after tax and reclassification, of gain (loss) from derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e637-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669646-108580<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherNonoperatingIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income (expense) related to nonoperating activities, classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.9)<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherNonoperatingIncomeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherNonoperatingIncomeExpenseAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_OtherNonoperatingIncomeExpenseAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9031-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9038-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130543-203045<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9054-108599<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130545-203045<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI https://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SellingExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Expenses recognized in the period that are directly related to the selling and distribution of products or services.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.4)<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SellingExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 16<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1505-109256<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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_WeightedAverageNumberOfSharesOutstandingAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1448-109256<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>19
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687982029472">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (Parenthetical) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax', window );">Unrealized loss on cash flow hedge, net of tax benefit</a></td>
<td class="num">$ (14,381)<span></span>
</td>
<td class="num">$ (2,773)<span></span>
</td>
<td class="nump">$ 550<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_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_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 reclassification, of tax expense (benefit) for gain (loss) from derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e640-108580<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>20
<FILENAME>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687971957280">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Total</div></th>
<th class="th"><div>Cumulative Effect, Period of Adoption, Adjustment</div></th>
<th class="th"><div>Common Stock</div></th>
<th class="th"><div>Additional Paid In Capital&#160;</div></th>
<th class="th"><div>Retained Earnings</div></th>
<th class="th">
<div>Retained Earnings </div>
<div>Cumulative Effect, Period of Adoption, Adjustment</div>
</th>
<th class="th"><div>Treasury Stock</div></th>
<th class="th"><div>Accumulated Other Comprehensive (Loss) Income</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_CommonStockSharesIssued', window );">BALANCE, Shares at Dec. 31, 2019</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">32,871,504<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 );">Accumulated loss at beginning of period at Dec. 31, 2019</a></td>
<td class="nump">$ 250,031<span></span>
</td>
<td class="num">$ (1,190)<span></span>
</td>
<td class="nump">$ 329<span></span>
</td>
<td class="nump">$ 190,230<span></span>
</td>
<td class="nump">$ 173,371<span></span>
</td>
<td class="num">$ (1,190)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (7,143)<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 );">BALANCE, Treasury Stock, Shares at Dec. 31, 2019</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(2,855,164)<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_TreasuryStockCommonValue', window );">BALANCE, Treasury Stock, Value at Dec. 31, 2019</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (106,756)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">97,239<span></span>
</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">97,239<span></span>
</td>
<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_StockIssuedDuringPeriodSharesShareBasedCompensationGross', window );">Issuance of common stock awards to employees (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">264,004<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 );">Issuance of common stock awards to employees</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2<span></span>
</td>
<td class="num">(2)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationForfeited', window );">Surrender of common stock awards by employees (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(30,223)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationForfeited', window );">Surrender of common stock awards</a></td>
<td class="num">(973)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (973)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Share-based compensation expense</a></td>
<td class="nump">9,286<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">9,286<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Share-based compensation issued to directors (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,371<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_StockIssuedDuringPeriodValueShareBasedCompensation', window );">Share-based compensation issued to directors</a></td>
<td class="nump">$ 333<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">333<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockSharesAcquired', window );">Common stock repurchase (in shares)</a></td>
<td class="num">(633,220)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockValueAcquiredCostMethod', window );">Common stock repurchase</a></td>
<td class="num">$ (33,924)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax', window );">Net change in cash flow hedges, net of tax</a></td>
<td class="num">(1,620)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(1,620)<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 );">Accumulated gain (loss) at end of period at Dec. 31, 2020</a></td>
<td class="nump">319,182<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 331<span></span>
</td>
<td class="nump">199,847<span></span>
</td>
<td class="nump">269,420<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(8,763)<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_CommonStockSharesIssued', window );">BALANCE, Shares at Dec. 31, 2020</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">33,141,879<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 );">BALANCE, Treasury Stock, Shares at Dec. 31, 2020</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(3,518,607)<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_TreasuryStockCommonValue', window );">BALANCE, Treasury Stock, Value at Dec. 31, 2020</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (141,653)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">118,763<span></span>
</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">118,763<span></span>
</td>
<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_StockIssuedDuringPeriodSharesShareBasedCompensationGross', window );">Issuance of common stock awards to employees (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">125,550<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 );">Issuance of common stock awards to employees</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2<span></span>
</td>
<td class="num">(2)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationForfeited', window );">Surrender of common stock awards by employees (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(46,651)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationForfeited', window );">Surrender of common stock awards</a></td>
<td class="num">(5,586)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (5,586)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Share-based compensation expense</a></td>
<td class="nump">11,118<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">11,118<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_StockIssuedDuringPeriodSharesShareBasedCompensation', window );">Share-based compensation issued to directors (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,230<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_StockIssuedDuringPeriodValueShareBasedCompensation', window );">Share-based compensation issued to directors</a></td>
<td class="nump">467<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">467<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_DividendsCommonStockCash', window );">Dividends Declared ($2.16 per share)</a></td>
<td class="num">$ (35,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>
<td class="num">(35,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_TreasuryStockSharesAcquired', window );">Common stock repurchase (in shares)</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax', window );">Net change in cash flow hedges, net of tax</a></td>
<td class="nump">$ 8,536<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">8,536<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 );">Accumulated gain (loss) at end of period at Dec. 31, 2021</a></td>
<td class="nump">$ 416,840<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 333<span></span>
</td>
<td class="nump">211,430<span></span>
</td>
<td class="nump">352,543<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(227)<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_CommonStockSharesIssued', window );">BALANCE, Shares at Dec. 31, 2021</a></td>
<td class="nump">33,271,659<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">33,271,659<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 );">BALANCE, Treasury Stock, Shares at Dec. 31, 2021</a></td>
<td class="num">(3,565,258)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(3,565,258)<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_TreasuryStockCommonValue', window );">BALANCE, Treasury Stock, Value at Dec. 31, 2021</a></td>
<td class="num">$ (147,239)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (147,239)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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">223,428<span></span>
</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">223,428<span></span>
</td>
<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_StockIssuedDuringPeriodSharesShareBasedCompensationGross', window );">Issuance of common stock awards to employees (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">112,389<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 );">Issuance of common stock awards to employees</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1<span></span>
</td>
<td class="num">(1)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationForfeited', window );">Surrender of common stock awards by employees (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(55,183)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationForfeited', window );">Surrender of common stock awards</a></td>
<td class="num">(4,522)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (4,522)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Share-based compensation expense</a></td>
<td class="nump">12,851<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">12,851<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_StockIssuedDuringPeriodSharesShareBasedCompensation', window );">Share-based compensation issued to directors (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Share-based compensation issued to directors</a></td>
<td class="nump">547<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">547<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures', window );">Issuance of awards previously classified as liability awards (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">39,204<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures', window );">Issuance of awards previously classified as liability awards</a></td>
<td class="nump">4,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DividendsCommonStockCash', window );">Dividends Declared ($2.16 per share)</a></td>
<td class="num">$ (62,876)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(62,876)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockSharesAcquired', window );">Common stock repurchase (in shares)</a></td>
<td class="num">(1,500,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(1,502,634)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockValueAcquiredCostMethod', window );">Common stock repurchase</a></td>
<td class="num">$ (137,556)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (137,556)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax', window );">Net change in cash flow hedges, net of tax</a></td>
<td class="nump">40,787<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">40,787<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 );">Accumulated gain (loss) at end of period at Dec. 31, 2022</a></td>
<td class="nump">$ 493,499<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 334<span></span>
</td>
<td class="nump">$ 228,827<span></span>
</td>
<td class="nump">$ 513,095<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 40,560<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_CommonStockSharesIssued', window );">BALANCE, Shares at Dec. 31, 2022</a></td>
<td class="nump">33,429,557<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">33,429,557<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 );">BALANCE, Treasury Stock, Shares at Dec. 31, 2022</a></td>
<td class="num">(5,123,075)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(5,123,075)<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_TreasuryStockCommonValue', window );">BALANCE, Treasury Stock, Value at Dec. 31, 2022</a></td>
<td class="num">$ (289,317)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (289,317)<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_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=126964447&amp;loc=d3e11149-113907<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 13<br> -URI https://asc.fasb.org/extlink&amp;oid=126964447&amp;loc=d3e11178-113907<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 35<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126961718&amp;loc=d3e4534-113899<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DividendsCommonStockCash">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of paid and unpaid common stock dividends declared with the form of settlement in cash.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DividendsCommonStockCash</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669619-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669625-108580<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after tax and reclassification, of gain (loss) from derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e637-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669646-108580<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 during the period related to Restricted Stock Awards, net of any shares forfeited.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures</td>
</tr>
<tr>
<td style="padding-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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_StockIssuedDuringPeriodSharesShareBasedCompensationForfeited">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 (or other type of equity) forfeited during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationForfeited</td>
</tr>
<tr>
<td style="padding-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_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 of stock related to Restricted Stock Awards issued during the period, net of the stock value of such awards forfeited.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_StockIssuedDuringPeriodValueShareBasedCompensationForfeited">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 of forfeited 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph c(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationForfeited</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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>Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -URI https://asc.fasb.org/extlink&amp;oid=122038336&amp;loc=d3e74512-122707<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6405813&amp;loc=d3e23239-112655<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockCommonShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockCommonValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount allocated to 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6405813&amp;loc=d3e23239-112655<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=6405834&amp;loc=d3e23315-112656<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.30)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockCommonValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockSharesAcquired</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockValueAcquiredCostMethod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Equity impact of the cost of common and preferred stock that were repurchased during the period. Recorded using the cost method.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6405813&amp;loc=d3e23239-112655<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockValueAcquiredCostMethod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>21
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687975014976">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (Parenthetical) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Nov. 03, 2022</div></th>
<th class="th"><div>Aug. 04, 2022</div></th>
<th class="th"><div>May 05, 2022</div></th>
<th class="th"><div>Nov. 04, 2021</div></th>
<th class="th"><div>Aug. 05, 2021</div></th>
<th class="th"><div>May 05, 2021</div></th>
<th class="th"><div>Feb. 23, 2021</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementOfStockholdersEquityAbstract', window );"><strong>Statement of Stockholders' Equity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_CommonStockDividendsPerShareDeclared', window );">Cash dividends declared per share (in USD per share)</a></td>
<td class="nump">$ 0.315<span></span>
</td>
<td class="nump">$ 0.315<span></span>
</td>
<td class="nump">$ 0.315<span></span>
</td>
<td class="nump">$ 0.30<span></span>
</td>
<td class="nump">$ 0.30<span></span>
</td>
<td class="nump">$ 0.30<span></span>
</td>
<td class="nump">$ 0.30<span></span>
</td>
<td class="nump">$ 2.16<span></span>
</td>
<td class="nump">$ 1.20<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_StockIssuedDuringPeriodValueShareBasedCompensation', window );">Share-based compensation issued to directors</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">$ 547<span></span>
</td>
<td class="nump">$ 467<span></span>
</td>
<td class="nump">$ 333<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_CommonStockDividendsPerShareDeclared">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 dividends declared during the period for each share of common stock outstanding.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockDividendsPerShareDeclared</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementOfStockholdersEquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementOfStockholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>22
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687976684560">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>CONSOLIDATED STATEMENTS OF CASH FLOWS - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Cash flows from operating activities</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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">$ 223,428<span></span>
</td>
<td class="nump">$ 118,763<span></span>
</td>
<td class="nump">$ 97,239<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Adjustments to reconcile net income to net cash provided by operating activities</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationAndAmortization', window );">Depreciation and amortization of property and equipment</a></td>
<td class="nump">47,283<span></span>
</td>
<td class="nump">43,562<span></span>
</td>
<td class="nump">41,339<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense', window );">Amortization of operating lease right-of-use assets</a></td>
<td class="nump">26,631<span></span>
</td>
<td class="nump">22,258<span></span>
</td>
<td class="nump">18,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_AmortizationOfIntangibleAssets', window );">Amortization of intangibles</a></td>
<td class="nump">43,763<span></span>
</td>
<td class="nump">37,079<span></span>
</td>
<td class="nump">28,535<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AmortizationOfFinancingCostsAndDiscounts', window );">Amortization of deferred financing costs and debt discount</a></td>
<td class="nump">1,912<span></span>
</td>
<td class="nump">1,354<span></span>
</td>
<td class="nump">1,332<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProvisionForDoubtfulAccounts', window );">Provision for credit losses</a></td>
<td class="nump">4,129<span></span>
</td>
<td class="nump">2,227<span></span>
</td>
<td class="nump">4,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_WriteOffOfDeferredDebtIssuanceCost', window );">Write-off of debt issuance costs</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,767<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_GainLossOnDispositionOfAssets', window );">Gain on sale of property and equipment</a></td>
<td class="num">(1,419)<span></span>
</td>
<td class="num">(1,840)<span></span>
</td>
<td class="num">(786)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Noncash stock compensation</a></td>
<td class="nump">13,816<span></span>
</td>
<td class="nump">13,752<span></span>
</td>
<td class="nump">10,826<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1', window );">Gains on acquisition earnouts</a></td>
<td class="num">(16,109)<span></span>
</td>
<td class="num">(1,035)<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_DeferredIncomeTaxesAndTaxCredits', window );">Deferred income taxes</a></td>
<td class="nump">7,066<span></span>
</td>
<td class="num">(438)<span></span>
</td>
<td class="num">(8,475)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherNoncashIncomeExpense', window );">Other, net</a></td>
<td class="num">(91)<span></span>
</td>
<td class="nump">3,223<span></span>
</td>
<td class="nump">1,326<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract', window );"><strong>Changes in assets and liabilities, excluding effects of acquisitions</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_IncreaseDecreaseInAccountsReceivable', window );">Accounts receivable</a></td>
<td class="num">(76,486)<span></span>
</td>
<td class="num">(16,775)<span></span>
</td>
<td class="num">(10,489)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInInventories', window );">Inventories</a></td>
<td class="num">(16,495)<span></span>
</td>
<td class="num">(54,003)<span></span>
</td>
<td class="nump">187<span></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_ibp_ProceedsFromTerminationOfDerivativeInstruments', window );">Proceeds from termination of interest rate swap agreements</a></td>
<td class="nump">25,462<span></span>
</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_IncreaseDecreaseInOtherOperatingAssets', window );">Other assets</a></td>
<td class="num">(2,586)<span></span>
</td>
<td class="num">(19,885)<span></span>
</td>
<td class="num">(870)<span></span>
</td>
</tr>
<tr class="ro">
<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">9,623<span></span>
</td>
<td class="nump">26,424<span></span>
</td>
<td class="num">(203)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInIncomeTaxes', window );">Income taxes receivable/payable</a></td>
<td class="nump">3,207<span></span>
</td>
<td class="num">(4,403)<span></span>
</td>
<td class="nump">4,296<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherOperatingLiabilities', window );">Other liabilities</a></td>
<td class="num">(15,230)<span></span>
</td>
<td class="num">(33,716)<span></span>
</td>
<td class="num">(5,846)<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_NetCashProvidedByUsedInOperatingActivities', window );">Net cash provided by operating activities</a></td>
<td class="nump">277,904<span></span>
</td>
<td class="nump">138,314<span></span>
</td>
<td class="nump">180,789<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract', window );"><strong>Cash flows from investing activities</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireInvestments', window );">Purchases of investments</a></td>
<td class="num">(344,388)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(776)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromSaleOfShortTermInvestments', window );">Maturities of short term investments</a></td>
<td class="nump">345,000<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">38,693<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Purchases of property and equipment</a></td>
<td class="num">(45,646)<span></span>
</td>
<td class="num">(36,979)<span></span>
</td>
<td class="num">(33,587)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired', window );">Acquisitions of businesses, net of cash acquired of $523, $1,707 and $0 in 2022, 2021 and 2020, respectively</a></td>
<td class="num">(113,536)<span></span>
</td>
<td class="num">(241,308)<span></span>
</td>
<td class="num">(76,446)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment', window );">Proceeds from sale of property and equipment</a></td>
<td class="nump">1,958<span></span>
</td>
<td class="nump">2,694<span></span>
</td>
<td class="nump">1,187<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsForProceedsFromOtherInvestingActivities', window );">Other</a></td>
<td class="num">(2,057)<span></span>
</td>
<td class="num">(2,846)<span></span>
</td>
<td class="num">(6,865)<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">(158,669)<span></span>
</td>
<td class="num">(278,439)<span></span>
</td>
<td class="num">(77,794)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract', window );"><strong>Cash flows from financing activities</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfMediumTermNotes', window );">Proceeds from term loan (Note 8)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">500,000<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_RepaymentsOfMediumTermNotes', window );">Payments on term loan (Note 8)</a></td>
<td class="num">(5,000)<span></span>
</td>
<td class="num">(200,000)<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_ProceedsFromNotesPayable', window );">Proceeds from vehicle and equipment notes payable</a></td>
<td class="nump">30,940<span></span>
</td>
<td class="nump">27,834<span></span>
</td>
<td class="nump">21,290<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsOfDebtIssuanceCosts', window );">Debt issuance costs</a></td>
<td class="num">(655)<span></span>
</td>
<td class="num">(7,520)<span></span>
</td>
<td class="num">(157)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RepaymentsOfOtherLongTermDebt', window );">Principal payments on long-term debt</a></td>
<td class="num">(30,173)<span></span>
</td>
<td class="num">(26,301)<span></span>
</td>
<td class="num">(26,685)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeasePrincipalPayments', window );">Principal payments on finance lease obligations</a></td>
<td class="num">(2,306)<span></span>
</td>
<td class="num">(2,125)<span></span>
</td>
<td class="num">(2,632)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsOfMergerRelatedCostsFinancingActivities', window );">Acquisition-related obligations</a></td>
<td class="num">(11,150)<span></span>
</td>
<td class="num">(8,918)<span></span>
</td>
<td class="num">(6,283)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsOfDividends', window );">Dividends paid</a></td>
<td class="num">(62,671)<span></span>
</td>
<td class="num">(35,294)<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_PaymentsForRepurchaseOfCommonStock', window );">Repurchase of common stock</a></td>
<td class="num">(137,556)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(33,924)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_SurrenderOfCommonStockAwardsByEmployees', window );">Surrender of common stock awards by employees</a></td>
<td class="num">(4,522)<span></span>
</td>
<td class="num">(5,586)<span></span>
</td>
<td class="num">(973)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivities', window );">Net cash (used in) provided by financing activities</a></td>
<td class="num">(223,093)<span></span>
</td>
<td class="nump">242,090<span></span>
</td>
<td class="num">(49,364)<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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect', window );">Net change in cash and cash equivalents</a></td>
<td class="num">(103,858)<span></span>
</td>
<td class="nump">101,965<span></span>
</td>
<td class="nump">53,631<span></span>
</td>
</tr>
<tr class="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 at beginning of period</a></td>
<td class="nump">333,485<span></span>
</td>
<td class="nump">231,520<span></span>
</td>
<td class="nump">177,889<span></span>
</td>
</tr>
<tr class="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 at end of period</a></td>
<td class="nump">229,627<span></span>
</td>
<td class="nump">333,485<span></span>
</td>
<td class="nump">231,520<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SupplementalCashFlowInformationAbstract', window );"><strong>Supplemental disclosures of cash flow information</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestPaidNet', window );">Interest</a></td>
<td class="nump">40,278<span></span>
</td>
<td class="nump">25,976<span></span>
</td>
<td class="nump">26,324<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxesPaidNet', window );">Income taxes, net of refunds</a></td>
<td class="nump">69,076<span></span>
</td>
<td class="nump">39,241<span></span>
</td>
<td class="nump">37,072<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NoncashInvestingAndFinancingItemsAbstract', window );"><strong>Supplemental disclosure of noncash activities</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_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability', window );">Right-of-use assets obtained in exchange for operating lease obligations</a></td>
<td class="nump">32,677<span></span>
</td>
<td class="nump">38,084<span></span>
</td>
<td class="nump">26,001<span></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_ibp_NoncashActivitiesReleaseOfIndemnificationOfAcquisitionRelatedDebt', window );">Release of indemnification of acquisition-related debt</a></td>
<td class="nump">980<span></span>
</td>
<td class="nump">2,036<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_FinanceLeaseObligationsIncurred', window );">Property and equipment obtained in exchange for finance lease obligations</a></td>
<td class="nump">6,241<span></span>
</td>
<td class="nump">2,735<span></span>
</td>
<td class="nump">1,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_BusinessCombinationConsiderationTransferredLiabilitiesIncurred', window );">Seller obligations in connection with acquisition of businesses</a></td>
<td class="nump">26,978<span></span>
</td>
<td class="nump">29,169<span></span>
</td>
<td class="nump">14,086<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CapitalExpendituresIncurredButNotYetPaid', window );">Unpaid purchases of property and equipment included in accounts payable</a></td>
<td class="nump">$ 935<span></span>
</td>
<td class="nump">$ 441<span></span>
</td>
<td class="nump">$ 1,013<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ibp_FinanceLeaseObligationsIncurred">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 during the period in finance lease obligations due to entering into new capital 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;">ibp_FinanceLeaseObligationsIncurred</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ibp_NoncashActivitiesReleaseOfIndemnificationOfAcquisitionRelatedDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Noncash Activities, Release Of Indemnification Of Acquisition Related Debt</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ibp_NoncashActivitiesReleaseOfIndemnificationOfAcquisitionRelatedDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ibp_ProceedsFromTerminationOfDerivativeInstruments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Proceeds from Termination of Derivative Instruments</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ibp_ProceedsFromTerminationOfDerivativeInstruments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ibp_SurrenderOfCommonStockAwardsByEmployees">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Surrender of common stock awards by employees.</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;">ibp_SurrenderOfCommonStockAwardsByEmployees</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AmortizationOfFinancingCostsAndDiscounts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense attributable to debt discount (premium) and debt issuance costs.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69E<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495743-112612<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124435984&amp;loc=d3e28555-108399<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495355-112611<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69F<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495745-112612<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AmortizationOfFinancingCostsAndDiscounts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16225-109274<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_BusinessCombinationConsiderationTransferredLiabilitiesIncurred">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 incurred by the acquirer as part of consideration transferred in a business combination.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 30<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=126966197&amp;loc=d3e6578-128477<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 25<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=6911189&amp;loc=d3e6405-128476<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=126975305&amp;loc=d3e6927-128479<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 30<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=126966197&amp;loc=d3e6613-128477<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 value of a contingent consideration liability, including, but not limited to, differences arising upon settlement.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=126975305&amp;loc=d3e7008-128479<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_CapitalExpendituresIncurredButNotYetPaid">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Future cash outflow to pay for purchases of fixed assets that have occurred.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=126999549&amp;loc=d3e4332-108586<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=126999549&amp;loc=d3e4313-108586<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=126999549&amp;loc=d3e4304-108586<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CapitalExpendituresIncurredButNotYetPaid</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3521-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3044-108585<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=126999549&amp;loc=SL98516268-108586<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 230<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=123444420&amp;loc=d3e33268-110906<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3521-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxesAndTaxCredits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred income tax expense (benefit) and income tax credits.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxesAndTaxCredits</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DepreciationAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The current period expense charged against earnings on long-lived, physical assets not used in production, and which are not intended for resale, to allocate or recognize the cost of such assets over their useful lives; or to record the reduction in book value of an intangible asset over the benefit period of such asset; or to reflect consumption during the period of an asset that is not used in production.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DepreciationAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeasePrincipalPayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow for principal payment on finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918643-209977<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeasePrincipalPayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GainLossOnDispositionOfAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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, excluding 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://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=126905981&amp;loc=d3e2443-110228<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=109226691&amp;loc=d3e2941-110230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainLossOnDispositionOfAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income, net of any cash received during the current period as refunds for the overpayment of taxes.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126999549&amp;loc=d3e4297-108586<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_IncreaseDecreaseInIncomeTaxes">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, and in deferred and other tax liabilities and 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInIncomeTaxes</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInInventories</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOperatingCapitalAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOtherOperatingAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in operating assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOtherOperatingAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOtherOperatingLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in operating liabilities classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOtherOperatingLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126999549&amp;loc=d3e4297-108586<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 17<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3367-108585<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3536-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3521-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3521-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3536-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3521-108585<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_NoncashInvestingAndFinancingItemsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NoncashInvestingAndFinancingItemsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense for right-of-use asset 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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherNoncashIncomeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsForProceedsFromOtherInvestingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash (inflow) outflow from investing activities classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3213-108585<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3179-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsForProceedsFromOtherInvestingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_PaymentsOfDebtIssuanceCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow paid to third parties in connection with debt origination, which will be amortized over the remaining maturity period of the associated long-term debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsOfDebtIssuanceCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsOfDividends">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cash outflow in the form of capital distributions and dividends to common shareholders, preferred shareholders and noncontrolling interests.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsOfDividends</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsOfMergerRelatedCostsFinancingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow for financing costs associated with business combinations.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsOfMergerRelatedCostsFinancingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the acquisition of a business, net of the cash acquired from the purchase.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3213-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquireInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the purchase of all investments (debt, security, other) during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3213-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquireInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3213-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ProceedsFromIssuanceOfMediumTermNotes">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash inflow from a debt funding received on a regular basis with maturities ranging from 5-10 years.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromIssuanceOfMediumTermNotes</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ProceedsFromNotesPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash inflow from a borrowing supported by a written promise to pay an obligation.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromNotesPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3179-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ProceedsFromSaleOfShortTermInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 sales of all investments, including securities and other assets, having ready marketability and intended by management to be liquidated, if necessary, within the current operating cycle. Includes cash flows from securities classified as trading securities that were acquired for reasons other than sale in the short-term.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3179-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromSaleOfShortTermInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669619-108580<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (a)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3000-108585<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 19<br> -URI https://asc.fasb.org/extlink&amp;oid=126929396&amp;loc=SL4569616-111683<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 23: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669625-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 29: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 31: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4J<br> -URI https://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4591551-111686<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4K<br> -URI https://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4591552-111686<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProfitLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProvisionForDoubtfulAccounts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expense (reversal of expense) for expected credit loss on accounts receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124255953&amp;loc=SL82919249-210447<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProvisionForDoubtfulAccounts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RepaymentsOfMediumTermNotes">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 pay off borrowing used to receive debt funding on a regular basis with maturities ranging from 5-10 years.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RepaymentsOfMediumTermNotes</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_RepaymentsOfOtherLongTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 the payment of debt classified as other, maturing after one year or the operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RepaymentsOfOtherLongTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI https://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WriteOffOfDeferredDebtIssuanceCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Write-off of amounts previously capitalized as debt issuance cost in an extinguishment of debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.8)<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WriteOffOfDeferredDebtIssuanceCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>23
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687982141264">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>CONSOLIDATED STATEMENTS OF CASH FLOWS (Parenthetical) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract', window );"><strong>Cash flows from investing activities</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAcquiredFromAcquisition', window );">Cash acquired, net</a></td>
<td class="nump">$ 523<span></span>
</td>
<td class="nump">$ 1,707<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_CashAcquiredFromAcquisition">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash inflow associated with the acquisition of business during the period (for example, cash that was held by the acquired 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3179-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAcquiredFromAcquisition</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>24
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140688060503840">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Organization<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_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 );">Organization</a></td>
<td class="text">ORGANIZATION<div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Installed Building Products (&#8220;IBP&#8221;), a Delaware corporation formed on October 28, 2011, and its wholly-owned subsidiaries (collectively referred to as the &#8220;Company,&#8221; and &#8220;we,&#8221; &#8220;us&#8221; and &#8220;our&#8221;) primarily install insulation, waterproofing, fire-stopping, fireproofing, garage doors, rain gutters, window blinds, shower doors, closet shelving and mirrors and other products for residential and commercial builders located in the continental United States. The Company operates in over 230 locations and its corporate office is located in Columbus, Ohio.</span></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In the first quarter of 2022, we realigned our operating segments to reflect recent changes in our business. We have three operating segments consisting of our Installation, Manufacturing and Distribution operations. See Note 11, Information on Segments, for further information.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The vast majority of our sales originate from our one reportable segment, Installation. Substantially all of our Installation segment sales are derived from the service-based installation of various products in the residential new construction, repair and remodel and commercial construction end markets from our national network of branch locations. Each of our installation branches has the capacity to serve all of our end markets. See Note 3, Revenue Recognition, for information on our revenues by product and end market.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -URI https://asc.fasb.org/topic&amp;trid=2122149<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -URI https://asc.fasb.org/topic&amp;trid=2197479<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>25
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687980156976">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Significant Accounting Policies<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_AccountingPoliciesAbstract', window );"><strong>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SignificantAccountingPoliciesTextBlock', window );">Significant Accounting Policies</a></td>
<td class="text">SIGNIFICANT ACCOUNTING POLICIES<div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Basis of Presentation and Principles of Consolidation</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We prepare our consolidated financial statements in accordance with accounting principles generally accepted in the United States of America (&#8220;U.S. GAAP&#8221;). The accompanying consolidated financial statements include all of our wholly-owned subsidiaries. All intercompany accounts and transactions have been eliminated.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Reclassifications</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The change in reportable segments described in Note 1, Organization and Note 11, Information on Segments, requires certain prior year disclosures in Note 3, Revenue Recognition and Note 7, Goodwill and Intangibles to be recast to conform to the current year presentation. We expanded the presentation of our administrative operating expenses to separately present our gains on acquisition earnouts in the Consolidated Statements of Operation and Comprehensive Income in this Form 10-K. This expansion resulted in the presentation of $1.0&#160;million and $0.2&#160;million of gains on acquisition earnouts for the years ended December 31, 2021 and 2020, respectively, and a corresponding increase in administrative operating expenses as compared to the Form 10-K for the previous two years.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Use of Estimates</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Preparation of the consolidated financial statements in conformity with U.S. GAAP requires management to make estimates, judgements and assumptions that affect the reported amounts in the consolidated financial statements and accompanying notes. Management believes the accounting estimates are appropriate and reasonably determined; however, due to the inherent uncertainties in making these estimates, actual amounts could differ from such estimates.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Cash and Cash Equivalents</span></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We consider all highly-liquid investments purchased with original term to maturity of three months or less to be cash equivalents. Substantially all cash is held in banks providing FDIC coverage of $0.25 million per depositor.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Revenue and Cost Recognition</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our revenues are disaggregated between our Installation reportable segment and our Other category which includes our Manufacturing and Distribution operating segments. The reconciliation of the disaggregation of revenue is included in Note 11, Information on Segments. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Revenues for our Installation operating segment are derived primarily through contracts with customers whereby we install insulation and other complementary building products and are recognized when control of the promised goods or services is transferred to our customers, in an amount that reflects the consideration we expect to be entitled to in exchange for those goods or services. We account for a contract when it has approval and commitment from both parties, the rights of the parties are identified, payment terms are identified, the contract has commercial substance and collectability of consideration is probable. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We offer assurance-type warranties on certain of our installed products and services that do not represent a separate performance obligation and, as such, do not impact the timing or extent of revenue recognition.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For contracts that are not complete at the reporting date, we recognize revenue over time utilizing a cost-to-cost input method as we believe this represents the best measure of when goods and services are transferred to the customer. When this method is used, we estimate the costs to complete individual contracts and record as revenue that portion of the total contract price that is considered complete based on the relationship of costs incurred to date to total anticipated costs. Under the cost-to-cost method, the use of estimated costs to complete each contract is a significant variable in the process of determining recognized revenue, requires judgment and can change throughout the duration of a contract due to contract modifications and other factors impacting job completion. The costs of earned revenue include all direct material and labor costs and those indirect costs related to contract performance, such as indirect labor, supplies, tools and repairs. Provisions for estimated losses on uncompleted contracts are made in the period in which such losses are determined.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our long-term contracts can be subject to modification to account for changes in contract specifications and requirements. We consider contract modifications to exist when the modification either creates new, or changes the existing, enforceable rights and obligations. Most of our contract modifications are for goods or services that are not distinct from the existing contract due to the significant integration service provided in the context of the contract and are accounted for as if they were part of that existing contract. The effect of a contract modification on the transaction price and our measure of progress for the performance obligation to which it relates, is recognized as an adjustment to revenue (either as an increase in or a reduction of revenue) on a cumulative catch-up basis.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Payment terms typically do not exceed 30 days for short-term contracts and typically do not exceed 60 days for long-term contracts with customers. All contracts are billed either contractually or as work is performed. Billing on our long-term contracts occurs primarily on a monthly basis throughout the contract period whereby we submit invoices for customer payment based on actual or estimated costs incurred during the billing period. On certain of our long-term contracts the customer may withhold payment on an invoice equal to a percentage of the invoice amount, which will be subsequently paid after satisfactory completion of each installation project. This amount is referred to as retainage and is common practice in the construction industry, as it allows for customers to ensure the quality of the service performed prior to full payment. Retainage receivables are classified as current or long-term assets based on the expected time to project completion. See "Accounts Receivable" below for further discussion of our retainage receivables.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Revenues for our Distribution and Manufacturing operating segments included in the Other category are accounted for on a point-in-time basis when the sale occurs, adjusted accordingly for any return provisions. Sales taxes are not included in revenue as we act as a conduit for collecting and remitting sales taxes to the appropriate government authorities. The point-in-time recognition is when we transfer the promised products to the customer and the customer obtains control of the products depending upon the agreed upon terms in the contract. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We generally expense all sales commissions and other incremental costs of obtaining a contract when incurred because the amortization period is usually one year or less. Sales commissions are recorded within selling expenses on the Consolidated Statements of Operations and Comprehensive Income.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We do not disclose the value of unsatisfied performance obligations for contracts with an original expected length of one year or less.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Derivative Instruments and Hedging Activities</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We record all derivatives on the balance sheet at fair value. The accounting for changes in the fair value of derivatives depends on the intended use of the derivative, whether we have elected to designate a derivative in a hedging relationship and apply hedge accounting and whether the hedging relationship has satisfied the criteria necessary to apply hedge accounting. Derivatives designated and qualifying as a hedge of the exposure to variability in expected future cash flows, or other types of forecasted transactions, are considered cash flow hedges. Hedge accounting generally provides for the matching of the timing of gain or loss recognition on the hedging instrument with the recognition of the earnings effect of the hedged forecasted transactions in a cash flow hedge. We may enter into derivative contracts that are intended to economically hedge certain of our risks, even though hedge accounting does not apply or we elect not to apply hedge accounting. See Note 12, Derivatives and Hedging Activities, for additional information on our accounting policy for derivative instruments and hedging activities.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Business Combinations</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The purchase price for business combinations is allocated to the estimated fair values of acquired tangible and intangible assets, including goodwill and assumed liabilities, where applicable. Additionally, we recognize customer relationships, trademarks and trade names, backlog and non-competition agreements as identifiable intangible assets. These assets are recorded at fair value as of the transaction date. The fair value of these intangibles is determined using either the income approach or the market approach using current industry information which involves significant unobservable inputs (Level 3 inputs). These inputs include projected sales, margin and tax rate. Contingent consideration is recorded at fair value at the acquisition date and any subsequent adjustments to these fair values would be recorded in earnings.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At times, the total purchase price for a business combination could be less than the estimated fair values of acquired tangible and intangible assets. In these cases, we record a gain on bargain purchase within other expenses in the Consolidated Statements of Operations and Comprehensive Income rather than goodwill in accordance with U.S. GAAP.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Accounts Receivable</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We account for trade receivables based on amounts billed to customers. Past due receivables are determined based on contractual terms. We do not accrue interest on any of our trade receivables.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Retainage receivables represent the amount retained by our customers to ensure the quality of the installation and is received after satisfactory completion of each installation project. Management regularly reviews aging of retainage receivables and changes in payment trends and records an allowance when collection of amounts due are considered at risk. Amounts retained by project owners under construction contracts and included in accounts receivable were $49.8 million and $40.5 million as of December&#160;31, 2022 and 2021, respectively. In addition, as of December&#160;31, 2022 and 2021, $1.0 million and $0.5 million of long-term retainage receivables were recorded in other non-current assets, respectively.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accounts receivable are presented net of our allowance for credit losses. Credit losses are measured according to ASC 326, &#8220;Financial Instruments &#8211; Credit Losses: Measurement of Credit Losses on Financial Instruments.&#8221; We consider multiple factors to estimate expected credit losses for financial instruments, including trade receivables, retainage receivables and contract assets (unbilled receivables). </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our expected loss allowance methodology for accounts receivable is developed using historical losses, current economic conditions and current credit quality. We perform ongoing evaluations of our existing and potential customer&#8217;s creditworthiness. See Note 4, Credit Losses, for additional information.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Concentration of Credit Risk</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Credit risk is our risk of financial loss from the non-performance of a contractual obligation on the part of our counterparty. Such risk arises principally from our receivables from customers and cash and bank balances. Substantially all of our trade accounts receivable are from entities engaged in residential and commercial construction. We perform periodic credit evaluations of our customers&#8217; financial condition. The general credit risk of our counterparties is not considered to be significant. In addition, no individual customer made up more than 3% of accounts receivable or 5% of net revenue for the years ended December&#160;31, 2022, 2021 and 2020.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Inventories</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inventories consist of insulation, waterproofing materials, fireproofing and fire-stopping materials, garage doors, rain gutters, window blinds, shower doors, mirrors, closet shelving and other products. We value inventory at each balance sheet date to ensure that it is carried at the lower of cost or net realizable value with cost determined using the first-in, first-out (&#8220;FIFO&#8221;) method. Net realizable value is the estimated selling price in the ordinary course of business, less reasonably predictable cost of completion, disposal and transportation. As of December&#160;31, 2022 and 2021, substantially all inventory was finished goods. Inventory provisions are recorded to reduce inventory to the lower of cost or net realizable value for obsolete or slow moving inventory based on assumptions about future demand and marketability of products, the impact of new product introductions, inventory levels and turns, product spoilage, and specific identification of items such as product discontinuance, engineering/material changes, or regulatory-related changes.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Property and Equipment</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Property and equipment are stated at cost, less accumulated depreciation. We provide for depreciation and amortization of property and equipment using the straight-line method over the expected useful lives of the assets. Expected useful lives of property and equipment vary but generally are the shorter of lease life or five years for vehicles and leasehold improvements, <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTE2NTc_a977f052-cdfa-4287-b1c2-2c13ccbb2ec3">three</span> to five years for furniture, fixtures and equipment and 30 years for buildings.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Major renewals and improvements are capitalized. Maintenance, repairs and minor renewals are expensed as incurred. When assets are retired or otherwise disposed of, the related cost and accumulated depreciation are removed from the accounts and any resulting gain or loss is recorded. These assets are regularly review for possible impairment if there are indicators that their carrying amounts are not recoverable.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Goodwill</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Goodwill results from business combinations and represents the excess of the purchase price over the fair value of acquired tangible assets and liabilities and identifiable intangible assets. Annually, on October 1, or if conditions indicate an earlier review is necessary, we perform our goodwill impairment testing to determine if it is more likely than not that the fair value of a reporting unit is less than its carrying amount. As described in Note 1, Organization and Note 11, Information on Segments, we realigned our operating segments in 2022 to reflect recent changes in our business. We have determined that our reporting units are at the operating segment level.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The estimate of a reporting unit&#8217;s fair value is determined by weighting a discounted cash flow model and a market-related model using current industry information that involve significant unobservable inputs (Level 3 inputs). In determining the estimated future cash flow, we consider and apply certain estimates and judgments using our historical knowledge, external valuation experts, current market trends and other information. These estimates and judgements include current and projected future levels of income based on management&#8217;s plans, business trends, prospects, market and economic conditions and market-participant considerations. An impairment charge is recognized for the amount by which the carrying value exceeds the reporting unit's fair value, not to exceed the total amount of goodwill allocated to each reporting unit. </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Impairment of Other Intangible and Long-Lived Assets</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Other intangible assets consist of customer relationships, backlog, non-competition agreements and business trademarks and trade names. Amortization of finite lived intangible assets is recorded to reflect the pattern of economic benefits based on projected revenues over their respective estimated useful lives (customer relationships &#8211; <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTM1NTU_ef0ebe6a-c7b3-48eb-8f8b-5ddf39ff0efb">eight</span> to 15 years, backlog &#8211; 12 to 36 months, non-competition agreements &#8211; <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTM2MTQ_9876c3d1-52c9-4958-8348-18d296904de3">one</span> to five years and business trademarks and trade names &#8211; <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTM2NjU_f0c11354-8793-4523-b059-4ab1963f4cfb">two</span> to 15 years). We do not have any indefinite-lived intangible assets other than goodwill.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We review long-lived assets and intangible assets whenever events or changes in circumstances indicate that the carrying value of an asset may not be recoverable. An impairment loss is recognized when estimated future cash flows expected to result from the use of an asset and its eventual disposition are less than its carrying amount. When impairment is identified, the carrying amount of the asset is reduced to its estimated fair value. Assets to be disposed of are recorded at the lower of net book value or fair net realizable value less cost to sell at the date management commits to a plan of disposal. There was no impairment loss for the years ended December&#160;31, 2022, 2021, and 2020.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Other Liabilities</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our workers&#8217; compensation insurance program, for a significant portion of our business, is considered a high deductible program whereby we are responsible for the cost of claims under approximately $0.8 million. Our general liability insurance program is considered a high retention program whereby we are responsible for the cost of claims up to approximately $5.0 million, subject to an aggregate cap of $10.0 million. Our vehicle liability insurance program is considered a high deductible program whereby we are responsible for the cost of claims under approximately $1.0 million. In each case, if we do not pay these claims, our insurance carriers are required to make these payments to the claimants on our behalf. The liabilities represent our best estimate of our costs, using generally accepted actuarial reserving methods, of the ultimate obligations for reported claims plus those incurred but not reported for all claims incurred through December&#160;31, 2022 and 2021. We establish case reserves for reported claims using case-basis evaluation of the underlying claims data and we update as information becomes known. We regularly monitor the potential for changes in estimates, evaluate our insurance accruals and adjust our recorded provisions.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The assumptions underlying the ultimate costs of existing claim losses are subject to a high degree of unpredictability, which can affect the liability recorded for such claims. For example, variability in inflation rates of health care costs inherent in workers&#8217; compensation claims can affect the ultimate costs. Similarly, changes in legal trends and interpretations, as well as a change in the nature and method of how claims are settled, can affect ultimate costs. Our estimates of liabilities incurred do not anticipate significant changes in historical trends for these variables and any changes could have a considerable effect on future claim costs and currently recorded liabilities.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We carry insurance for a number of risks, including, but not limited to, workers&#8217; compensation, general liability, vehicle liability, property and our obligation for employee-related health care benefits. Liabilities relating to claims associated with these risks are estimated by considering historical claims experience, including frequency, severity, demographic factors and other actuarial assumptions. In estimating our liability for such claims, we periodically analyze our historical trends, including loss development, and apply appropriate loss development factors to the incurred costs associated with the claims with the assistance of external actuarial consultants. While we do not expect the amounts ultimately paid to differ significantly from our estimates, our reserves and corresponding expenses could be affected if future claim experience differs significantly from historical trends and actuarial assumptions.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Treasury Stock</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Repurchases of our common stock are recorded at cost and classified as Treasury Stock on our Consolidated Balance Sheets. As of December&#160;31, 2022, we have not re-issued any of our treasury stock, but may do so periodically. </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Advertising Costs</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Advertising costs are generally expensed as incurred. Advertising expense was approximately $4.9 million, $4.6 million, and $3.9 million for the years ended December&#160;31, 2022 2021 and 2020, respectively. These costs are included in selling expense on the Consolidated Statements of Operations and Comprehensive Income.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Deferred Financing Costs</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Deferred financing costs and debt issuance costs combined, totaling $10.2 million and $11.4 million, net of accumulated amortization as of December&#160;31, 2022 and 2021, respectively, are amortized over the term of the related debt on a straight-line basis which approximates the effective interest method. The deferred financing costs are included in other non-current assets while the debt issuance costs are included in long-term debt on the Consolidated Balance Sheets as of December&#160;31, 2022 and 2021, respectively. The related amortization expense of these costs combined was $1.9 million, $1.4 million and $1.3 million and is included in interest expense, net on the Consolidated Statements of Operations and Comprehensive Income for the years ended December&#160;31, 2022, 2021 and 2020, respectively.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We wrote off $0.2 million in previously capitalized loan costs during the year ended December&#160;31, 2021. In addition, we expensed loan costs of approximately $1.6 million for the year ended December&#160;31, 2021 associated with our credit facilities because they did not meet the requirements for capitalization. We had no such write offs or expenses during the years ended December&#160;31, 2022 or 2020. These amounts are included in interest expense, net on the Consolidated Statements of Operations and Comprehensive Income. We also had $0.7 million and $7.5 million in new costs associated with the debt-related financing transactions incurred during the years ended December&#160;31, 2022 and 2021. The deferred financing costs are included in other non-current assets while the debt issuance costs are included in long-term debt on the Consolidated Balance Sheets. These costs are amortized over the term of the related debt on a straight-line basis which approximates the effective interest method.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For additional information on our debt instruments, see Note 8, Long-Term Debt.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Leases</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Leases are measured according to ASC 842, &#8220;Leases,&#8221; which requires substantially all leases, with the exception of leases with a term of one year or less, to be recorded as a lease liability measured as the present value of the future lease payments with a corresponding right-of-use asset. ASC 842 also requires disclosures designed to give financial statement users information on the amount, timing and uncertainty of cash flows. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We determine if an arrangement is a lease at inception. Most of our operating leases do not provide an implicit rate so we use our incremental borrowing rate based on the information available at the commencement date to determine the present value of future payments. Leases with an initial term of 12 months or less are not recorded on the balance sheet as we recognize lease expense for these leases on a straight-line basis over the lease term. We elect to not separate lease components from non-lease </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">components for all fixed payments, and we exclude variable lease payments in the measurement of right-of-use assets and lease obligations.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Most lease agreements include one or more renewal options, all of which are at our sole discretion. Generally, future renewal options that have not been executed as of the balance sheet date are excluded from right-of-use assets and related lease liabilities. Certain leases also include options to purchase the leased property. The depreciable life of assets and leasehold improvements are limited by the expected lease term, unless there is a transfer of title or purchase option reasonably certain of exercise. Some of our vehicle lease agreements include provisions for residual value guarantees and any expected payment is included in our lease liability. </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Share-Based Compensation</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our share-based compensation program is designed to attract and retain employees while also aligning employees&#8217; interests with the interests of our stockholders. Restricted stock awards are periodically granted to certain employees, officers and non-employee members of our board of directors under the stockholder-approved 2014 Omnibus Incentive Plan.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Certain of our stock awards are deemed to be equity-based with a service condition and do not contain a market or performance condition with the exception of performance-based awards granted to certain officers and performance-based stock units. Fair value of the non-performance-based awards to employees and officers is measured at the grant date and amortized to expense over the vesting period of the awards using the straight-line attribution method for all service-based awards with a graded vesting feature. This fair value is reduced by assumed forfeitures and adjusted for actual forfeitures until vesting. We also issue performance-based stock awards to certain officers under our 2014 Omnibus Incentive Plan. The performance-based compensation expense is recorded over the requisite service period using the graded-vesting method for the entire award. Performance-based stock awards are accounted for at fair value at date of grant. We also periodically grant performance-based stock units to certain employees under the stockholder-approved 2014 Omnibus Incentive Plan. These units convert to shares upon meeting time- and performance-based requirements.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Compensation expense for performance-based stock units is recorded based on an assessment each reporting period of the probability that certain performance goals will be met during the contingent vesting period. If performance goals are not probable to occur, no compensation expense will be recognized. If performance goals that were previously deemed probable are not or are not expected to be met, the previously recognized compensation cost related to such performance goals will be reversed. Employees and officers are subject to tax at the vesting date based on the market price of the shares on that date, or on the grant date if an election is made.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Income Taxes</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We account for income taxes using the asset and liability method. Under this method, the amount of taxes currently payable or refundable are accrued and deferred tax assets and liabilities are recognized for the estimated future tax consequences of temporary differences that currently exist between the tax basis and financial reporting basis of our assets and liabilities.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Valuation allowances are established against deferred tax assets when it is more likely than not that the realization of those deferred tax assets will not occur. In evaluating our ability to recover our deferred tax assets within the jurisdiction from which they arise, we consider all available positive and negative evidence, including scheduled reversals of deferred tax liabilities, the ability to produce future taxable income, prudent and feasible tax planning strategies and recent financial operations. In projecting future taxable income, we factor in historical results and changes in accounting policies and incorporate assumptions, including the amount of future federal and state pretax operating income, the reversal of temporary differences and the implementation of feasible and prudent tax planning strategies. These assumptions require significant judgment about the forecasts of future taxable income and are consistent with the plans and estimates we use to manage the underlying businesses.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Deferred tax assets and liabilities are measured using the enacted tax rates in effect in the years when those temporary differences are expected to reverse. The effect on deferred taxes from a change in tax rate is recognized through operations in the period that includes the enactment date of the change. Changes in tax laws and rates could also affect recorded deferred tax assets and liabilities in the future.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A tax benefit from an uncertain tax position may be recognized when it is more likely than not that the position will be sustained upon examination, including resolutions of any related appeals or litigation processes, based on the technical merits. Income tax positions must meet a more likely than not recognition threshold to be recognized.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We recognize tax liabilities for uncertain tax positions and adjust these liabilities when our judgment changes as a result of the evaluation of new information not previously available. Liabilities related to uncertain tax positions are recorded in other long-term liabilities on the Consolidated Balance Sheets. Due to the complexity of some of these uncertainties, the ultimate resolution may result in a payment that is materially different from the current estimate of the tax liabilities. These differences will be reflected as increases or decreases to income tax expense and the effective tax rate in the period in which the new information becomes available. Interest and penalties related to unrecognized tax benefits are recognized within income tax expense in the Consolidated Statements of Operations and Comprehensive Income. Accrued interest and penalties are recognized in other current liabilities on the Consolidated Balance Sheets.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our income tax expense, deferred tax assets and liabilities and reserves for unrecognized tax benefits reflect management&#8217;s best assessment of estimated future taxes to be paid. We are subject to income taxes in the United States, which includes numerous state and local jurisdictions. Significant judgments and estimates are required in determining the income tax expense, deferred tax assets and liabilities and the reserve for unrecognized tax benefits.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Estimated Fair Value of Financial Instruments</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See Note 10, Fair Value Measurements, for related accounting policies.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Recently Adopted Accounting Pronouncements</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:18.783%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.420%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:61.329%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Standard</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Effective&#160;Date</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Adoption</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ASU 2022-06, Reference Rate Reform (Topic 848): Deferral of the Sunset Date of Topic 848</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 21, 2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">This pronouncement amends ASU 2020-04 which provides temporary optional expedients and exceptions to certain transactions affected by reference rate reform. ASU 2022-06 defers the sunset date of applying ASU 2020-04 to December 31, 2024. We continue to evaluate whether to apply the optional guidance on an ongoing basis but do not expect it to have a material impact on our consolidated financial statements.</span></div></td></tr></table></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Recently Issued Accounting Pronouncements Not Yet Adopted</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We are currently evaluating the impact of certain ASUs on our Consolidated Financial Statements or Notes to Consolidated Financial Statements, which are described below:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:21.560%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:22.438%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.391%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:29.459%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Standard</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Description</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Effective Date</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Effect&#160;on&#160;the&#160;financial&#160;<br/>statements&#160;or other significant matters</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ASU 2021-08, Business Combinations (Topic 805): Accounting for contract assets and contract liabilities from contracts with customers </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">This pronouncement amends Topic 805 to require an acquirer to account for revenue contracts in a business combination in accordance with Topic 606 as if the acquirer had originated the contracts. </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Annual periods beginning after December 15, 2022, including interim periods therein. Early adoption is permitted.</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">The Company will adopt and apply the guidance as prescribe by this ASU to future business combinations that occur after the effective date. This will not materially affect our consolidated financial statements.</span></td></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SignificantAccountingPoliciesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for all significant accounting policies of the reporting entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=126899994&amp;loc=d3e18726-107790<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -URI https://asc.fasb.org/topic&amp;trid=2122369<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SignificantAccountingPoliciesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>26
<FILENAME>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140688060578192">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue Recognition<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_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 Recognition</a></td>
<td class="text">REVENUE RECOGNITION<div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We disaggregate our revenue from contracts with customers for our Installation segment by end market and product, as we believe it best depicts how the nature, amount, timing and uncertainty of our revenue and cash flows are affected by economic factors. Revenues for the Other category are presented net of intercompany sales in the tables below. The following tables present our net revenues disaggregated by end market and product (in thousands):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:34.365%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.545%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.526%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.603%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.526%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.545%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.526%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.603%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.381%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.545%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.526%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.609%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="33" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Residential new construction</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,980,253&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">74&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,488,674&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">76&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,230,955&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">75&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Repair and remodel</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">151,761&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">121,594&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">106,486&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Commercial</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">381,543&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">331,275&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">298,920&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net revenue, Installation</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,513,557&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">94&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,941,543&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">99&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,636,361&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">99&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">156,287&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,107&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,864&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net revenue, as reported</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,669,844&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,968,650&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,653,225&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-top:5pt"><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:34.864%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.356%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.356%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.363%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="33" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Insulation</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,611,037&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">61&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,235,583&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">63&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,041,453&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">63&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Shower doors, shelving and mirrors</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">172,979&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">138,797&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">117,131&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Garage doors</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">168,800&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">108,675&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">93,516&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Waterproofing</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">124,808&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">130,924&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">122,962&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Rain gutters</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">114,022&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">86,406&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">62,672&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fireproofing/firestopping</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">63,498&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">59,381&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">49,648&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Window blinds</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">61,295&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">50,255&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">46,984&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other building products</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">197,118&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">131,522&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">101,995&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net revenues, Installation</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,513,557&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">94&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,941,543&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">99&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,636,361&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">99&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">156,287&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,107&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,864&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net revenue, as reported</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,669,844&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,968,650&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,653,225&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-top:12pt;padding-left:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">(1) </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net revenue for manufacturing operations are included in the Other category for all periods presented to conform with our change in composition of operating segments.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Contract Assets and Liabilities</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our contract assets consist of unbilled amounts typically resulting from sales under contracts when the cost-to-cost method of revenue recognition is utilized and revenue recognized, based on costs incurred, exceeds the amount billed to the customer. Our contract assets are recorded in other current assets in our Consolidated Balance Sheets. Our contract liabilities consist of customer deposits and billings in excess of revenue recognized, based on costs incurred and are included in other current liabilities in our Consolidated Balance Sheets.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Contract assets and liabilities related to our uncompleted contracts and customer deposits were as follows (in thousands):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:74.777%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.595%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.598%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Contract assets</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29,431&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,679&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Contract liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(18,884)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(14,153)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Uncompleted contracts were as follows (in thousands):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:74.777%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.595%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.598%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Costs incurred on uncompleted contracts</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">273,788&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">206,050&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Estimated earnings</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">114,781&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">106,163&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">388,569&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">312,213&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: Billings to date</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">368,009&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">285,978&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net under billings</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,560&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,235&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net under billings were as follows (in thousands):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:74.777%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.595%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.598%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Costs and estimated earnings in excess of billings on uncompleted contracts (contract assets)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29,431&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,679&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Billings in excess of costs and estimated earnings on uncompleted contracts (contract liabilities)</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(8,871)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6,444)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net under billings</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,560&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,235&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The difference between contract assets and contract liabilities as of December&#160;31, 2022 compared to December&#160;31, 2021 is primarily the result of timing differences between our performance of obligations under contracts and customer payments and billings. During the year ended December&#160;31, 2022, we recognized $13.7 million of revenue that was included in the contract liability balance at December&#160;31, 2021. We did not recognize any impairment losses on our receivables and contract assets during the years ended December&#160;31, 2022 and 2021.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Remaining performance obligations represent the transaction price of contracts for which work has not been performed and excludes unexercised contract options and potential modifications. As of December&#160;31, 2022, the aggregate amount of the transaction price allocated to remaining uncompleted contracts was $162.3 million. We expect to satisfy remaining performance obligations and recognize revenue on substantially all of these uncompleted contracts over the next 18 months.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -URI https://asc.fasb.org/topic&amp;trid=49130388<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130551-203045<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130556-203045<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130554-203045<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130550-203045<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130554-203045<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130554-203045<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130554-203045<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130558-203045<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130554-203045<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>27
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687980079536">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Credit Losses<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_CreditLossAbstract', window );"><strong>Credit Loss [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_AllowanceForCreditLossesTextBlock', window );">Credit Losses</a></td>
<td class="text">CREDIT LOSSES<div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We account for credit losses under ASC 326 using an expected credit loss impairment model for financial instruments, including trade receivables, retainage receivables and contract assets (unbilled receivables). We consider information such as historical experience, present economic conditions and other relevant factors management considers relevant to estimate expected credit losses. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Upon adoption of ASC 326 on January 1, 2020 under the modified retrospective approach, we recorded a cumulative effect adjustment to retained earnings of $1.2 million, net of $0.4 million of income taxes, on the opening consolidated balance sheet as of January 1, 2020. The adoption of the credit loss standard had no impact to cash from or used in operating, financing or investing activities on our consolidated cash flow statements.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Changes in our allowance for credit losses were as follows (in thousands):</span></div><div><span><br/></span></div><div style="text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:67.690%"><tr><td style="width:1.0%"/><td style="width:83.565%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.235%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">January 1, 2020</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,878&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cumulative effect of change in accounting principle</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,600&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current period provision</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,444&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Recoveries collected and additions</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">503&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amounts written off</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,636)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2020</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,789&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current period provision</span></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,227&#160;</span></td><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Recoveries collected and additions</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">574&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amounts written off</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,873)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2021</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,717&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current period provision</span></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,129&#160;</span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Recoveries collected and additions</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">334&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amounts written off</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,631)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2022</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,549&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></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_AllowanceForCreditLossesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 allowance for credit losses.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -URI https://asc.fasb.org/topic&amp;trid=2196771<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForCreditLossesTextBlock</td>
</tr>
<tr>
<td style="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_CreditLossAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CreditLossAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance 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>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687980099232">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cash and Cash Equivalents<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_InvestmentsDebtAndEquitySecuritiesAbstract', window );"><strong>Investments, Debt and Equity Securities [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_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock', window );">Cash and Cash Equivalents</a></td>
<td class="text">CASH AND CASH EQUIVALENTSCash and cash equivalents include highly liquid instruments with insignificant interest rate risk and original or remaining maturities of three months or less at the time of purchase. These instruments amounted to $191.9 million and $258.1 million as of December&#160;31, 2022 and 2021, respectively. See Note 10, Fair Value Measurements, for additional information.<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_InvestmentsDebtAndEquitySecuritiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_InvestmentsDebtAndEquitySecuritiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 investments in certain debt and equity 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 320<br> -URI https://asc.fasb.org/subtopic&amp;trid=2209399<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 946<br> -SubTopic 320<br> -URI https://asc.fasb.org/subtopic&amp;trid=2324412<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -URI https://asc.fasb.org/topic&amp;trid=2196928<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 940<br> -SubTopic 320<br> -URI https://asc.fasb.org/subtopic&amp;trid=2176304<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher SEC<br> -Name Regulation S-K (SK)<br> -Number 229<br> -Section 1403<br> -Paragraph (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;">us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock</td>
</tr>
<tr>
<td style="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>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140688060703856">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Property and Equipment<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentDisclosureTextBlock', window );">Property and Equipment</a></td>
<td class="text">PROPERTY AND EQUIPMENT<div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Property and equipment consisted of the following (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:76.315%"><tr><td style="width:1.0%"/><td style="width:64.608%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.757%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.569%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Land</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">108&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">108&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Buildings</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,901&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,901&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Leasehold improvements</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,620&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,935&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Furniture, fixtures and equipment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">74,175&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">64,556&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vehicles and equipment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">287,336&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">248,848&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">378,140&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">328,348&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: accumulated depreciation and amortization</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(259,366)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(222,415)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">118,774&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">105,933&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We recorded the following depreciation and amortization expense on our property and equipment, by income statement category (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:65.058%"><tr><td style="width:1.0%"/><td style="width:38.225%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.450%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.923%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.450%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.698%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.454%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of sales</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">44,410&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">40,938&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39,011&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Administrative</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,873&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,623&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,328&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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_PropertyPlantAndEquipmentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PropertyPlantAndEquipmentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=126982197&amp;loc=d3e99893-112916<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -URI https://asc.fasb.org/topic&amp;trid=2155823<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=126982197&amp;loc=SL120174063-112916<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126982197&amp;loc=d3e99779-112916<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>30
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140688060681008">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill and Intangibles<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_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 Intangibles</a></td>
<td class="text">GOODWILL AND INTANGIBLES<div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Goodwill</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In the first quarter of 2022, we changed our operating segments to align with recent changes in our business, resulting in three operating segments: Installation, Manufacturing and Distribution. Our Installation operating segment remains our one reportable segment and our Manufacturing and Distribution operating segments are combined into our Other category. We also determined that our reporting units are at the operating segment level. See Note 11, Information on Segments, for additional details about our change in segment structure. Prior to this change, goodwill was combined into one reporting unit as reflected in the table below for the year ended December 31, 2021. Effective January 1, 2022, we reassigned our goodwill to each of our three reporting units using a relative fair value approach. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The change in carrying amount of goodwill by reportable segment for the year ended December&#160;31, 2021 was as follows (in thousands):</span></div><div style="margin-top:9pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:81.502%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="width:1.0%"/><td style="width:16.298%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Installation</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill (gross) - January 1, 2021</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">286,874&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Business combinations</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">105,617&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other additions</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill (gross) - December 31, 2021</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">392,521&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accumulated impairment losses</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(70,004)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill (net) - December 31, 2021</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">322,517&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The change in carrying amount of goodwill by reportable segment after the assignment of goodwill as noted above for the year ended December&#160;31, 2022 was as follows (in thousands):</span></div><div style="margin-top:9pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:59.572%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.622%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Installation</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Consolidated</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill (gross) - January 1, 2022, after change in reporting units</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">331,782&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">60,739&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">392,521&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Business combinations</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,700&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,594&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">49,294&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other additions</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,744&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,744&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill (gross) - December 31, 2022</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">355,226&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">88,333&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">443,559&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accumulated impairment losses </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(70,004)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(70,004)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill (net) - December 31, 2022</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">285,222&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">88,333&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">373,555&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Other additions for the Installation segment included in the above table for the year ended December&#160;31, 2022 include an adjustment to a prior year acquisition still within its measurement period of approximately $1.6 million. We also made other minor adjustments for the allocation of certain acquisitions still under measurement which are included as other additions in the above table for the Installation segment for the years ended December&#160;31, 2022 and 2021. For additional information regarding changes to goodwill resulting from acquisitions, see Note 18, Business Combinations.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On October 1, 2022, our measurement date, we tested goodwill for impairment by reporting unit. We have the option to either assess goodwill for impairment by performing a qualitative assessment to determine whether it is more likely than not that the fair value is less than its carrying value, or to bypass the qualitative evaluation and perform a quantitative assessment. For the Installation and Manufacturing reporting units, we performed a one-step qualitative assessment in conformity with generally accepted accounting principles and determined that no impairment of goodwill was required. We considered the impacts of the COVID-19 pandemic in our analysis and concluded there were no associated impairment indicators. We performed a quantitative assessment for our Distribution reporting unit. This assessment determined the fair value of the distribution reporting unit by weighting a discounted cash flow model and a market-related model in consultation with an external valuation expert. Upon comparison of the calculated fair value to the carrying value of the reporting unit, it was determined no impairment of goodwill needed to be recognized for the year ended December&#160;31, 2022. In addition, no impairment of goodwill was recognized for the years ended December&#160;31, 2021 or 2020. Accumulated impairment losses included within the above table were incurred over multiple periods, with the latest impairment charge being recorded during the year ended December 31, 2010. These accumulated losses were assigned to our Installation reporting unit.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Intangibles, net</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table provides the gross carrying amount, accumulated amortization and net book value for each major class of intangibles (in thousands):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"/><td style="width:25.732%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.483%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.483%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.483%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.483%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.483%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.488%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="33" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross<br/>Carrying<br/>Amount</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accumulated<br/>Amortization</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net<br/>Book<br/>Value</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross<br/>Carrying<br/>Amount</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accumulated<br/>Amortization</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net<br/>Book<br/>Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amortized intangibles:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">338,050&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">145,722&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">192,328&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">292,113&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">113,849&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">178,264&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Covenants not-to-compete</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,899&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,086&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,813&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,717&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,471&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,246&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trademarks and tradenames</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">119,612&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39,638&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">79,974&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">103,007&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,623&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">70,384&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Backlog</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,815&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,457&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">358&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,724&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19,197&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,527&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">509,376&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">225,903&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">283,473&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">446,561&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">182,140&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">264,421&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div><span><br/></span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We recorded no intangible asset impairment loss for the years ended December&#160;31, 2022, 2021 and 2020.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The gross carrying amount of intangibles increased approximately $62.8 million and $130.1 million during the years ended December&#160;31, 2022 and 2021, respectively. Intangibles associated with business combinations accounted for approximately $65.1 million and $130.0 million of the increases during the years ended December&#160;31, 2022 and 2021, respectively. For the year ended December&#160;31, 2022, there was a measurement period adjustment for a prior year acquisition that decreased gross intangibles by $3.0 million. For more information, see Note 18, Business Combinations. Amortization expense on intangible assets totaled approximately $43.8 million, $37.1 million, and $28.5 million during the years ended December&#160;31, 2022, 2021 and 2020, respectively. Remaining estimated aggregate annual amortization expense is as follows (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:32.017%"><tr><td style="width:1.0%"/><td style="width:59.173%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:38.627%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2023</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">42,460&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2024</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">38,366&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,961&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29,010&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24,724&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">115,952&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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_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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -URI https://asc.fasb.org/topic&amp;trid=2144416<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>31
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140688060549856">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Long-Term Debt<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_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_LongTermDebtTextBlock', window );">Long-Term Debt</a></td>
<td class="text">LONG-TERM DEBT<div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Long-term debt consisted of the following (in thousands):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:72.730%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.621%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Senior Notes due 2028, net of unamortized debt issuance costs of $3,036 and $3,633, respectively</span></div></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">296,964&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">296,367&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Term loan, net of unamortized debt issuance costs of $5,767 and $6,735, respectively</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">489,233&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">493,265&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vehicle and equipment notes, maturing through December 2027; payable in various monthly installments, including interest rates ranging from 1.9% to 6.1% </span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">72,984&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">69,228&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Various notes payable, maturing through April 2025; payable in various monthly installments, including interest rates ranging from 2.0% to 5.0%</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,973&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,172&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">861,154&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">863,032&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: current maturities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(30,983)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(30,839)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term debt, less current maturities</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">830,171&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">832,193&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Remaining required repayments of debt principal, gross of unamortized debt issuance costs, as of December&#160;31, 2022 are as follows (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:32.163%"><tr><td style="width:1.0%"/><td style="width:59.354%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:38.446%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2023</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,983&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2024</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,570&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19,630&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,576&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,198&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">770,000&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr></table></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">5.75% Senior Notes due 2028</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In September 2019, we issued $300.0 million in aggregate principal amount of 5.75% senior unsecured notes (the &#8220;Senior Notes&#8221;). The Senior Notes will mature on February&#160;1, 2028 and interest is payable semi-annually in cash in arrears on February 1 and August 1, commencing on February&#160;1, 2020. The net proceeds from the Senior Notes offering were $295.0 million after debt issuance costs.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The indenture covering the Senior Notes contains restrictive covenants that, among other things, limit the ability of the Company and certain of our subsidiaries (subject to certain exceptions) to: (i) incur additional debt and issue preferred stock; (ii) pay dividends on, redeem or repurchase stock in an aggregate amount exceeding 2.0% of market capitalization per fiscal year, or in an aggregate amount exceeding certain applicable restricted payment baskets; (iii) prepay subordinated debt; (iv) create liens; (v) make specified types of investments; (vi) apply net proceeds from certain asset sales; (vii) engage in transactions with affiliates; (viii) merge, consolidate or sell substantially all of our assets; and (ix) pay dividends and make other distributions from subsidiaries.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Credit Facilities</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In February 2022, we amended and extended the term of our asset-based lending credit agreement (the "ABL Credit Agreement"). The ABL Credit Agreement increased the commitment under the asset-based lending credit facility (the "ABL Revolver") to $250 million from $200.0 million, and permits us to further increased the commitment amount up to $300.0 million. The amendment also extends the maturity date from September 26, 2024 to February 17, 2027. The ABL Revolver bears interest at either the base rate or the Secured Overnight Financing Rate ("Term SOFR"), at our election, plus a margin of 0.25% or 0.50% in the case of base rate loans or 1.25% or 1.50% for Term SOFR advances (in each case based on a measure of availability under the ABL Credit Agreement). The amendment also allows for modification of specified fees depend upon achieving certain sustainability targets, in addition to making other modifications to the ABL Credit Agreement. Including outstanding letters of credit, our remaining availability under the ABL Revolver as of December&#160;31, 2022 was $244.2 million. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The ABL Revolver provides incremental revolving credit facility commitments of up to $50.0 million. The terms and conditions of any incremental revolving credit facility commitments must be no more favorable than the terms of the ABL Revolver. The ABL Revolver also allows for the issuance of letters of credit of up to $100.0 million in aggregate and borrowing of swingline loans of up to $25.0 million in aggregate. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The ABL Credit Agreement contains a financial covenant requiring the satisfaction of a minimum of fixed charge coverage ratio of 1.0x in the event that we do not meet a minimum measure of availability under the ABL Revolver. The ABL Credit Agreement and the Term Loan Agreement contain restrictive covenants that, among other things, limit the ability of the Company and certain of our subsidiaries (subject to certain exceptions) to: (i) incur additional debt and issue preferred stock; (ii) pay dividends on, redeem or repurchase stock in an aggregate amount exceeding the greater of 2.0% of market capitalization per fiscal year or certain applicable restricted payment basket amounts' (iii) prepay subordinated debt; (iv) create liens; (v) make specified types of investments; (vi) apply net proceeds from certain asset sales; (vii) engage in transactions with affiliates; (viii) merge, consolidate or sell substantially all of our assets; and (ix) pay dividends and make other distributions from subsidiaries. </span></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In December 2021, we entered into a new $500 million, seven-year term loan facility due December 2028 (the &#8220;Term Loan&#8221;) under our credit agreement (the &#8220;Term Loan Agreement&#8221;), dated as of December 14, 2021 with Royal Bank of Canada as the administrative agent and collateral agent thereunder. The Term Loan amortizes in quarterly principal payments of $1.25&#160;million starting on March 31, 2022, with any remaining unpaid balances due on the maturity date of December 14, 2028. The Term Loan bears interest at either the base rate (which approximates the prime rate) or the Eurodollar rate, plus a margin of (A) 1.25% in the case of base rate loans or (B) 2.25% in the case of Eurodollar rate loans. Proceeds from the Term Loan were used </span></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">to refinance and repay in full all amounts outstanding under our previous term loan agreement. We intend to use the remaining funds for general corporate purposes, including acquisitions and other growth initiatives. As of December&#160;31, 2022, we had $489.2&#160;million, net of unamortized debt issuance costs, due on our Term Loan. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Subject to certain exceptions, the Term Loan will be subject to mandatory prepayments of (i) 100% of the net cash proceeds from issuances or incurrence of debt by the Company or any of its restricted subsidiaries (other than with respect to certain permitted indebtedness (excluding any refinancing indebtedness); (ii) 100% (with step-downs to 50% and 0% based on achievement of specified net leverage ratios) of the net cash proceeds from certain sales or dispositions of assets by the Company or any of its restricted subsidiaries in excess of a certain amount and subject to reinvestment provision and certain other exception; and (iii) 50% (with step-downs to 25% and 0% based upon achievement of specified net leverage ratios) of excess cash flow of the Company and its restricted subsidiaries in excess of $15&#160;million, subject to certain exceptions and limitations. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">All of the obligations under the Term Loan and ABL Revolver are guaranteed by all of the Company&#8217;s existing restricted subsidiaries and will be guaranteed by the Company&#8217;s future restricted subsidiaries. Additionally, all obligations under the Term Loan and ABL Revolver, and the guarantees of those obligations, are secured by substantially all of the assets of the Company and the guarantors, subject to certain exceptions and permitted liens, including a first-priority security interest in such assets that constitute ABL Priority Collateral, as defined in the ABL Credit Agreement, and a second-priority security interest in such assets that constitute Term Loan Priority Collateral, as defined in the Term Loan Agreement. </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Vehicle and Equipment Notes</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We are party to a Master Loan and Security Agreement (&#8220;Master Loan and Security Agreement&#8221;), a Master Equipment Lease Agreement (&#8220;Master Equipment Agreement&#8221;) and one or more Master Loan Agreements (&#8220;Master Loan Agreements&#8221; and together with the Master Loan and Security Agreement and Master Equipment Agreement the &#8220;Master Loan Equipment Agreements&#8221;) with various lenders to provide financing for the purpose of purchasing or leasing vehicles and equipment used in the normal course of business. Each financing arrangement under these agreements constitutes a separate note and obligation. Vehicles and equipment purchased or leased under each financing arrangement serve as collateral for the note applicable to such financing arrangement. Regular payments are due under each note for a period of typically 60 consecutive months after the incurrence of the obligation. The specific terms of each note are based on specific criteria, including the type of vehicle or equipment and the market interest rates at the time. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Total outstanding loan balances relating to our master loan and equipment agreements were $73.0 million and $69.2 million as of December&#160;31, 2022 and 2021, respectively. Depreciation of assets held under these agreements is included within cost of sales on the Consolidated Statements of Operations and Comprehensive Income.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 long-term debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -URI https://asc.fasb.org/topic&amp;trid=2208564<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtTextBlock</td>
</tr>
<tr>
<td style="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>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687980083024">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_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">LEASESWe lease various assets in the ordinary course of business as follows: warehouses to store our materials and perform staging activities for certain products we install; various office spaces for selling and administrative activities to support our business; and certain vehicles and equipment to facilitate our operations, including, but not limited to, trucks, forklifts and office equipment. <div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The table below presents the lease-related assets and liabilities recorded on the Consolidated Balance Sheet:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:28.139%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:40.274%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.496%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.501%"/><td style="width:0.1%"/></tr><tr style="height:14pt"><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Classification</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr style="height:14pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-Current</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating&#160;lease&#160;right-of-use&#160;assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">76,174&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">69,871&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzUtMi0xLTEtMTAwMDAy_3f08309b-5457-499e-ae82-f8cdea3899fd"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzUtMi0xLTEtMTAwMDAy_b356578e-0cdd-4b5a-928c-9d4814d3c5ab">Property and equipment, net</span></span></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,928&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,266&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">85,102&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">75,137&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Liabilities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current&#160;maturities&#160;of&#160;operating&#160;lease&#160;obligations</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,145&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,224&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Financing</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current maturities of finance lease obligations</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,508&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,747&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-Current</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease obligations</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">49,789&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">46,075&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Financing</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance lease obligations</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,397&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,297&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">84,839&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">74,343&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:70.829%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.375%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted-average remaining lease term</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating leases</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.0 years</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.3 years</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance leases</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.6 years</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.3 years</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted-average discount rate</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating leases</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.41&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.38&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance leases</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.76&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.96&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Lease Costs</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The table below presents certain information related to the lease costs for finance and operating leases during 2022, 2021 and 2020:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:41.005%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:19.221%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.449%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.595%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.602%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Classification</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease cost</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"> (1)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Administrative</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,158&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,357&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,454&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance lease cost</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:6.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amortization of leased assets </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(2)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of sales</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,241&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,083&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,645&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest on finance lease obligations</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest&#160;expense,&#160;net</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">324&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">218&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">268&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease costs</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">36,723&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,658&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,367&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div><span><br/></span></div><div style="padding-left:27pt;text-indent:-27pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(1)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:15.34pt">Includes variable lease costs of $3.7 million, $3.0 million and $2.9 million for the years ended December&#160;31, 2022, 2021 and 2020, respectively, and short-term lease costs of $1.1 million, $1.1 million and $0.8 million for the years ended December&#160;31, 2022, 2021 and 2020, respectively. </span></div><div style="padding-left:27pt;text-indent:-27pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(2)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:15.34pt">Includes variable lease costs of $0.7 million for each of the three years ended December&#160;31, 2022, 2021 and 2020, respectively.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Other Information</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The table below presents supplemental cash flow information related to leases during 2022, 2021 and 2020:</span></div><div><span><br/></span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:62.642%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.595%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.595%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.600%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash paid for amounts included in the measurement of lease liabilities:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating cash flows for operating leases</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,710&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,930&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19,668&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating cash flows for finance leases</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">324&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">218&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">268&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Financing cash flows for finance leases</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,306&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,125&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,632&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr></table></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Undiscounted Cash Flows</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The table below reconciles the undiscounted cash flows for each of the first five years and total of the remaining years for the finance lease obligations and operating lease obligations recorded on the Consolidated Balance Sheet as of December&#160;31, 2022:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:97.953%"><tr><td style="width:1.0%"/><td style="width:43.676%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.183%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.546%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.885%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.546%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.885%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.546%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.633%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance&#160;Leases</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating Leases</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Related&#160;Party</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total&#160;Operating</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2023</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,954&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,421&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,512&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28,933&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2024</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,438&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,175&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19,222&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,397&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,075&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,017&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,837&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,854&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,745&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,114&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,114&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">774&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,252&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,252&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,559&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,559&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total minimum lease payments</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,986&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,613&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">79,496&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">83,109&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: Amounts representing executory costs</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: Amounts representing interest</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,075)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(7,175)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Present value of future minimum lease payments</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,905&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">75,934&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: Current obligation under leases</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,508)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(26,145)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term lease obligations</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,397&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">49,789&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeFinanceLeasesTextBlock', window );">Leases</a></td>
<td class="text">LEASESWe lease various assets in the ordinary course of business as follows: warehouses to store our materials and perform staging activities for certain products we install; various office spaces for selling and administrative activities to support our business; and certain vehicles and equipment to facilitate our operations, including, but not limited to, trucks, forklifts and office equipment. <div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The table below presents the lease-related assets and liabilities recorded on the Consolidated Balance Sheet:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:28.139%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:40.274%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.496%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.501%"/><td style="width:0.1%"/></tr><tr style="height:14pt"><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Classification</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr style="height:14pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-Current</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating&#160;lease&#160;right-of-use&#160;assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">76,174&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">69,871&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzUtMi0xLTEtMTAwMDAy_3f08309b-5457-499e-ae82-f8cdea3899fd"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzUtMi0xLTEtMTAwMDAy_b356578e-0cdd-4b5a-928c-9d4814d3c5ab">Property and equipment, net</span></span></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,928&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,266&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">85,102&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">75,137&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Liabilities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current&#160;maturities&#160;of&#160;operating&#160;lease&#160;obligations</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,145&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,224&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Financing</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current maturities of finance lease obligations</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,508&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,747&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-Current</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease obligations</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">49,789&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">46,075&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Financing</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance lease obligations</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,397&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,297&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">84,839&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">74,343&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:70.829%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.375%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted-average remaining lease term</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating leases</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.0 years</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.3 years</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance leases</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.6 years</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.3 years</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted-average discount rate</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating leases</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.41&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.38&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance leases</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.76&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.96&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Lease Costs</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The table below presents certain information related to the lease costs for finance and operating leases during 2022, 2021 and 2020:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:41.005%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:19.221%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.449%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.595%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.602%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Classification</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease cost</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"> (1)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Administrative</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,158&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,357&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,454&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance lease cost</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:6.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amortization of leased assets </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(2)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of sales</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,241&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,083&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,645&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest on finance lease obligations</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest&#160;expense,&#160;net</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">324&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">218&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">268&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease costs</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">36,723&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,658&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,367&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div><span><br/></span></div><div style="padding-left:27pt;text-indent:-27pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(1)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:15.34pt">Includes variable lease costs of $3.7 million, $3.0 million and $2.9 million for the years ended December&#160;31, 2022, 2021 and 2020, respectively, and short-term lease costs of $1.1 million, $1.1 million and $0.8 million for the years ended December&#160;31, 2022, 2021 and 2020, respectively. </span></div><div style="padding-left:27pt;text-indent:-27pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(2)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:15.34pt">Includes variable lease costs of $0.7 million for each of the three years ended December&#160;31, 2022, 2021 and 2020, respectively.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Other Information</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The table below presents supplemental cash flow information related to leases during 2022, 2021 and 2020:</span></div><div><span><br/></span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:62.642%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.595%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.595%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.600%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash paid for amounts included in the measurement of lease liabilities:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating cash flows for operating leases</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,710&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,930&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19,668&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating cash flows for finance leases</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">324&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">218&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">268&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Financing cash flows for finance leases</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,306&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,125&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,632&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr></table></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Undiscounted Cash Flows</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The table below reconciles the undiscounted cash flows for each of the first five years and total of the remaining years for the finance lease obligations and operating lease obligations recorded on the Consolidated Balance Sheet as of December&#160;31, 2022:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:97.953%"><tr><td style="width:1.0%"/><td style="width:43.676%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.183%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.546%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.885%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.546%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.885%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.546%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.633%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance&#160;Leases</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating Leases</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Related&#160;Party</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total&#160;Operating</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2023</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,954&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,421&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,512&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28,933&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2024</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,438&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,175&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19,222&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,397&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,075&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,017&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,837&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,854&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,745&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,114&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,114&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">774&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,252&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,252&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,559&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,559&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total minimum lease payments</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,986&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,613&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">79,496&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">83,109&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: Amounts representing executory costs</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: Amounts representing interest</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,075)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(7,175)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Present value of future minimum lease payments</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,905&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">75,934&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: Current obligation under leases</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,508)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(26,145)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term lease obligations</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,397&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">49,789&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></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_LesseeFinanceLeasesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 finance leases of lessee. Includes, but is not limited to, description of lessee's finance lease and maturity analysis of finance lease liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -URI https://asc.fasb.org/subtopic&amp;trid=77888251<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeFinanceLeasesTextBlock</td>
</tr>
<tr>
<td style="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_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -URI https://asc.fasb.org/subtopic&amp;trid=77888251<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>33
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687980069808">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value Measurements<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_FairValueDisclosuresAbstract', window );"><strong>Fair Value Disclosures [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueDisclosuresTextBlock', window );">Fair Value Measurements</a></td>
<td class="text">FAIR VALUE MEASUREMENTS<div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Fair Values</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Fair value is the price that would be received for an asset or paid to transfer a liability (an exit price) in the principal or most advantageous market for the asset or liability in an orderly transaction between market participants on the measurement date.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">ASC 820, &#8220;Fair Value Measurement,&#8221; establishes a fair value hierarchy that requires an entity to maximize the use of observable inputs and minimize the use of unobservable inputs when measuring fair value. The standard describes three levels of inputs that may be used to measure fair value:</span></div><div style="margin-top:6pt;padding-left:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Level 1: Quoted prices (unadjusted) for identical assets or liabilities in active markets that the entity has the ability to access as of the measurement date.</span></div><div style="margin-top:6pt;padding-left:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Level 2: Significant other observable inputs other than Level 1 prices such as quoted prices for similar assets or liabilities; quoted prices in markets that are not active; or other inputs that are observable or can be corroborated by observable market data.</span></div><div style="margin-top:6pt;padding-left:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Level 3: Significant unobservable inputs that reflect a reporting entity&#8217;s own assumptions about the assumptions that market participants would use in pricing an asset or liability.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Assets and Liabilities Measured at Fair Value on a Recurring Basis</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In many cases, a valuation technique used to measure fair value includes inputs from multiple levels of the fair value hierarchy. The lowest level of significant input determines the placement of the entire fair value measurement in the hierarchy. During the periods presented, there were no transfers between fair value hierarchical levels.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Assets Measured at Fair Value on a Nonrecurring Basis</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Certain assets, specifically other intangible and long-lived assets, are measured at fair value on a nonrecurring basis in periods subsequent to initial recognition. Assets measured at fair value on a nonrecurring basis as of December&#160;31, 2022 and 2021 are categorized based on the lowest level of significant input to the valuation. The assets are measured at fair value when our impairment assessment indicates a carrying value for each of the assets in excess of the asset&#8217;s estimated fair value. Undiscounted cash flows, a Level 3 input, are utilized in determining estimated fair values. During each of the years ended December&#160;31, 2022, 2021 and 2020, we did not record any impairments on these assets required to be measured at fair value on a nonrecurring basis.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Estimated Fair Value of Financial Instruments</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accounts receivable, accounts payable and accrued liabilities as of December&#160;31, 2022 and 2021 approximate fair value due to the short-term maturities of these financial instruments. The carrying amounts of certain long-term debt, including the Term Loan and ABL Revolver as of December&#160;31, 2022 and 2021, approximate fair value due to the variable rate nature of the agreements. The carrying amounts of our operating lease right-of-use assets and the obligations associated with our operating and finance leases as well as our vehicle and equipment notes approximate fair value as of December&#160;31, 2022 and 2021. All debt classifications represent Level 2 fair value measurements. Derivative financial instruments are measured at fair value based on observable market information and appropriate valuation methods. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Contingent consideration liabilities arise from future earnout payments to the sellers associated with certain acquisitions and are based on predetermined calculations of certain future results. These future payments are estimated by considering various factors, including business risk and projections. The contingent consideration liabilities are measured at fair value by discounting estimated future payments to their net present value. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The fair values of financial assets and liabilities that are recorded at fair value in the Consolidated Balance Sheets and not described above were as follows (in thousands):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:27.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.671%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.671%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.233%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.233%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.379%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.233%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.233%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.951%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31, 2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31, 2021</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level&#160;1</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level&#160;2</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level&#160;3</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level&#160;1</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level&#160;2</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level&#160;3</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Financial assets:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash equivalents</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">191,881&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">191,881&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">258,055&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">258,055&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Derivative financial instruments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">38,671&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">38,671&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,830&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,830&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzUtMC0xLTEtMTAwMDAy_2f118e6b-355c-4162-8970-b998a5ae5450"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzUtMC0xLTEtMTAwMDAy_70c840c6-6a79-4f97-a58a-b08f6f1bdbef">Total financial assets</span></span></span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">230,552&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">191,881&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">38,671&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">272,885&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">258,055&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,830&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Financial liabilities:</span></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Contingent consideration</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,858&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,858&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,170&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,170&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Derivative financial instruments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,937&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,937&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzktMC0xLTEtMTAwMDAy_18ae74f0-19f1-4416-a30d-86ea73bdfe06"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzktMC0xLTEtMTAwMDAy_c8d93f89-6621-4092-8404-217ee2466660">Total financial liabilities</span></span></span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,858&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,858&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,107&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,937&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,170&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See Note 5, Cash and Cash Equivalents, for more information on cash equivalents included in the table above. Also see Note 12, Derivatives and Hedging Activities, for more information on derivative financial instruments.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The change in fair value of the contingent consideration (a Level 3 input) was as follows (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:60.526%"><tr><td style="width:1.0%"/><td style="width:77.885%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:19.915%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Contingent consideration liability&#8212;January 1, 2022</span></div></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,170&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Preliminary purchase price</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,039&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fair value adjustments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(994)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accretion in value</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">743&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gains on acquisition earnouts</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(16,109)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Settlement adjustments</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(505)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amounts paid to sellers</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(7,486)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Contingent consideration liability&#8212;December&#160;31, 2022</span></div></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,858&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The gains on acquisition earnouts in the above table include a $15.1 million gain that occurred in the fourth quarter on an earnout that was determined to no longer be probable of payment as a result of revised earnout target expectations. The earnout related to one of our 2022 acquisitions and is included within <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90ZXh0cmVnaW9uOjcyYjQzMjQzZGRkOTQzNjM5MmNkZjNkYWE4NmRiMDQxXzE2NDkyNjc0NTIzMDk_23ad3ebf-7c72-49be-a046-37d9cc2eb568"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90ZXh0cmVnaW9uOjcyYjQzMjQzZGRkOTQzNjM5MmNkZjNkYWE4NmRiMDQxXzE2NDkyNjc0NTIzMDk_639b19f3-3770-44c4-883d-81cef8dd0039">gains on acquisition earnouts</span></span> in operating expenses on the Consolidated Statements of Operations and Comprehensive Income. See Note 18, Business Combinations, for further information. The accretion in value of contingent consideration liabilities is included within administrative expenses on the Consolidated Statements of Operations and Comprehensive Income.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The carrying values and associated fair values of financial assets and liabilities that are not recorded at fair value in the Consolidated Balance Sheets and not described above include our Senior Notes. To estimate fair value of our Senior Notes, we utilized third-party quotes which are derived all or in part from model prices, external sources or market prices. The Senior Notes represent a Level 2 fair value measurement and are as follows (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:69.883%"><tr><td style="width:1.0%"/><td style="width:21.284%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.937%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.846%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.100%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.846%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.937%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.846%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.104%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31, 2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31, 2021</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Carrying&#160;Value</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fair&#160;Value</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Carrying&#160;Value</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fair&#160;Value</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Senior Notes </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">300,000&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">270,993&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">300,000&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">311,028&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="padding-left:27pt;text-indent:49.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(1)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:19.84pt">Excludes the impact of unamortized debt issuance costs.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Also see Note 8, Long-Term Debt, for more information on our Senior Notes.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueDisclosuresTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for the fair value of financial instruments (as defined), including financial assets and financial liabilities (collectively, as defined), and the measurements of those instruments as well as disclosures related to the fair value of non-financial assets and liabilities. Such disclosures about the financial instruments, assets, and liabilities would include: (1) the fair value of the required items together with their carrying amounts (as appropriate); (2) for items for which it is not practicable to estimate fair value, disclosure would include: (a) information pertinent to estimating fair value (including, carrying amount, effective interest rate, and maturity, and (b) the reasons why it is not practicable to estimate fair value; (3) significant concentrations of credit risk including: (a) information about the activity, region, or economic characteristics identifying a concentration, (b) the maximum amount of loss the entity is exposed to based on the gross fair value of the related item, (c) policy for requiring collateral or other security and information as to accessing such collateral or security, and (d) the nature and brief description of such collateral or security; (4) quantitative information about market risks and how such risks are managed; (5) for items measured on both a recurring and nonrecurring basis information regarding the inputs used to develop the fair value measurement; and (6) for items presented in the financial statement for which fair value measurement is elected: (a) information necessary to understand the reasons for the election, (b) discussion of the effect of fair value changes on earnings, (c) a description of [similar groups] items for which the election is made and the relation thereof to the balance sheet, the aggregate carrying value of items included in the balance sheet that are not eligible for the election; (7) all other required (as defined) and desired information.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueDisclosuresTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>34
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687974948384">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Information on Segments<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_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 );">INFORMATION ON SEGMENTS</a></td>
<td class="text">INFORMATION ON SEGMENTS<div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the first quarter of 2022, our Chief Executive Officer, who is also our Chief Operating Decision Maker ("CODM"), changed the manner in which he reviews financial information for purposes of assessing business performance, managing the business and allocating resources. In conjunction with this change, we realigned our segment structure resulting in our Company having three operating segments consisting of Installation, Distribution and Manufacturing. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our Installation operating segment represents the majority of our net revenue and gross profit and forms our one reportable segment. This operating segment represents the service-based installation of insulation and complementary building products in the residential new construction, repair and remodel and commercial construction end markets from our national network of branch locations. These branch locations have similar economic and operating characteristics including the nature of products and services offered, operating procedures and risks, customer bases, employee incentives, material procurement and shared corporate resources which led us to conclude that they combine to form one operating segment. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Other category reported below reflects the operations of our two remaining operating segments, Distribution and Manufacturing, which do not meet the quantitative thresholds for separate reporting. Our Distribution operating segment includes our recently acquired distribution businesses that sell insulation, gutters and accessories primarily to installers of these products who operate in multiple end markets. Our Manufacturing operating segment consists of our cellulose insulation manufacturing operation which was previously combined with our Installation operating segment. In addition to sales of cellulose insulation, revenues from this operating segment consist of sales of asphalt and industrial fibers to distributors and installers of these products. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Installation reportable segment includes substantially all of our net revenue from services while net revenue included in the Other category includes substantially all of our net revenue from sales of products. The intercompany sales from the Other category to the Installation reportable segment include a profit margin while our Installation segment records these transactions at cost. These transactions are shown in the Eliminations column in the tables below.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The key metrics used to assess the performance of our operating segments are revenue and segment gross profit as these are the metrics used by our CODM to review results, assess performance and allocate resources. We define segment gross profit as revenue less cost of sales, excluding depreciation and amortization. We do not report total assets, depreciation and amortization expenses included in reported cost of sales, operating expenses or other expense, net by segment because our CODM does not use this information to assess segment performance or allocate resources. The following tables represents our segment information for the years ended December&#160;31, 2022, 2021 and 2020 (in thousands):</span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:38.666%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.525%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Year ended December 31, 2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Installation</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Eliminations</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Consolidated</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,513,557&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">162,433&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6,146)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,669,844&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of sales </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,678,771&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">123,705&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,826)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,797,650&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Segment gross profit</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">834,786&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">38,728&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,320)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">872,194&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Segment gross profit percentage</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33.2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23.8&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32.7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:38.666%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.525%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Year ended December 31, 2021</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Installation</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Eliminations</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Consolidated</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,941,543&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29,332&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,225)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,968,650&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of sales </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,317,739&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,155&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,701)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,338,193&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Segment gross profit</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">623,804&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,177&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(524)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">630,457&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Segment gross profit percentage</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32.1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23.6&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32.0&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:38.666%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.525%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Year ended December 31, 2020</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Installation</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Eliminations</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Consolidated</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,636,361&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,762&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(898)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,653,225&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of sales </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,092,139&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,771&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(670)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,104,240&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Segment gross profit</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">544,222&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,991&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(228)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">548,985&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Segment gross profit percentage</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33.3&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28.1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25.4&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33.2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-top:9pt;padding-left:27pt;text-indent:-27pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(1)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:15.34pt">Cost of sales included in segment gross profit is exclusive of depreciation and amortization for the years ended December&#160;31, 2022, 2021 and 2020. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The prior period disclosures in the above tables have been recast to conform to the current period segment presentation. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The reconciliation between consolidated segment gross profit for each period as shown in the tables above to consolidated income before income taxes is as follows:</span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:53.870%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.524%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Segment gross profit - Consolidated</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">872,194&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">630,457&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">548,985&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Depreciation and amortization </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">44,410&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">40,938&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39,011&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross profit, as reported</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">827,784&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">589,519&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">509,974&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">482,373&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">401,639&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">348,107&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating income</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">345,411&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">187,880&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">161,867&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other expense, net</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">42,104&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,405&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,690&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income before income taxes</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">303,307&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">155,475&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">131,177&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div>(1)Cost of sales included in segment gross profit is exclusive of depreciation and amortization for the years ended December&#160;31, 2022, 2021 and 2020.<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 34<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8981-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8721-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9031-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 26<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8844-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9038-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9054-108599<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8657-108599<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8721-108599<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -URI https://asc.fasb.org/topic&amp;trid=2134510<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>35
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687982103840">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Derivatives and Hedging Activities<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract', window );"><strong>Derivative Instruments and Hedging Activities Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock', window );">Derivatives and Hedging Activities</a></td>
<td class="text">DERIVATIVES AND HEDGING ACTIVITIES<div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Risk Management Objective of Using Derivatives</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We are exposed to certain risks arising from both our business operations and economic conditions. We manage exposure to a wide variety of business and operational risks through our core business activities. We manage economic risks, including interest rate, liquidity and credit risk primarily by overseeing the amount, sources and duration of debt funding and the use of </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">derivative financial instruments. Specifically, we have entered into derivative financial instruments to manage exposure to interest rate movements that result in the receipt or payment of future known and uncertain cash amounts, the value of which are determined by interest rates. Our derivative financial instruments are used to manage differences in the amount, timing and duration of our known or expected cash receipts and known or expected cash payments principally related to our investments and borrowings.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Cash Flow Hedges of Interest Rate Risk</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our purpose for using interest rate derivatives is to add stability to interest expense and to manage our exposure to interest rate movements. During the year ended December&#160;31, 2022, we used interest rate swaps to hedge the variable cash flows associated with existing variable-rate debt. Interest rate swaps designated as cash flow hedges involve the receipt of variable amounts from a counterparty in exchange for making fixed-rate payments over the life of the agreements without exchange of the underlying notional amount. We do not use derivatives for trading or speculative purposes and we currently do not have any derivatives that are not designated as hedges. As of December&#160;31, 2022, we have not posted any collateral related to these agreements.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2022, we had the following interest rate swap derivatives (notional amount in millions): </span></div><div style="margin-top:9pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:23.461%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:23.461%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:23.461%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:23.465%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Effective Date</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Notional Amount</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fixed Rate</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Maturity Date</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">July 30, 2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">200.0&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.51&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2025</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100.0&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.37&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2025</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100.0&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.37&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2025</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2025</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">300.0&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.09&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 14, 2028</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2025</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100.0&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.98&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 14, 2028</span></td></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2021, we had the following interest rate swap derivatives (notional amount in millions): </span></div><div style="margin-top:9pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:23.461%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:23.461%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:23.461%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:23.465%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Effective Date</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Notional Amount</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fixed Rate</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Maturity Date</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">July 30, 2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">200.0&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.51&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 15, 2030</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100.0&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.37&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2028</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100.0&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.37&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2028</span></td></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On July 8, 2022, we amended the maturity date of each of our three active interest rate swaps to December 31, 2025 with other terms remaining unchanged. Collectively, the swap had unrealized gains of $51.2 million at the amendment date of July 8, 2022. These unrealized gains will be amortized as a decrease to interest expense, net through the original maturity dates of April 15, 2030 and December 15, 2028. For the year ended December&#160;31, 2022, we amortized $3.4 million of these unrealized gains as a decrease to interest expense, net. In conjunction with the amendments, we received cash of $25.5 million from swap counterparties, which is presented in cash flows from operating activities in the Consolidated Statements of Cash Flow for the year ended December&#160;31, 2022. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The amended swaps include off-market terms at inception and contained a $25.7 million other-than-insignificant financing element which will amortize to interest expense, net through the new December 31, 2025 maturity date of the amended swaps. As of December&#160;31, 2022, we amortized $3.6 million of the financing element as an increase to interest expense, net. Future net cash settlements are recognized through cash flows from investing activities in the Consolidated Statements of Cash Flows due to the other-than-insignificant financing element.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Also in July 2022, we entered into two new forward interest rate swaps. As of December&#160;31, 2022, these two forward interest rate swaps, combined with our three amended swaps, serve to hedge $400.0 million of the variable cash flows on our variable rate Term Loan through maturity. The assets and liabilities associated with these interest rate swaps are included in other current assets, other non-current assets and other current liabilities on the Consolidated Balance Sheets at their fair value amounts as described in Note 10, Fair Value Measurements.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In August 2020, we terminated two then-existing interest rate swaps and one then-existing forward interest rate swap. During the years ended December&#160;31, 2022, 2021 and 2020, we amortized $3.8 million, $3.2 million and $1.3 million, respectively, of the $17.8 million unrealized loss that existed at the time of termination as an increase to interest expense, net. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The changes in the fair value of derivatives designated, and that qualify, as cash flow hedges are recorded in other comprehensive gain (loss), net of tax on the Consolidated Statements of Operations and Comprehensive Income and in </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">accumulated other comprehensive income (loss) on the Consolidated Balance Sheets and subsequently reclassified into earnings in the period that the hedged forecasted transaction affects earnings. We had no such changes during the years ended December&#160;31, 2022 and 2021.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amounts reported in accumulated other comprehensive income (loss) related to derivatives will be reclassified to interest expense, net as interest payments are made on our variable-rate debt, and as our terminated and amended swaps are amortized. Over the next twelve months, we estimate that an additional $11.1 million will be reclassified as a decrease to interest expense, net.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes amounts recorded to <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDUx_3580f4e1-9b51-444e-9a35-60d80703421b"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDUx_b0d386bd-7d5d-4b4d-b157-231830ca5700"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDUx_f2565731-dcbc-4849-afbc-408fac97be5e">interest expense</span></span></span>, net included in the Condensed Consolidated Statements of Operations and Comprehensive Income related to our interest rate swaps (in thousands):</span></div><div style="margin-top:9pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:53.285%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.525%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(Benefit) expense associated with swap net settlements</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,128)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">370&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,453&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expense associated with amortization of amended/terminated swaps</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,928&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,223&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,326&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">LIBOR is used as a reference rate for our interest rate swap agreements we use to hedge our interest rate exposure. The Intercontinental Exchange Benchmark Administration, the administrator of LIBOR, announced in March 2021 its intention to extend the publication of certain LIBOR settings, including the setting we use as a reference rate, to June 2023. In January 2020, the FASB issued ASU 2020-04, Reference Rate Reform: Facilitation of the Effects of Reference Rate Reform on Financial Reporting (Topic 848) and in January 2021, the FASB subsequently issued ASU 2021-01, Reference Rate Reform - Scope, which clarified the scope and application of the original guidance. During the year ended December&#160;31, 2022, we adopted ASU 2022-06, Reference Rate Reform: Deferral of the Sunset Date of Topic 848 (Topic 848) which extends the sunset date of previous adopted guidance under ASU 2020-04 to December 31, 2024. The purpose of this guidance is to provide relief for impacted areas as it relates to impending reference rate reform. We elected to apply the hedge accounting expedients related to probability and the assessments of effectiveness for future LIBOR-indexed cash flows to assume that the index upon which future hedged transactions will be based matches the index on the corresponding derivatives. Application of these expedients preserves the presentation of derivatives consistent with past presentation.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for derivative instruments and hedging activities including, but not limited to, risk management strategies, non-hedging derivative instruments, assets, liabilities, revenue and expenses, and methodologies and assumptions used in determining the amounts.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -URI https://asc.fasb.org/topic&amp;trid=2229140<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126731327&amp;loc=d3e90205-114008<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>36
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687980069808">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_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">STOCKHOLDERS&#8217; EQUITY<div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Accumulated other comprehensive income (loss)</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The change in accumulated other comprehensive income (loss) related to our interest rate derivatives, net of taxes, was as follows (in thousands):</span></div><div style="margin-top:18pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:53.285%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.525%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Year Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accumulated loss at beginning of period</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(227)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(8,763)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(7,143)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unrealized gain (loss) in fair value of interest rate derivatives</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">37,885&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,151&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,601)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Reclassification of realized net losses to earnings</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,902&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,385&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">981&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accumulated gain (loss) at end of period </span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">40,560&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(227)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(8,763)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The reclassifications of realized net losses to earnings in the above table are recorded within interest expense, net.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Share repurchases</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On February 24, 2022, we announced that our board of directors authorized an extension of our previous stock repurchase program through March 1, 2023 and concurrently authorized an increase in the total amount of our outstanding common stock we can purchase up to $200.0&#160;million. On August 4, 2022, we announced that our board of directors authorized a new stock repurchase program which replaces our previous program. The new stock repurchase program allows for the repurchase of up to $200.0&#160;million of our outstanding common stock through August 10, 2023. As of December 31, 2022, we had $162.1&#160;million remaining on that stock repurchase program. On February 22, 2023, we announced that our board of directors authorized a new </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">stock repurchase program that allows for the repurchase of up to $200.0&#160;million of our outstanding common stock. The new program replaces the previous program and is in effect through March 1, 2024. The effect of these treasury shares in reducing the number of common shares outstanding is reflected in our earnings per share calculation. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the year ended December&#160;31, 2022, we repurchased approximately 1.5 million shares of our common stock with an aggregate price of approximately $137.6 million, or $91.54 average price per share. During the year ended December&#160;31, 2020 we repurchased 633&#160;thousand shares of our outstanding common stock with an aggregate price of approximately $33.9 million, or $53.57 average price per share. We did not repurchase any shares during the year ended December 31, 2021. </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Dividends</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the year ended December 31, 2022, we declared and paid the following cash dividends (amount declared and amount paid in thousands): </span></div><div style="margin-top:7pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:13.958%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.274%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.274%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.297%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.835%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.842%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Declaration Date</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Record Date</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Payment Date</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Dividend Per Share</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amount Declared</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amount Paid </span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2/24/2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3/15/2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3/31/2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.90&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,585&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,242&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2/24/2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3/15/2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3/31/2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.315&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,305&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,184&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5/5/2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6/15/2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6/30/2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.315&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,054&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,982&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8/4/2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9/15/2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9/30/2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.315&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,018&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,945&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11/03/2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12/15/2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12/31/2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.315&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,917&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,845&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the year ended December 31, 2021, we declared and paid the following cash dividends (amount declared and amount paid in thousands): </span></div><div><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:14.543%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.543%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.835%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.115%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.005%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.835%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.842%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Declaration Date</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Record Date</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Payment Date</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Dividend Per Share</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amount Declared</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amount Paid </span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2/23/2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3/15/2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3/31/2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.30&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 13pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,907</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,786&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5/5/2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6/15/2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6/30/2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.30&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 13pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,910</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,821&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8/5/2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9/15/2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9/30/2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.30&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 13pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,912</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,821&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11/4/2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12/15/2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12/31/2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.30&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 13pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,911</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,866&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The amount of dividends declared may vary from the amount of dividends paid in a period due to the vesting of restricted stock awards and performance share awards, which accrue dividend equivalent rights that are paid when the award vests. During the year ended December&#160;31, 2022, we also paid $0.5 million in accrued dividends not included in the table above related to the vesting of these awards. The payment of future dividends will be at the discretion of our board of directors and will depend on our future earnings, capital requirements, financial condition, future prospects, results of operations, contractual restrictions, legal requirements, and other factors deemed relevant by our board of directors. We did not declare or pay any cash dividends on our capital stock during the year ended December 31, 2020. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our credit facilities place restrictions on the amount of dividends and stock repurchases we can make during a fiscal year. See Note 8, Long-Term Debt, for more information.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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 shareholders' equity comprised of portions attributable to the parent entity and noncontrolling interest, including other comprehensive income. Includes, but is not limited to, balances of common stock, preferred stock, additional paid-in capital, other capital and retained earnings, accumulated balance for each classification of other comprehensive income and amount of comprehensive income.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -URI https://asc.fasb.org/topic&amp;trid=2208762<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496158-112644<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496158-112644<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 14<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496171-112644<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 14<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496171-112644<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496189-112644<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (g)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496158-112644<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496189-112644<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496158-112644<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 14<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496171-112644<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496189-112644<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 16<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496180-112644<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (i)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496158-112644<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(e)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126731327&amp;loc=SL126733271-114008<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>37
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140688060726352">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Employee Benefits<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_CompensationAndRetirementDisclosureAbstract', window );"><strong>Retirement Benefits [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_CompensationAndEmployeeBenefitPlansTextBlock', window );">Employee Benefits</a></td>
<td class="text">EMPLOYEE BENEFITS<div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Healthcare</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We participate in multiple healthcare plans, the largest of which is partially self-funded with an insurance company paying benefits in excess of stop loss limits per individual/family. Our healthcare benefit expense (net of employee contributions) was approximately $30.3 million, $28.4 million and $24.1 million for the years ended December&#160;31, 2022, 2021 and 2020, respectively, for all plans. An accrual for estimated healthcare claims incurred but not reported (&#8220;IBNR&#8221;) is included within accrued compensation on the Consolidated Balance Sheets and was $3.8 million and $3.3 million as of December&#160;31, 2022 and 2021, respectively.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Workers&#8217; Compensation</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We participate in multiple workers&#8217; compensation plans. Under these plans, for a significant portion of our business, we use a high deductible program to cover losses above the deductible amount on a per claim basis. We accrue for the estimated losses occurring from both asserted and unasserted claims. Workers&#8217; compensation liability for premiums is included in other current liabilities on the Consolidated Balance Sheets. Insurance claims and reserves include accruals of estimated settlements for known claims, as well as accruals of actuarial estimates of IBNR claims. In estimating these reserves, historical loss experience and judgments about the expected levels of costs per claim are considered. These claims are accounted for based on actuarial estimates of the undiscounted claims, including IBNR. We believe the use of actuarial methods to account for these liabilities provides a consistent and effective way to measure these highly judgmental accruals.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Workers&#8217; compensation expense totaled $19.1 million, $17.6 million and $15.7 million for the years ended December&#160;31, 2022, 2021 and 2020, respectively, and is included in cost of sales on the Consolidated Statements of Operations and Comprehensive Income. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Workers&#8217; compensation known claims and IBNR reserves included on the Consolidated Balance Sheets were as follows (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:66.812%"><tr><td style="width:1.0%"/><td style="width:54.261%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.781%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.675%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.783%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 5.5pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Included in other current liabilities</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,946&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,048&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Included in other long-term liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,730&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,397</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,676&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,445&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="padding-left:490.5pt"><span><br/></span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We also had an insurance receivable for claims that exceeded the stop loss limit for fully insured policies included on the Consolidated Balance Sheets. This receivable offsets an equal liability included within the reserve amounts noted above and was as follows (in thousands):</span></div><div style="text-align:center"><span><br/></span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:67.105%"><tr><td style="width:1.0%"/><td style="width:54.455%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.686%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.671%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.688%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Included in other non-current assets</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,318&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,137&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Retirement Plans</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We participate in multiple 401(k) plans, whereby we provide a matching contribution of wages deferred by employees and can also make discretionary contributions to each plan. Certain plans allow for discretionary employer contributions only. These plans cover substantially all our eligible employees. During the years ended December&#160;31, 2022, 2021 and 2020, we recognized 401(k) plan expenses of $2.9 million, $2.5 million and $2.2 million, respectively, which is included in administrative expenses on the accompanying Consolidated Statements of Operations and Comprehensive Income.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Multiemployer Pension Plans</span></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We participate in various multiemployer pension plans under collective bargaining agreements in Washington, Oregon, California and Illinois with other companies in the construction industry. These plans cover our union-represented employees and contributions to these plans are expensed as incurred. These plans generally provide for retirement, death and/or termination benefits for eligible employees within the applicable collective bargaining units, based on specific eligibility/participation requirements, vesting periods and benefit formulas. We do not participate in any multiemployer pension plans that are considered to be individually significant.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The risks of participating in these multiemployer pension plans are different from single-employer pension plans. For example:</span></div><div style="margin-top:7pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Assets contributed to the multiemployer plan by one employer may be used to provide benefits to employees of other participating employers.</span></div><div style="margin-top:7pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">If a participating employer stops contributing to the multiemployer plan, the unfunded obligations of the plan may be borne by the remaining participating employers.</span></div><div style="margin-top:7pt;padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">If a participating employer chooses to stop participating in these multiemployer plans, the employer may be required to pay those plans a withdrawal liability based upon the underfunded status of the plan.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We also participate in various multiemployer health and welfare plans that cover both active and retired participants. Health care benefits are provided to participants who meet certain eligibility requirements under the applicable collective bargaining unit.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our contributions to multiemployer pension and health and welfare benefit plans were as follows (in thousands):</span></div><div style="margin-top:7pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:70.760%"><tr><td style="width:1.0%"/><td style="width:35.057%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:19.561%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.833%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:19.561%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.626%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:19.562%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Pension plans</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,916&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,783&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,128&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Health &amp; welfare plans</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,115&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,893</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">952</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total contributions</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,031&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,676&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,080&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The increase in contributions for the year ended December&#160;31, 2021 was driven by the acquisition of Alert Insulation in 2021 and a full year of operations for 2020 acquisitions Insulation Contractors/Magellan Insulation and Norkote, Inc. We did not acquire any businesses with union employees in the year-ended December&#160;31, 2022. See Note 18, Business Combinations for more information. </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Share-Based Compensation</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Common Stock Awards</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We periodically grant shares of our common stock under our 2014 Omnibus Incentive Plan to non-employee members of our board of directors and our employees. During the years ended December&#160;31, 2022, 2021 and 2020, we granted approximately six thousand, four thousand and six thousand shares of restricted stock, respectively, to non-employee members of our board of directors. Substantially all of the stock will vest over a one-year service period. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In addition, we granted approximately 0.1 million, 0.1 million and 0.2 million shares of our common stock to employees in each of the years ended December&#160;31, 2022, 2021 and 2020, respectively. Substantially all of the stock will vest in three equal installments (rounded to the nearest whole share) annually over a three-year service period. </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Employees - Performance-Based Stock Awards</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We periodically grant nonvested stock awards subject to performance-based vesting conditions to certain officers. During the year ended December&#160;31, 2022, we issued approximately 41&#160;thousand shares of our common stock which vest in two equal installments on each of April 20, 2023 and April 20, 2024. In addition, during the year ended December&#160;31, 2022, we established, and our board of directors approved, performance-based targets in connection with common stock awards to be issued to certain officers in 2023 contingent upon achievement of these targets. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In addition, there are long-term performance-based restricted stock awards to be issued to certain employees annually through 2024 contingent upon achievement of certain performance targets. These awards are accounted for as liability-based awards since they represent a predominantly-fixed monetary amount that will be settled with a variable number of common shares in the first quarter of 2025 and as such are included in other long-term liabilities on the Consolidated Balance Sheets. During the years ended December&#160;31, 2022, 2021 and 2020 we granted approximately 39&#160;thousand, five&#160;thousand and seven&#160;thousand shares of our common stock, respectively, all of which vested in 2022.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Employees - Performance-Based Restricted Stock Units</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During 2021, we established, and our board of directors approved, performance-based restricted stock units in connection with common stock awards which were issued to certain employees in 2022 based upon achievement of a performance target. In addition, during the year ended December&#160;31, 2022, we established, and our board of directors approved, performance-based restricted stock units in connection with common stock awards to be issued to certain employees in 2023 based upon achievement of a performance target. These units will be accounted for as equity-based awards that will be settled with a fixed number of common shares. During the years ended December&#160;31, 2022, 2021 and 2020 we granted approximately 17&#160;thousand, eight&#160;thousand and 14&#160;thousand units, respectively, each of which will vest over a one-year service period.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Share-Based Compensation Summary</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amounts and changes for each category of equity-based award were as follows:</span></div><div style="margin-top:5pt;padding-right:13.5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:37.350%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.555%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 4.37pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Common Stock Awards</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 3.25pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Performance-Based Stock Awards</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 4.37pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Performance-Based Restricted Stock Units</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 4.37pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Awards</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted Average Grant Date Fair Value Per Share</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 3.25pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Awards</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted Average Grant Date Fair Value Per Share</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 4.37pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Units</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted Average Grant Date Fair Value Per Share</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Nonvested awards/units at December 31, 2021</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">199,353&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">68.99&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">143,401&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">81.30&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,252&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">126.89&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">109,189&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">89.32&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">54,585&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">102.98&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,618&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">80.55&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vested</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(149,504)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">74.96&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(71,933)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">59.07&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(8,061)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">126.89&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Forfeited/Cancelled</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,921)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">79.60&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,098)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">88.61&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Nonvested awards/units at December 31, 2022</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">157,117&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">77.31&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">126,053&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">103.37&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,711&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">80.55&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the share-based compensation expense recognized under our 2014 Omnibus Incentive Plan (in thousands):</span></div><div><span><br/></span></div><div style="text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:84.064%"><tr><td style="width:1.0%"/><td style="width:45.334%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.291%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.291%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.294%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Common Stock Awards</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,247&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,285&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,116&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-Employee Common Stock Awards</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">547&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">465&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">333&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Performance-Based Stock Awards</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,337&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,528&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,869&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Liability Performance-Based Stock Awards</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">493&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,612&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,969&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Performance-Based Restricted Stock Units</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,192&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">862&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">539&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,816&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,752&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,826&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We recorded the following stock compensation expense, by income statement category (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:84.064%"><tr><td style="width:1.0%"/><td style="width:45.334%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.291%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.291%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.294%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of sales</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">648&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">448&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">284&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Selling</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">478&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">204&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">202&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Administrative</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,690&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,100&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,340&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,816&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,752&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,826&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Administrative stock compensation expense includes all stock compensation earned by our administrative personnel, while cost of sales and selling stock compensation represents all stock compensation earned by our installation and sales employees, respectively. We recognized windfall tax benefits of $0.3 million and $1.7 million for the years ended December&#160;31, 2022 and 2021, and we recognized a tax shortfall of $0.3 million for the year ended December&#160;31, 2020, respectively, within the income tax provision in the Consolidated Statements of Operations and Comprehensive Income.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Unrecognized share-based compensation expense related to unvested awards was as follows (in thousands):</span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:55.332%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.391%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.393%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31, 2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unrecognized<br/>Compensation Expense<br/>on Unvested Awards</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted Average<br/>Remaining<br/>Vesting Period</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Common Stock Awards</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,259&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.7</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Performance-Based Stock Awards</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,825&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.6</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Performance-Based Restricted Stock Units</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">348&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.3</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total unrecognized compensation expense related to unvested awards</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,432&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Total unrecognized compensation expense is subject to future adjustments for forfeitures. This expense is expected to be recognized over the remaining weighted-average period shown above on a straight-line basis except for the Performance-Based Stock Awards which uses the graded-vesting method. Shares forfeited are returned as treasury shares and available for future issuances.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the years ended December&#160;31, 2022, 2021 and 2020, our employees surrendered approximately 53&#160;thousand, 44 thousand and 25 thousand shares of our common stock under all plans, respectively, to satisfy tax withholding obligations arising in connection with the vesting of common stock awards issued under our 2014 Omnibus Incentive Plan.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2022, approximately 1.7 million of the 3.0 million shares of common stock authorized for issuance were available for issuance under the 2014 Omnibus Incentive Plan.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CompensationAndEmployeeBenefitPlansTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 an entity's employee compensation and benefit plans, including, but not limited to, postemployment and postretirement benefit plans, defined benefit pension plans, defined contribution plans, non-qualified and supplemental benefit plans, deferred compensation, share-based compensation, life insurance, severance, health care, unemployment and other benefit plans.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -URI https://asc.fasb.org/topic&amp;trid=2228938<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 712<br> -URI https://asc.fasb.org/topic&amp;trid=2197446<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 710<br> -URI https://asc.fasb.org/topic&amp;trid=2127225<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -URI https://asc.fasb.org/topic&amp;trid=2235017<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CompensationAndEmployeeBenefitPlansTextBlock</td>
</tr>
<tr>
<td style="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_CompensationAndRetirementDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CompensationAndRetirementDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>38
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140688071462224">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_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">INCOME TAXES<div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The provision for income taxes is comprised of the following (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:67.543%"><tr><td style="width:1.0%"/><td style="width:31.800%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.545%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.882%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.545%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.882%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.546%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Federal</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">55,488&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,011&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,495&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">State</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,312&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,139&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,918&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">72,800&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">37,150&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">42,413&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Federal</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,584&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(437)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(7,177)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">State</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,495&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,298)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,079&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(438)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(8,475)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total tax expense</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">79,879&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">36,712&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,938&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:5pt;text-align:center"><span><br/></span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The reconciliation between our effective tax rate on net income and the federal statutory rate is as follows (dollars in thousands):</span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:43.344%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.648%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.648%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.655%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="33" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income tax at federal statutory rate</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">63,694&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21.0&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,650&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21.0&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,547&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21.0&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Stock compensation</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">300&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,567)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1.0)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">331&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.3&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other permanent items</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,282&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.4&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,274&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.8&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">424&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.3&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Change in valuation allowance</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(184)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.1)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(922)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.6)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(207)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.2)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Change in uncertain tax positions</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(459)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.1)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,867)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1.8)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">65&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">State income taxes, net of federal benefit</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,246&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.0&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,144&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,778&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.4&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total tax expense</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">79,879&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26.3&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">36,712&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23.6&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,938&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25.9&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Components of the net deferred tax asset or liability are as follows (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:89.181%"><tr><td style="width:1.0%"/><td style="width:65.457%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.293%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.455%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.295%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred Tax Assets</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued liabilities and allowances</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,009&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,200&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Allowance for doubtful accounts</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,251&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">979</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventories</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,210&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">900</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">538&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">333&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intangibles</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,673&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,042</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net operating loss carryforwards</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">719&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,049</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 55pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term deferred tax assets</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24,415&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,517</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: Valuation allowance</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(44)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(216)</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 55pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net deferred tax assets</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24,371&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,301</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred Tax Liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued liabilities and allowances</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(640)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(669)</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(8,489)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(7,629)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intangibles</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(10,659)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6,783)</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Investment in partnership</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(31,154)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(8,271)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,067)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(793)</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 55pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term deferred tax liabilities</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(52,009)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(24,145)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net deferred tax liabilities</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(27,638)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,844)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">The above amounts are included in our Consolidated Balance Sheets as follows:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other non-current assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">820&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">975&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term deferred income tax liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(28,458)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,819)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net deferred tax liabilities</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(27,638)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,844)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2022, we had a deferred tax asset balance of $0.7 million reflecting the benefit of $3.4 million in federal and state income tax net operating loss (NOL) carryforwards, the earliest of which expires in 2030.</span></div><div style="margin-top:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Valuation Allowance</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We assess the available positive and negative evidence to estimate if sufficient future taxable income will be generated to utilize the existing deferred tax assets on a jurisdiction and by tax filing entity basis. A significant piece of objective negative evidence evaluated is cumulative losses incurred over the most recent three-year period. Such objective evidence limits our ability to consider other subjective positive evidence such as our projections for future growth.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Based on this evaluation, a valuation allowance has been recorded as of December&#160;31, 2022 and 2021 for the net deferred tax assets recorded on certain of our wholly owned subsidiaries. Such deferred tax assets relate primarily to net operating losses that are not more likely than not realizable. However, the amount of the deferred tax asset considered realizable could be adjusted if our estimate of future taxable income during the carryforward period changes, or if objective negative evidence in the form of cumulative losses is no longer present. Additional weight may be given to subjective evidence such as our projections for growth in this situation.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Uncertain Tax Positions</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We are subject to taxation in the United States and various state jurisdictions. As of December&#160;31, 2022, our tax years for 2018 through 2020 are subject to examination by the tax authorities. A rollforward of the gross unrecognized tax benefits is as follows (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:79.970%"><tr><td style="width:1.0%"/><td style="width:80.618%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.182%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unrecognized tax benefit, December 31, 2019</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,717&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Increase as a result of tax positions taken during the period</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,822</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Decrease as a result of tax positions taken during the period</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,873)</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Increase as a result of expiring statutes</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unrecognized tax benefit, December 31, 2020</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,676&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Increase as a result of tax positions taken during the period</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,482</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Decrease as a result of tax positions taken during the period</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,999)</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Decrease as a result of expiring statutes</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,857)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unrecognized tax benefit, December 31, 2021</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,302&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Increase as a result of tax positions taken during the period</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,448&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Decrease as a result of tax positions taken during the period</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,863)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Increase as a result of expiring statutes</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unrecognized tax benefit, December 31, 2022</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,890&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="padding-left:490.5pt"><span><br/></span></div><div style="padding-left:490.5pt"><span><br/></span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Unrecognized tax benefits of $0.5 million at December&#160;31, 2022 would affect the effective tax rate. Interest expense and penalties accrued related to uncertain tax positions as of December&#160;31, 2022 are $0.5 million.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We expect a decrease to the amount of unrecognized tax benefits (exclusive of penalties and interest) within the next twelve months of zero to $2.8 million.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Determining uncertain tax positions and the related estimated amounts requires judgment and carry estimation risk. If future tax law changes or interpretations should come to light, or additional information should become known, our conclusions regarding unrecognized tax benefits may change.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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 taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32857-109319<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 11.C)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330215-122817<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 17<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32809-109319<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.5.Q1)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 14<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32705-109319<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 270<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6424409&amp;loc=d3e44925-109338<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -URI https://asc.fasb.org/topic&amp;trid=2144680<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=6424122&amp;loc=d3e41874-109331<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>39
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140688060700512">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Related Party Transactions<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_RelatedPartyTransactionsAbstract', window );"><strong>Related Party Transactions [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsDisclosureTextBlock', window );">Related Party Transactions</a></td>
<td class="text">RELATED PARTY TRANSACTIONS<div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We sell installation services to other companies related to us through common or affiliated ownership and/or board of directors and/or management relationships. We also purchase services and materials and pay rent to companies with common or related ownership. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We lease our headquarters and certain other facilities from related parties. See Note 9, Leases, for future minimum lease payments to be paid to these related parties.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The amount of sales to common or related parties as well as the purchases from and rent expense paid to common or related parties were as follows (in thousands):</span></div><div style="margin-top:5pt;padding-left:6.75pt;padding-right:6.75pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:64.473%"><tr><td style="width:1.0%"/><td style="width:29.058%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:21.575%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.707%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:21.575%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.707%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:21.578%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sales</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,793&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,452&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,987&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Purchases</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,152&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,544&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,841&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Rent</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,300&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,322&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,125&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div>At December&#160;31, 2022 and 2021, we had related party balances of approximately $3.3 million and $0.9 million, respectively, included in accounts receivable on our Consolidated Balance Sheets. These balances primarily represent trade accounts receivable arising during the normal course of business with various related parties. M/I Homes, Inc., a customer whose Chairman, President and Chief Executive Officer rejoined our board of directors in July of 2022, accounted for $2.5 million of the related party accounts receivable balance as of December&#160;31, 2022. Additionally, M/I Homes, Inc. accounted for a significant portion of our related party sales during the year ended December&#160;31, 2022.<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for related party transactions. Examples of related party transactions include transactions between (a) a parent company and its subsidiary; (b) subsidiaries of a common parent; (c) and entity and its principal owners; and (d) affiliates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39549-107864<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39549-107864<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39549-107864<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 850<br> -URI https://asc.fasb.org/topic&amp;trid=2122745<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39691-107864<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>40
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687974948384">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Commitments and Contingencies<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_CommitmentsAndContingenciesDisclosureAbstract', window );"><strong>Commitments and Contingencies Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock', window );">Commitments and Contingencies</a></td>
<td class="text">COMMITMENTS AND CONTINGENCIES<div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Accrued General Liability and Auto Insurances</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accrued general liability and auto insurance reserves included on the Consolidated Balance Sheets were as follows (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:66.666%"><tr><td style="width:1.0%"/><td style="width:54.163%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.829%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.677%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.831%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Included in other current liabilities</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,479&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,889&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Included in other long-term liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,528&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,050&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,007&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,939&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="padding-left:434.25pt"><span><br/></span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We also had insurance receivables and indemnification assets included on the Consolidated Balance Sheets that, in aggregate, offset equal liabilities included within the reserve amounts noted above. The amounts were as follows (in thousands):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:72.291%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.911%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.914%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 4.37pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 4.37pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Insurance receivables and indemnification assets for claims under fully insured policies</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,933&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,578&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Insurance receivables for claims that exceeded the stop loss limit</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">380</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">278</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total insurance receivables and indemnification assets included in other non-current assets</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,313&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,856&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr></table></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Leases</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See Note 9, Leases, for further information on our lease commitments.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Other Commitments and Contingencies</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">From time to time, various claims and litigation are asserted or commenced against us principally arising from contractual matters and personnel and employment disputes. In determining loss contingencies, management considers the likelihood of loss as well as the ability to reasonably estimate the amount of such loss or liability. An estimated loss is recorded when it is considered probable that such a liability has been incurred and when the amount of loss can be reasonably estimated. As litigation is subject to inherent uncertainties, we cannot be certain that we will prevail in these matters. However, we do not believe that the ultimate outcome of any pending matters will have a material adverse effect on our consolidated financial position, results of operations or cash flows.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingenciesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingenciesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for commitments and contingencies.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 440<br> -URI https://asc.fasb.org/topic&amp;trid=2144648<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 954<br> -SubTopic 440<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=6491277&amp;loc=d3e6429-115629<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 450<br> -URI https://asc.fasb.org/topic&amp;trid=2127136<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 440<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123406679&amp;loc=d3e25336-109308<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 440<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123406679&amp;loc=d3e25336-109308<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>41
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687982103840">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Business Combinations<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_BusinessCombinationsAbstract', window );"><strong>Business Combinations [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationDisclosureTextBlock', window );">Business Combinations</a></td>
<td class="text">BUSINESS COMBINATIONSAs part of our ongoing strategy to expand geographically and increase market share in certain markets, as well as diversify our products and end markets, we completed eight, eleven and nine business combinations during the years ended December&#160;31, 2022, 2021 and 2020, respectively. Acquisition-related costs amounted to $3.0 million, $3.8 million and $3.0 million for the years ended December&#160;31, 2022, 2021 and 2020, respectively, and are included in Administrative expenses on the Consolidated Statements of Operations and Comprehensive Income. In addition, we recognized gains on acquisition earnouts on the Consolidated Statements of Operations and Comprehensive Income of $16.1 million, $1.0 million and $0.2 million for the years ended December&#160;31, 2022, 2021 and 2020, respectively, due to probability assessments and to the cancellations of acquisition-related earnouts. The gain recorded during the year ended December&#160;31, 2022, is primarily comprised of a $15.1 million gain for the Central Aluminum acquisition (as defined below) recorded as a result of revised earnout target expectations. The goodwill recognized in conjunction with these business combinations represents the excess cost of the acquired entity over the net amount assigned to assets acquired and liabilities assumed. We expect to deduct $41.3 million of goodwill for tax purposes as a result of 2022 acquisitions.<div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Below is a summary of each significant acquisition by year, including revenue and net income (loss) since date of acquisition, shown for the year of acquisition. The largest of our 2022 acquisitions were Central Aluminum Supply Corporation and Central Aluminum Supply of North Jersey, LLC (collectively "CAS") in April 2022 </span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">and ABS Insulating Company, Inc., ABS Sprayfoam Insulation, Inc. and ABS Coastal Insulating Company, LLC (collectively "ABS") in December 2022. In each table, &#8220;Other&#8221; represents acquisitions that were individually immaterial in that year. Net income (loss), as noted below, includes amortization, taxes and interest allocations when appropriate. Prior period amounts have been recast to conform with the current year presentation.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the year ended December&#160;31, 2022 (in thousands):</span></div><div style="margin-top:9pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:21.122%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.434%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022 Acquisitions</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquisition Type</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash Paid</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Seller Obligations</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total Purchase Price</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net Income (Loss)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">CAS</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4/11/2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Share</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">55,150&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,927&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">78,077&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">37,822&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,001)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ABS</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12/19/2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Share</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,150&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">412&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,562&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">658&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(97)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Various</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asset/Share</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35,759&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,639&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39,398&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,576&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">787&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">114,059&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,978&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">141,037&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">61,056&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(311)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the year ended December&#160;31, 2021 (in thousands):</span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:21.122%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.434%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021 Acquisitions</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquisition Type</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash Paid</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Seller Obligations</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total Purchase Price</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net Income (Loss)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">IWI</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">03/01/2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Share</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">42,098&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,959&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">48,057&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">36,259&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,373&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Five Star</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9/13/2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Share</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,308&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,466&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,774&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,861&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(119)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">AMD</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12/13/2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asset</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">119,490&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,631&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">126,121&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,707&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(225)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Various </span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asset/Share</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">55,119&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,835&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">64,954&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35,604&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(390)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">243,015&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,891&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">270,906&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">82,431&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,639&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the year ended December&#160;31, 2020 (in thousands):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:21.122%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.434%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020 Acquisitions</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquisition Type</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash Paid</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Seller Obligations</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total Purchase Price</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net Income (Loss)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ICON</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10/13/2020</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asset</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,900&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,598&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,498&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,798&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">449&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Various</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asset</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">59,546&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,488&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">70,034&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35,696&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,443&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">76,446&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,086&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">90,532&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">40,494&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,892&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Purchase Price Allocations</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The estimated fair values of the assets acquired and liabilities assumed for the acquisitions, as well as total purchase prices and cash paid, approximated the following (in thousands):</span></div><div style="margin-top:7pt;padding-left:5.62pt;padding-right:5.62pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.122%"><tr><td style="width:1.0%"/><td style="width:46.097%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.731%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.389%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.436%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.389%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.731%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.389%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.738%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">CAS</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ABS</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Estimated fair values:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">243&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">193&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">87&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">523&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts receivable</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,502&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,777&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,800&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,079&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventories</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,784&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">853&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,456&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,093&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other current assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">576&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">485&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">71&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,132&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,590&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,269&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,498&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,357&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease right-of-use asset </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">844&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">66&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">910&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intangibles</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">34,900&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,800&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,365&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">65,065&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,594&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,546&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,154&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">49,294&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other non-current assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">56&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">56&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts payable and other current liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(5,387)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,677)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,133)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(10,197)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred income tax liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,455)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,455)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income tax payable</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(229)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(229)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other long-term liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(569)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(22)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(591)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fair value of assets acquired and purchase price</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">78,077&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,562&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39,398&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">141,037&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less seller obligations</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,927&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">412&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,639&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,978&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash paid</span></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">55,150&#160;</span></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,150&#160;</span></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35,759&#160;</span></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">114,059&#160;</span></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-top:7pt;padding-right:11.25pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:32.964%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.624%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="27" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">IWI</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Five Star</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">AMD</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Estimated fair values:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">168&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,472&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">67&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,707&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts receivable</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,122&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,583&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,393&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,584&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,682&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventories</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,157&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,399&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,540&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,786&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,882&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other current assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,014&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">330&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,975&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,319&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">796&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,161&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,133&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,124&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,214&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease right of-use-asset</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">199&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">199&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intangibles</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,200&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,400&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">52,800&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,554&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">126,954&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,282&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,626&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">56,327&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,122&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">107,357&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other non-current assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">264&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">417&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">681&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts payable and other current liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(8,416)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,170)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(184)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6,809)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(16,579)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred income tax liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,089)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,089)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other long-term liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,530)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(27)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(87)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(777)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,421)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fair value of assets acquired and purchase price</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">48,057&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,774&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">126,121&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">64,954&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">270,906&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less seller obligations</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,959&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,466&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,631&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,835&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,891&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash paid</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">42,098&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,308&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">119,490&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">55,119&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">243,015&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:7pt;padding-right:11.25pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:59.572%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.622%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ICON</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Estimated fair values:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts receivable</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,828&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,777&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,605&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventories</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">243&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,518&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,761&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other current assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">675&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">779&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,454&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">380&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,482&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,862&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intangibles</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,830&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">34,393&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">46,223&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,870&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,435&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,305&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other non-current assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">145&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">96&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">241&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts payable and other current liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(445)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,196)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,641)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other long-term liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(28)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(250)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(278)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fair value of assets acquired and purchase price</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,498&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">70,034&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">90,532&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less seller obligations</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,598&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,488&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,086&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash paid</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,900&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">59,546&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">76,446&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Contingent consideration is included as &#8220;seller obligations&#8221; in the above table or within &#8220;fair value of assets acquired&#8221; if subsequently paid during the period presented. These contingent payments consist primarily of earnouts based on performance that are recorded at fair value at the time of acquisition, and/or non-compete agreements and amounts based on working capital calculations. When these payments are expected to be made over one year from the acquisition date, the contingent consideration is discounted to net present value of future payments based on a weighted average of various future forecast scenarios.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Further adjustments to the allocation for each acquisition still under its measurement period are expected as third-party or internal valuations are finalized, certain tax aspects of the transaction are completed, contingent consideration is settled, and customary post-closing reviews are concluded during the measurement period attributable to each individual business combination. As a result, insignificant adjustments to the fair value of assets acquired, and in some cases total purchase price, have been made to certain business combinations since the date of acquisition and future adjustments may be made through the end of each measurement period. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The provisional amounts for one of our 2021 acquisitions originally reported in our Consolidated Balance Sheets included in our Annual Report on Form 10-K for the period ended December&#160;31, 2021 were adjusted due to adjustments to pre-acquisition financial information and ongoing analysis of the fair value measurements. As a result of an independent appraisal, we increased goodwill by approximately $1.6 million and decreased intangibles by $(3.0) million. These adjustments were within applicable measurement period guidelines and did not effect earnings.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Goodwill and intangibles per the above table may not agree to the total gross increases of these assets as shown in Note 7, Goodwill and Intangibles, during the years ended December&#160;31, 2022, 2021 and 2020 due to minor adjustments to goodwill for the allocation of certain acquisitions still under measurement as well as other immaterial intangible assets added during the ordinary course of business. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Estimates of acquired intangible assets related to the acquisitions are as follows (dollars in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"/><td style="width:30.811%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.635%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.535%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.635%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.535%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.635%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.535%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.635%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.535%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.635%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.535%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.639%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquired intangibles assets</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Estimated Fair Value</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted Average Estimated Useful Life (yrs)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Estimated Fair Value</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted Average Estimated Useful Life (yrs)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Estimated Fair Value</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted Average Estimated Useful Life (yrs)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">45,236&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">95,173&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28,307&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trademarks and trade names</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,794&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,149&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,834&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-competition agreements</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,645&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,054&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,315&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Backlog</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">390&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,578&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.5</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,767&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.5</span></td></tr></table></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Pro Forma Information (unaudited)</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The unaudited pro forma information has been prepared as if the 2022 acquisitions had taken place on January 1, 2021, the 2021 acquisitions had taken place on January 1, 2020 and the 2020 acquisitions had taken place on January 1, 2019. The unaudited pro forma information is not necessarily indicative of the results that we would have achieved had the transactions actually taken place on January 1, 2021, 2020 and 2019 and the unaudited pro forma information does not purport to be indicative of future financial operating results (in thousands, except for per share data):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:70.467%"><tr><td style="width:1.0%"/><td style="width:42.675%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.949%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.837%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.949%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.837%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.953%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31,</span></div></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net revenue</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,732,084&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,217,592&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,922,327&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net income</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">227,108&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">135,850&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">107,791&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Basic net income per share</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.91&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.63&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.65&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted net income per share</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.87&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.59&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.63&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Unaudited pro forma net income reflects additional intangible asset amortization expense of $2.5 million, $13.1 million and $18.2 million for the years ended December&#160;31, 2022, 2021 and 2020, respectively, additional interest expense of $4.3 million for each of the years ended December&#160;31, 2021 and 2020, respectively, as well as additional income tax expense of $1.2 million, $5.7 million and $3.7 million for the years ended December&#160;31, 2022, 2021 and 2020, respectively.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for a business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities. The disclosure may include leverage buyout transactions (as applicable).</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -URI https://asc.fasb.org/topic&amp;trid=2303972<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4946-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_BusinessCombinationsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance 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>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140688060765760">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Per Common Share<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_EarningsPerShareAbstract', window );"><strong>Earnings Per Share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareTextBlock', window );">Income Per Common Share</a></td>
<td class="text">INCOME PER COMMON SHARE<div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Basic net income per common share is calculated by dividing net income by the weighted average shares outstanding during the period, without consideration for common stock equivalents.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Diluted net income per common share is calculated by adjusting weighted average shares outstanding for the dilutive effect of common stock equivalents outstanding for the period, determined using the treasury stock method. Potential common stock is included in the diluted income per common share calculation when dilutive. The dilutive effect of outstanding restricted stock awards after application of the treasury stock method as of December&#160;31, 2022, 2021 and 2020, was 161 thousand, 261 thousand and 213 thousand, respectively. Approximately two&#160;thousand shares of potential common stock were not included in the calculation of diluted net income per common share for the years ended December&#160;31, 2022, because the effect would have been anti-dilutive.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for earnings per share.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=109243012&amp;loc=SL65017193-207537<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -URI https://asc.fasb.org/topic&amp;trid=2144383<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3630-109257<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>43
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140688060700512">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Subsequent Events<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_SubsequentEventsAbstract', window );"><strong>Subsequent Events [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_SubsequentEventsTextBlock', window );">Subsequent Events</a></td>
<td class="text">SUBSEQUENT EVENTSOn February 22, 2023, we announced that our board of directors approved a special annual dividend, payable on March 31, 2023 to stockholders of record on March 15, 2023 at a rate of 90 cents per share. In addition, we recently announced that our board of directors declared a quarterly dividend, payable on March 31, 2023 to stockholders of record on March 15, 2023 at a rate of 33.0&#160;cents per share.On February 22, 2023, we also announced that our board of directors authorized a new stock repurchase program that allows for the repurchase of up to $200.0&#160;million of our outstanding common stock. The new program replaces the previous program and is in effect through March 1, 2024. For more information about our stock repurchase programs, see Note 13, Stockholders' Equity.<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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_SubsequentEventsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 855<br> -URI https://asc.fasb.org/topic&amp;trid=2122774<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 855<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=6842918&amp;loc=SL6314017-165662<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsequentEventsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>44
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687971781504">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Significant Accounting Policies (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_AccountingPoliciesAbstract', window );"><strong>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BasisOfAccountingPolicyPolicyTextBlock', window );">Basis of Presentation</a></td>
<td class="text">We prepare our consolidated financial statements in accordance with accounting principles generally accepted in the United States of America (&#8220;U.S. GAAP&#8221;).<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConsolidationPolicyTextBlock', window );">Consolidation</a></td>
<td class="text">The accompanying consolidated financial statements include all of our wholly-owned subsidiaries. All intercompany accounts and transactions have been eliminated.<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PriorPeriodReclassificationAdjustmentDescription', window );">Reclassification</a></td>
<td class="text">The change in reportable segments described in Note 1, Organization and Note 11, Information on Segments, requires certain prior year disclosures in Note 3, Revenue Recognition and Note 7, Goodwill and Intangibles to be recast to conform to the current year presentation. We expanded the presentation of our administrative operating expenses to separately present our gains on acquisition earnouts in the Consolidated Statements of Operation and Comprehensive Income in this Form 10-K.<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UseOfEstimates', window );">Use of Estimates</a></td>
<td class="text">Preparation of the consolidated financial statements in conformity with U.S. GAAP requires management to make estimates, judgements and assumptions that affect the reported amounts in the consolidated financial statements and accompanying notes. Management believes the accounting estimates are appropriate and reasonably determined; however, due to the inherent uncertainties in making these estimates, actual amounts could differ from such estimates.<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsPolicyTextBlock', window );">Cash and Cash Equivalents</a></td>
<td class="text">We consider all highly-liquid investments purchased with original term to maturity of three months or less to be cash equivalents.<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock', window );">Revenue and Cost Recognition</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Payment terms typically do not exceed 30 days for short-term contracts and typically do not exceed 60 days for long-term contracts with customers. All contracts are billed either contractually or as work is performed. Billing on our long-term contracts occurs primarily on a monthly basis throughout the contract period whereby we submit invoices for customer payment based on actual or estimated costs incurred during the billing period. On certain of our long-term contracts the customer may withhold payment on an invoice equal to a percentage of the invoice amount, which will be subsequently paid after satisfactory completion of each installation project. This amount is referred to as retainage and is common practice in the construction industry, as it allows for customers to ensure the quality of the service performed prior to full payment. Retainage receivables are classified as current or long-term assets based on the expected time to project completion. See "Accounts Receivable" below for further discussion of our retainage receivables.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Revenues for our Distribution and Manufacturing operating segments included in the Other category are accounted for on a point-in-time basis when the sale occurs, adjusted accordingly for any return provisions. Sales taxes are not included in revenue as we act as a conduit for collecting and remitting sales taxes to the appropriate government authorities. The point-in-time recognition is when we transfer the promised products to the customer and the customer obtains control of the products depending upon the agreed upon terms in the contract. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We generally expense all sales commissions and other incremental costs of obtaining a contract when incurred because the amortization period is usually one year or less. Sales commissions are recorded within selling expenses on the Consolidated Statements of Operations and Comprehensive Income.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We do not disclose the value of unsatisfied performance obligations for contracts with an original expected length of one year or less.</span></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativesMethodsOfAccountingHedgingDerivatives', window );">Derivative Instruments and Hedging Activities</a></td>
<td class="text">We record all derivatives on the balance sheet at fair value. The accounting for changes in the fair value of derivatives depends on the intended use of the derivative, whether we have elected to designate a derivative in a hedging relationship and apply hedge accounting and whether the hedging relationship has satisfied the criteria necessary to apply hedge accounting. Derivatives designated and qualifying as a hedge of the exposure to variability in expected future cash flows, or other types of forecasted transactions, are considered cash flow hedges. Hedge accounting generally provides for the matching of the timing of gain or loss recognition on the hedging instrument with the recognition of the earnings effect of the hedged forecasted transactions in a cash flow hedge. We may enter into derivative contracts that are intended to economically hedge certain of our risks, even though hedge accounting does not apply or we elect not to apply hedge accounting.<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationsPolicy', window );">Business Combinations</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The purchase price for business combinations is allocated to the estimated fair values of acquired tangible and intangible assets, including goodwill and assumed liabilities, where applicable. Additionally, we recognize customer relationships, trademarks and trade names, backlog and non-competition agreements as identifiable intangible assets. These assets are recorded at fair value as of the transaction date. The fair value of these intangibles is determined using either the income approach or the market approach using current industry information which involves significant unobservable inputs (Level 3 inputs). These inputs include projected sales, margin and tax rate. Contingent consideration is recorded at fair value at the acquisition date and any subsequent adjustments to these fair values would be recorded in earnings.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At times, the total purchase price for a business combination could be less than the estimated fair values of acquired tangible and intangible assets. In these cases, we record a gain on bargain purchase within other expenses in the Consolidated Statements of Operations and Comprehensive Income rather than goodwill in accordance with U.S. GAAP.</span></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ReceivablesPolicyTextBlock', window );">Accounts Receivable</a></td>
<td class="text">We account for trade receivables based on amounts billed to customers. Past due receivables are determined based on contractual terms. We do not accrue interest on any of our trade receivables.Retainage receivables represent the amount retained by our customers to ensure the quality of the installation and is received after satisfactory completion of each installation project. Management regularly reviews aging of retainage receivables and changes in payment trends and records an allowance when collection of amounts due are considered at risk.<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskCreditRisk', window );">Concentration of Credit Risk</a></td>
<td class="text">Credit risk is our risk of financial loss from the non-performance of a contractual obligation on the part of our counterparty. Such risk arises principally from our receivables from customers and cash and bank balances. Substantially all of our trade accounts receivable are from entities engaged in residential and commercial construction. We perform periodic credit evaluations of our customers&#8217; financial condition. The general credit risk of our counterparties is not considered to be significant.<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryPolicyTextBlock', window );">Inventories</a></td>
<td class="text">Inventories consist of insulation, waterproofing materials, fireproofing and fire-stopping materials, garage doors, rain gutters, window blinds, shower doors, mirrors, closet shelving and other products. We value inventory at each balance sheet date to ensure that it is carried at the lower of cost or net realizable value with cost determined using the first-in, first-out (&#8220;FIFO&#8221;) method. Net realizable value is the estimated selling price in the ordinary course of business, less reasonably predictable cost of completion, disposal and transportation. As of December&#160;31, 2022 and 2021, substantially all inventory was finished goods. Inventory provisions are recorded to reduce inventory to the lower of cost or net realizable value for obsolete or slow moving inventory based on assumptions about future demand and marketability of products, the impact of new product introductions, inventory levels and turns, product spoilage, and specific identification of items such as product discontinuance, engineering/material changes, or regulatory-related changes.<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock', window );">Property and Equipment</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Property and equipment are stated at cost, less accumulated depreciation. We provide for depreciation and amortization of property and equipment using the straight-line method over the expected useful lives of the assets. Expected useful lives of property and equipment vary but generally are the shorter of lease life or five years for vehicles and leasehold improvements, <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTE2NTc_a977f052-cdfa-4287-b1c2-2c13ccbb2ec3">three</span> to five years for furniture, fixtures and equipment and 30 years for buildings.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Major renewals and improvements are capitalized. Maintenance, repairs and minor renewals are expensed as incurred. When assets are retired or otherwise disposed of, the related cost and accumulated depreciation are removed from the accounts and any resulting gain or loss is recorded. These assets are regularly review for possible impairment if there are indicators that their carrying amounts are not recoverable.</span></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy', window );">Goodwill</a></td>
<td class="text">Goodwill results from business combinations and represents the excess of the purchase price over the fair value of acquired tangible assets and liabilities and identifiable intangible assets. Annually, on October 1, or if conditions indicate an earlier review is necessary, we perform our goodwill impairment testing to determine if it is more likely than not that the fair value of a reporting unit is less than its carrying amount. As described in Note 1, Organization and Note 11, Information on Segments, we realigned our operating segments in 2022 to reflect recent changes in our business. We have determined that our reporting units are at the operating segment level.The estimate of a reporting unit&#8217;s fair value is determined by weighting a discounted cash flow model and a market-related model using current industry information that involve significant unobservable inputs (Level 3 inputs). In determining the estimated future cash flow, we consider and apply certain estimates and judgments using our historical knowledge, external valuation experts, current market trends and other information. These estimates and judgements include current and projected future levels of income based on management&#8217;s plans, business trends, prospects, market and economic conditions and market-participant considerations. An impairment charge is recognized for the amount by which the carrying value exceeds the reporting unit's fair value, not to exceed the total amount of goodwill allocated to each reporting unit.<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock', window );">Impairment of Other Intangible and Long-Lived Assets</a></td>
<td class="text">Other intangible assets consist of customer relationships, backlog, non-competition agreements and business trademarks and trade names. Amortization of finite lived intangible assets is recorded to reflect the pattern of economic benefits based on projected revenues over their respective estimated useful lives (customer relationships &#8211; <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTM1NTU_ef0ebe6a-c7b3-48eb-8f8b-5ddf39ff0efb">eight</span> to 15 years, backlog &#8211; 12 to 36 months, non-competition agreements &#8211; <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTM2MTQ_9876c3d1-52c9-4958-8348-18d296904de3">one</span> to five years and business trademarks and trade names &#8211; <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTM2NjU_f0c11354-8793-4523-b059-4ab1963f4cfb">two</span> to 15 years). We do not have any indefinite-lived intangible assets other than goodwill.We review long-lived assets and intangible assets whenever events or changes in circumstances indicate that the carrying value of an asset may not be recoverable. An impairment loss is recognized when estimated future cash flows expected to result from the use of an asset and its eventual disposition are less than its carrying amount. When impairment is identified, the carrying amount of the asset is reduced to its estimated fair value. Assets to be disposed of are recorded at the lower of net book value or fair net realizable value less cost to sell at the date management commits to a plan of disposal.<span></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_ibp_OtherLiabilitiesPolicyTextBlock', window );">Other Liabilities</a></td>
<td class="text">Our workers&#8217; compensation insurance program, for a significant portion of our business, is considered a high deductible program whereby we are responsible for the cost of claims under approximately $0.8 million. Our general liability insurance program is considered a high retention program whereby we are responsible for the cost of claims up to approximately $5.0 million, subject to an aggregate cap of $10.0 million. Our vehicle liability insurance program is considered a high deductible program whereby we are responsible for the cost of claims under approximately $1.0 million. In each case, if we do not pay these claims, our insurance carriers are required to make these payments to the claimants on our behalf. The liabilities represent our best estimate of our costs, using generally accepted actuarial reserving methods, of the ultimate obligations for reported claims plus those incurred but not reported for all claims incurred through December&#160;31, 2022 and 2021. We establish case reserves for reported claims using case-basis evaluation of the underlying claims data and we update as information becomes known. We regularly monitor the potential for changes in estimates, evaluate our insurance accruals and adjust our recorded provisions.<div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The assumptions underlying the ultimate costs of existing claim losses are subject to a high degree of unpredictability, which can affect the liability recorded for such claims. For example, variability in inflation rates of health care costs inherent in workers&#8217; compensation claims can affect the ultimate costs. Similarly, changes in legal trends and interpretations, as well as a change in the nature and method of how claims are settled, can affect ultimate costs. Our estimates of liabilities incurred do not anticipate significant changes in historical trends for these variables and any changes could have a considerable effect on future claim costs and currently recorded liabilities.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We carry insurance for a number of risks, including, but not limited to, workers&#8217; compensation, general liability, vehicle liability, property and our obligation for employee-related health care benefits. Liabilities relating to claims associated with these risks are estimated by considering historical claims experience, including frequency, severity, demographic factors and other actuarial assumptions. In estimating our liability for such claims, we periodically analyze our historical trends, including loss development, and apply appropriate loss development factors to the incurred costs associated with the claims with the assistance of external actuarial consultants. While we do not expect the amounts ultimately paid to differ significantly from our estimates, our reserves and corresponding expenses could be affected if future claim experience differs significantly from historical trends and actuarial assumptions.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Treasury Stock</span></div>Repurchases of our common stock are recorded at cost and classified as Treasury Stock on our Consolidated Balance Sheets. As of December&#160;31, 2022, we have not re-issued any of our treasury stock, but may do so periodically.<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdvertisingCostsPolicyTextBlock', window );">Advertising Costs</a></td>
<td class="text">Advertising costs are generally expensed as incurred.<span></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_ibp_DeferredOfferingCostsPolicyTextBlock', window );">Deferred Financing Costs</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Deferred financing costs and debt issuance costs combined, totaling $10.2 million and $11.4 million, net of accumulated amortization as of December&#160;31, 2022 and 2021, respectively, are amortized over the term of the related debt on a straight-line basis which approximates the effective interest method. The deferred financing costs are included in other non-current assets while the debt issuance costs are included in long-term debt on the Consolidated Balance Sheets as of December&#160;31, 2022 and 2021, respectively. The related amortization expense of these costs combined was $1.9 million, $1.4 million and $1.3 million and is included in interest expense, net on the Consolidated Statements of Operations and Comprehensive Income for the years ended December&#160;31, 2022, 2021 and 2020, respectively.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We wrote off $0.2 million in previously capitalized loan costs during the year ended December&#160;31, 2021. In addition, we expensed loan costs of approximately $1.6 million for the year ended December&#160;31, 2021 associated with our credit facilities because they did not meet the requirements for capitalization. We had no such write offs or expenses during the years ended December&#160;31, 2022 or 2020. These amounts are included in interest expense, net on the Consolidated Statements of Operations and Comprehensive Income. We also had $0.7 million and $7.5 million in new costs associated with the debt-related financing transactions incurred during the years ended December&#160;31, 2022 and 2021. The deferred financing costs are included in other non-current assets while the debt issuance costs are included in long-term debt on the Consolidated Balance Sheets. These costs are amortized over the term of the related debt on a straight-line basis which approximates the effective interest method.</span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeLeasesPolicyTextBlock', window );">Leases</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Leases are measured according to ASC 842, &#8220;Leases,&#8221; which requires substantially all leases, with the exception of leases with a term of one year or less, to be recorded as a lease liability measured as the present value of the future lease payments with a corresponding right-of-use asset. ASC 842 also requires disclosures designed to give financial statement users information on the amount, timing and uncertainty of cash flows. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We determine if an arrangement is a lease at inception. Most of our operating leases do not provide an implicit rate so we use our incremental borrowing rate based on the information available at the commencement date to determine the present value of future payments. Leases with an initial term of 12 months or less are not recorded on the balance sheet as we recognize lease expense for these leases on a straight-line basis over the lease term. We elect to not separate lease components from non-lease </span></div>components for all fixed payments, and we exclude variable lease payments in the measurement of right-of-use assets and lease obligations.Most lease agreements include one or more renewal options, all of which are at our sole discretion. Generally, future renewal options that have not been executed as of the balance sheet date are excluded from right-of-use assets and related lease liabilities. Certain leases also include options to purchase the leased property. The depreciable life of assets and leasehold improvements are limited by the expected lease term, unless there is a transfer of title or purchase option reasonably certain of exercise. Some of our vehicle lease agreements include provisions for residual value guarantees and any expected payment is included in our lease liability.<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy', window );">Share-Based Compensation</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our share-based compensation program is designed to attract and retain employees while also aligning employees&#8217; interests with the interests of our stockholders. Restricted stock awards are periodically granted to certain employees, officers and non-employee members of our board of directors under the stockholder-approved 2014 Omnibus Incentive Plan.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Certain of our stock awards are deemed to be equity-based with a service condition and do not contain a market or performance condition with the exception of performance-based awards granted to certain officers and performance-based stock units. Fair value of the non-performance-based awards to employees and officers is measured at the grant date and amortized to expense over the vesting period of the awards using the straight-line attribution method for all service-based awards with a graded vesting feature. This fair value is reduced by assumed forfeitures and adjusted for actual forfeitures until vesting. We also issue performance-based stock awards to certain officers under our 2014 Omnibus Incentive Plan. The performance-based compensation expense is recorded over the requisite service period using the graded-vesting method for the entire award. Performance-based stock awards are accounted for at fair value at date of grant. We also periodically grant performance-based stock units to certain employees under the stockholder-approved 2014 Omnibus Incentive Plan. These units convert to shares upon meeting time- and performance-based requirements.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Compensation expense for performance-based stock units is recorded based on an assessment each reporting period of the probability that certain performance goals will be met during the contingent vesting period. If performance goals are not probable to occur, no compensation expense will be recognized. If performance goals that were previously deemed probable are not or are not expected to be met, the previously recognized compensation cost related to such performance goals will be reversed. Employees and officers are subject to tax at the vesting date based on the market price of the shares on that date, or on the grant date if an election is made.</span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxPolicyTextBlock', window );">Income Taxes</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We account for income taxes using the asset and liability method. Under this method, the amount of taxes currently payable or refundable are accrued and deferred tax assets and liabilities are recognized for the estimated future tax consequences of temporary differences that currently exist between the tax basis and financial reporting basis of our assets and liabilities.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Valuation allowances are established against deferred tax assets when it is more likely than not that the realization of those deferred tax assets will not occur. In evaluating our ability to recover our deferred tax assets within the jurisdiction from which they arise, we consider all available positive and negative evidence, including scheduled reversals of deferred tax liabilities, the ability to produce future taxable income, prudent and feasible tax planning strategies and recent financial operations. In projecting future taxable income, we factor in historical results and changes in accounting policies and incorporate assumptions, including the amount of future federal and state pretax operating income, the reversal of temporary differences and the implementation of feasible and prudent tax planning strategies. These assumptions require significant judgment about the forecasts of future taxable income and are consistent with the plans and estimates we use to manage the underlying businesses.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Deferred tax assets and liabilities are measured using the enacted tax rates in effect in the years when those temporary differences are expected to reverse. The effect on deferred taxes from a change in tax rate is recognized through operations in the period that includes the enactment date of the change. Changes in tax laws and rates could also affect recorded deferred tax assets and liabilities in the future.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A tax benefit from an uncertain tax position may be recognized when it is more likely than not that the position will be sustained upon examination, including resolutions of any related appeals or litigation processes, based on the technical merits. Income tax positions must meet a more likely than not recognition threshold to be recognized.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We recognize tax liabilities for uncertain tax positions and adjust these liabilities when our judgment changes as a result of the evaluation of new information not previously available. Liabilities related to uncertain tax positions are recorded in other long-term liabilities on the Consolidated Balance Sheets. Due to the complexity of some of these uncertainties, the ultimate resolution may result in a payment that is materially different from the current estimate of the tax liabilities. These differences will be reflected as increases or decreases to income tax expense and the effective tax rate in the period in which the new information becomes available. Interest and penalties related to unrecognized tax benefits are recognized within income tax expense in the Consolidated Statements of Operations and Comprehensive Income. Accrued interest and penalties are recognized in other current liabilities on the Consolidated Balance Sheets.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our income tax expense, deferred tax assets and liabilities and reserves for unrecognized tax benefits reflect management&#8217;s best assessment of estimated future taxes to be paid. We are subject to income taxes in the United States, which includes numerous state and local jurisdictions. Significant judgments and estimates are required in determining the income tax expense, deferred tax assets and liabilities and the reserve for unrecognized tax benefits.</span></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock', window );">Recently Adopted Accounting Pronouncements</a></td>
<td class="text"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Recently Issued Accounting Pronouncements Not Yet Adopted</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We are currently evaluating the impact of certain ASUs on our Consolidated Financial Statements or Notes to Consolidated Financial Statements, which are described below:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:21.560%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:22.438%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.391%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:29.459%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Standard</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Description</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Effective Date</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Effect&#160;on&#160;the&#160;financial&#160;<br/>statements&#160;or other significant matters</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ASU 2021-08, Business Combinations (Topic 805): Accounting for contract assets and contract liabilities from contracts with customers </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">This pronouncement amends Topic 805 to require an acquirer to account for revenue contracts in a business combination in accordance with Topic 606 as if the acquirer had originated the contracts. </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Annual periods beginning after December 15, 2022, including interim periods therein. Early adoption is permitted.</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">The Company will adopt and apply the guidance as prescribe by this ASU to future business combinations that occur after the effective date. This will not materially affect our consolidated financial statements.</span></td></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueOfFinancialInstrumentsPolicy', window );">Fair Values</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Fair value is the price that would be received for an asset or paid to transfer a liability (an exit price) in the principal or most advantageous market for the asset or liability in an orderly transaction between market participants on the measurement date.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">ASC 820, &#8220;Fair Value Measurement,&#8221; establishes a fair value hierarchy that requires an entity to maximize the use of observable inputs and minimize the use of unobservable inputs when measuring fair value. The standard describes three levels of inputs that may be used to measure fair value:</span></div><div style="margin-top:6pt;padding-left:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Level 1: Quoted prices (unadjusted) for identical assets or liabilities in active markets that the entity has the ability to access as of the measurement date.</span></div><div style="margin-top:6pt;padding-left:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Level 2: Significant other observable inputs other than Level 1 prices such as quoted prices for similar assets or liabilities; quoted prices in markets that are not active; or other inputs that are observable or can be corroborated by observable market data.</span></div><div style="margin-top:6pt;padding-left:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Level 3: Significant unobservable inputs that reflect a reporting entity&#8217;s own assumptions about the assumptions that market participants would use in pricing an asset or liability.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Assets and Liabilities Measured at Fair Value on a Recurring Basis</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In many cases, a valuation technique used to measure fair value includes inputs from multiple levels of the fair value hierarchy. The lowest level of significant input determines the placement of the entire fair value measurement in the hierarchy. During the periods presented, there were no transfers between fair value hierarchical levels.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Assets Measured at Fair Value on a Nonrecurring Basis</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Certain assets, specifically other intangible and long-lived assets, are measured at fair value on a nonrecurring basis in periods subsequent to initial recognition. Assets measured at fair value on a nonrecurring basis as of December&#160;31, 2022 and 2021 are categorized based on the lowest level of significant input to the valuation. The assets are measured at fair value when our impairment assessment indicates a carrying value for each of the assets in excess of the asset&#8217;s estimated fair value. Undiscounted cash flows, a Level 3 input, are utilized in determining estimated fair values. During each of the years ended December&#160;31, 2022, 2021 and 2020, we did not record any impairments on these assets required to be measured at fair value on a nonrecurring basis.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Estimated Fair Value of Financial Instruments</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accounts receivable, accounts payable and accrued liabilities as of December&#160;31, 2022 and 2021 approximate fair value due to the short-term maturities of these financial instruments. The carrying amounts of certain long-term debt, including the Term Loan and ABL Revolver as of December&#160;31, 2022 and 2021, approximate fair value due to the variable rate nature of the agreements. The carrying amounts of our operating lease right-of-use assets and the obligations associated with our operating and finance leases as well as our vehicle and equipment notes approximate fair value as of December&#160;31, 2022 and 2021. All debt classifications represent Level 2 fair value measurements. Derivative financial instruments are measured at fair value based on observable market information and appropriate valuation methods. </span></div>Contingent consideration liabilities arise from future earnout payments to the sellers associated with certain acquisitions and are based on predetermined calculations of certain future results. These future payments are estimated by considering various factors, including business risk and projections. The contingent consideration liabilities are measured at fair value by discounting estimated future payments to their net present value.<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ibp_DeferredOfferingCostsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Deferred Offering Costs Policy.</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;">ibp_DeferredOfferingCostsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</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_ibp_OtherLiabilitiesPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Other Liabilities Policy.</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;">ibp_OtherLiabilitiesPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdvertisingCostsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for advertising cost.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 720<br> -SubTopic 35<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=6420018&amp;loc=d3e36677-107848<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdvertisingCostsPolicyTextBlock</td>
</tr>
<tr>
<td style="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_BasisOfAccountingPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BasisOfAccountingPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationsPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for completed business combinations (purchase method, acquisition method or combination of entities under common control). This accounting policy may include a general discussion of the purchase method or acquisition method of accounting (including for example, the treatment accorded contingent consideration, the identification of assets and liabilities, the purchase price allocation process, how the fair values of acquired assets and liabilities are determined) and the entity's specific application thereof. An entity that acquires another entity in a leveraged buyout transaction generally discloses the accounting policy followed by the acquiring entity in determining the basis used to value its interest in the acquired entity, and the rationale for that accounting policy.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 05<br> -Paragraph 4<br> -Subparagraph (a)-(d)<br> -URI https://asc.fasb.org/extlink&amp;oid=6909625&amp;loc=d3e227-128457<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationsPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for cash and cash equivalents, including the policy for determining which items are treated as cash equivalents. Other information that may be disclosed includes (1) the nature of any restrictions on the entity's use of its cash and cash equivalents, (2) whether the entity's cash and cash equivalents are insured or expose the entity to credit risk, (3) the classification of any negative balance accounts (overdrafts), and (4) the carrying basis of cash equivalents (for example, at cost) and whether the carrying amount of cash equivalents approximates fair value.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=126999549&amp;loc=d3e4273-108586<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskCreditRisk">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for credit risk.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e5967-108592<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 825<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=126941378&amp;loc=d3e61044-112788<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskCreditRisk</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConsolidationPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy regarding (1) the principles it follows in consolidating or combining the separate financial statements, including the principles followed in determining the inclusion or exclusion of subsidiaries or other entities in the consolidated or combined financial statements and (2) its treatment of interests (for example, common stock, a partnership interest or other means of exerting influence) in other entities, for example consolidation or use of the equity or cost methods of accounting. The accounting policy may also address the accounting treatment for intercompany accounts and transactions, noncontrolling interest, and the income statement treatment in consolidation for issuances of stock by a subsidiary.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126899994&amp;loc=d3e18823-107790<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=d3e5614-111684<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConsolidationPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativesMethodsOfAccountingHedgingDerivatives">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for derivatives used in hedging relationships, which may include how gains or losses are recognized and presented in the financial statements, and amortization policies for deferred amounts.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4EEEE<br> -URI https://asc.fasb.org/extlink&amp;oid=125515794&amp;loc=SL109999725-113959<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativesMethodsOfAccountingHedgingDerivatives</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueOfFinancialInstrumentsPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for determining the fair value of financial instruments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 60<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=7493716&amp;loc=d3e21868-110260<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=123594938&amp;loc=d3e13279-108611<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueOfFinancialInstrumentsPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for goodwill. This accounting policy also may address how an entity assesses and measures impairment of goodwill, how reporting units are determined, how goodwill is allocated to such units, and how the fair values of the reporting units are determined.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13854-109267<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -URI https://asc.fasb.org/subtopic&amp;trid=2144439<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=122137925&amp;loc=d3e14258-109268<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy</td>
</tr>
<tr>
<td style="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_ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for the impairment and disposal of long-lived assets including goodwill and other intangible 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;">us-gaap_ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -URI https://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e32247-109318<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32847-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 19<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32840-109319<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL116659661-227067<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI https://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e32280-109318<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 17<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32809-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above cost.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=116847112&amp;loc=d3e4556-108314<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -URI https://asc.fasb.org/topic&amp;trid=2126998<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(b))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 912<br> -SubTopic 330<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6471895&amp;loc=d3e55923-109411<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=116847112&amp;loc=d3e4492-108314<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 270<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126900757&amp;loc=d3e543-108305<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126899994&amp;loc=d3e18823-107790<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6361739&amp;loc=d3e7789-107766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeLeasesPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for leasing arrangement entered into by lessee.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918666-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeLeasesPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PriorPeriodReclassificationAdjustmentDescription">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for reclassification affecting comparability of financial statement. Excludes amendment to accounting standards, other change in accounting principle, and correction of error.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=124429488&amp;loc=d3e326-107755<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PriorPeriodReclassificationAdjustmentDescription</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126982197&amp;loc=d3e99779-112916<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=126982197&amp;loc=d3e99893-112916<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ReceivablesPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for receivable. Includes, but is not limited to, accounts receivable and financing receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=d3e5033-111524<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=84159169&amp;loc=d3e10178-111534<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=84159169&amp;loc=d3e10149-111534<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=84159169&amp;loc=d3e10133-111534<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReceivablesPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for revenue from contract with customer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 17<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130561-203045<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130566-203045<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130563-203045<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -URI https://asc.fasb.org/topic&amp;trid=49130388<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130566-203045<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130563-203045<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=126899994&amp;loc=d3e18823-107790<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130566-203045<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 19<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130564-203045<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130566-203045<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for award under share-based payment arrangement. Includes, but is not limited to, methodology and assumption used in measuring cost.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(v)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -URI https://asc.fasb.org/topic&amp;trid=2228938<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.D.2.Q6)<br> -URI https://asc.fasb.org/extlink&amp;oid=122041274&amp;loc=d3e301413-122809<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UseOfEstimates">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6191-108592<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI https://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6161-108592<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6143-108592<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e5967-108592<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6061-108592<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6132-108592<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e5967-108592<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UseOfEstimates</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>45
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687976539168">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Significant Accounting Policies (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_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_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock', window );">Recently Adopted and Recently Issued Accounting Pronouncements</a></td>
<td class="text"><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Recently Adopted Accounting Pronouncements</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:18.783%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.420%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:61.329%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Standard</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Effective&#160;Date</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Adoption</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ASU 2022-06, Reference Rate Reform (Topic 848): Deferral of the Sunset Date of Topic 848</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 21, 2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">This pronouncement amends ASU 2020-04 which provides temporary optional expedients and exceptions to certain transactions affected by reference rate reform. ASU 2022-06 defers the sunset date of applying ASU 2020-04 to December 31, 2024. We continue to evaluate whether to apply the optional guidance on an ongoing basis but do not expect it to have a material impact on our consolidated financial statements.</span></div></td></tr></table></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Recently Issued Accounting Pronouncements Not Yet Adopted</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We are currently evaluating the impact of certain ASUs on our Consolidated Financial Statements or Notes to Consolidated Financial Statements, which are described below:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:21.560%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:22.438%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.391%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:29.459%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Standard</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Description</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Effective Date</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Effect&#160;on&#160;the&#160;financial&#160;<br/>statements&#160;or other significant matters</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ASU 2021-08, Business Combinations (Topic 805): Accounting for contract assets and contract liabilities from contracts with customers </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">This pronouncement amends Topic 805 to require an acquirer to account for revenue contracts in a business combination in accordance with Topic 606 as if the acquirer had originated the contracts. </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Annual periods beginning after December 15, 2022, including interim periods therein. Early adoption is permitted.</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">The Company will adopt and apply the guidance as prescribe by this ASU to future business combinations that occur after the effective date. This will not materially affect our consolidated financial statements.</span></td></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 changes in accounting principles, including adoption of new accounting pronouncements, that describes the new methods, amount and effects on financial statement line items.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 270<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -URI https://asc.fasb.org/extlink&amp;oid=126900757&amp;loc=d3e765-108305<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 270<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=126900757&amp;loc=d3e725-108305<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>46
<FILENAME>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687974996720">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue Recognition (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue from Contract with Customer [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueTableTextBlock', window );">Summary of Revenues Disaggregated by End Market and Product</a></td>
<td class="text">The following tables present our net revenues disaggregated by end market and product (in thousands):<div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:34.365%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.545%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.526%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.603%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.526%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.545%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.526%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.603%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.381%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.545%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.526%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.609%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="33" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Residential new construction</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,980,253&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">74&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,488,674&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">76&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,230,955&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">75&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Repair and remodel</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">151,761&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">121,594&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">106,486&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Commercial</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">381,543&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">331,275&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">298,920&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net revenue, Installation</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,513,557&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">94&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,941,543&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">99&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,636,361&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">99&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">156,287&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,107&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,864&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net revenue, as reported</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,669,844&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,968,650&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,653,225&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-top:5pt"><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:34.864%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.356%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.356%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.363%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="33" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Insulation</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,611,037&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">61&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,235,583&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">63&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,041,453&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">63&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Shower doors, shelving and mirrors</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">172,979&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">138,797&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">117,131&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Garage doors</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">168,800&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">108,675&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">93,516&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Waterproofing</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">124,808&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">130,924&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">122,962&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Rain gutters</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">114,022&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">86,406&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">62,672&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fireproofing/firestopping</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">63,498&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">59,381&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">49,648&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Window blinds</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">61,295&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">50,255&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">46,984&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other building products</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">197,118&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">131,522&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">101,995&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net revenues, Installation</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,513,557&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">94&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,941,543&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">99&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,636,361&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">99&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">156,287&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,107&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,864&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net revenue, as reported</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,669,844&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,968,650&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,653,225&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-top:12pt;padding-left:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">(1) </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net revenue for manufacturing operations are included in the Other category for all periods presented to conform with our change in composition of operating segments.</span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock', window );">Summary of Assets and Liabilities Related to Uncompleted Contracts and Customer Deposits</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Contract assets and liabilities related to our uncompleted contracts and customer deposits were as follows (in thousands):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:74.777%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.595%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.598%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Contract assets</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29,431&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,679&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Contract liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(18,884)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(14,153)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_CostsAndEstimatedEarningsOnUncompletedContractsTableTextBlock', window );">Schedule of Cost and Estimated Earnings on Uncompleted Contracts</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Uncompleted contracts were as follows (in thousands):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:74.777%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.595%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.598%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Costs incurred on uncompleted contracts</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">273,788&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">206,050&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Estimated earnings</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">114,781&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">106,163&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">388,569&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">312,213&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: Billings to date</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">368,009&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">285,978&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net under billings</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,560&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,235&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostsInExcessOfBillingsAndBillingsInExcessOfCostsTableTextBlock', window );">Schedule of Net Under Billings</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net under billings were as follows (in thousands):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:74.777%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.595%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.598%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Costs and estimated earnings in excess of billings on uncompleted contracts (contract assets)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29,431&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,679&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Billings in excess of costs and estimated earnings on uncompleted contracts (contract liabilities)</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(8,871)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6,444)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net under billings</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,560&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,235&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ibp_CostsAndEstimatedEarningsOnUncompletedContractsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Costs And Estimated Earnings On Uncompleted Contracts Table [Text Block]</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ibp_CostsAndEstimatedEarningsOnUncompletedContractsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of receivable, contract asset, and contract liability from contract with customer. Includes, but is not limited to, change in contract asset and contract liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130551-203045<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CostsInExcessOfBillingsAndBillingsInExcessOfCostsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of long-term contract or program.</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_CostsInExcessOfBillingsAndBillingsInExcessOfCostsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisaggregationOfRevenueTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130545-203045<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisaggregationOfRevenueTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>47
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687980012896">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Credit Losses (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_CreditLossAbstract', window );"><strong>Credit Loss [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_AccountsReceivableAllowanceForCreditLossTableTextBlock', window );">Schedule Of Changes In Allowance For Credit Losses</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Changes in our allowance for credit losses were as follows (in thousands):</span></div><div><span><br/></span></div><div style="text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:67.690%"><tr><td style="width:1.0%"/><td style="width:83.565%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.235%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">January 1, 2020</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,878&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cumulative effect of change in accounting principle</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,600&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current period provision</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,444&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Recoveries collected and additions</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">503&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amounts written off</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,636)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2020</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,789&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current period provision</span></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,227&#160;</span></td><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Recoveries collected and additions</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">574&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amounts written off</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,873)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2021</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,717&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current period provision</span></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,129&#160;</span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Recoveries collected and additions</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">334&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amounts written off</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,631)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2022</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,549&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></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_AccountsReceivableAllowanceForCreditLossTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 allowance for credit loss on accounts receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 50<br> -Paragraph 13<br> -URI https://asc.fasb.org/extlink&amp;oid=124255953&amp;loc=SL82919249-210447<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock</td>
</tr>
<tr>
<td style="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_CreditLossAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CreditLossAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>48
<FILENAME>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687975811328">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Property and Equipment (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentTextBlock', window );">Schedule of Property and Equipment</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Property and equipment consisted of the following (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:76.315%"><tr><td style="width:1.0%"/><td style="width:64.608%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.757%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.569%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Land</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">108&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">108&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Buildings</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,901&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,901&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Leasehold improvements</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,620&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,935&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Furniture, fixtures and equipment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">74,175&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">64,556&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vehicles and equipment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">287,336&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">248,848&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">378,140&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">328,348&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: accumulated depreciation and amortization</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(259,366)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(222,415)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">118,774&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">105,933&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></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_ibp_PropertyPlantAndEquipmentDepreciationAllocationCategoriesTableTextBlock', window );">Schedule of Depreciation and Amortization Expense on Property and Equipment, by Income Statement Category</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We recorded the following depreciation and amortization expense on our property and equipment, by income statement category (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:65.058%"><tr><td style="width:1.0%"/><td style="width:38.225%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.450%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.923%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.450%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.698%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.454%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of sales</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">44,410&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">40,938&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39,011&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Administrative</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,873&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,623&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,328&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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_ibp_PropertyPlantAndEquipmentDepreciationAllocationCategoriesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Property plant and equipment depreciation allocation categories.</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;">ibp_PropertyPlantAndEquipmentDepreciationAllocationCategoriesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</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_PropertyPlantAndEquipmentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PropertyPlantAndEquipmentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>49
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687980118272">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill and Intangibles (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_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_ScheduleOfGoodwillTextBlock', window );">Summary of Change in Carrying Amount of Goodwill</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The change in carrying amount of goodwill by reportable segment for the year ended December&#160;31, 2021 was as follows (in thousands):</span></div><div style="margin-top:9pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:81.502%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="width:1.0%"/><td style="width:16.298%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Installation</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill (gross) - January 1, 2021</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">286,874&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Business combinations</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">105,617&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other additions</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill (gross) - December 31, 2021</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">392,521&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accumulated impairment losses</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(70,004)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill (net) - December 31, 2021</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">322,517&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The change in carrying amount of goodwill by reportable segment after the assignment of goodwill as noted above for the year ended December&#160;31, 2022 was as follows (in thousands):</span></div><div style="margin-top:9pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:59.572%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.622%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Installation</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Consolidated</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill (gross) - January 1, 2022, after change in reporting units</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">331,782&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">60,739&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">392,521&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Business combinations</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,700&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,594&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">49,294&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other additions</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,744&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,744&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill (gross) - December 31, 2022</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">355,226&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">88,333&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">443,559&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accumulated impairment losses </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(70,004)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(70,004)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill (net) - December 31, 2022</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">285,222&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">88,333&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">373,555&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock', window );">Schedule of Gross Carrying Amount, Accumulated Amortization and Net Book Value</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table provides the gross carrying amount, accumulated amortization and net book value for each major class of intangibles (in thousands):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"/><td style="width:25.732%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.483%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.483%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.483%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.483%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.483%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.488%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="33" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross<br/>Carrying<br/>Amount</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accumulated<br/>Amortization</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net<br/>Book<br/>Value</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross<br/>Carrying<br/>Amount</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accumulated<br/>Amortization</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net<br/>Book<br/>Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amortized intangibles:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">338,050&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">145,722&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">192,328&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">292,113&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">113,849&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">178,264&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Covenants not-to-compete</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,899&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,086&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,813&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,717&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,471&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,246&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trademarks and tradenames</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">119,612&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39,638&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">79,974&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">103,007&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,623&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">70,384&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Backlog</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,815&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,457&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">358&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,724&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19,197&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,527&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">509,376&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">225,903&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">283,473&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">446,561&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">182,140&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">264,421&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock', window );">Schedule of Estimated Aggregate Annual Amortization</a></td>
<td class="text">Remaining estimated aggregate annual amortization expense is as follows (in thousands):<table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:32.017%"><tr><td style="width:1.0%"/><td style="width:59.173%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:38.627%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2023</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">42,460&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2024</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">38,366&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,961&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29,010&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24,724&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">115,952&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of assets, excluding financial assets and goodwill, lacking physical substance with a finite life, by either major class or business segment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16265-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfGoodwillTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 goodwill by reportable segment and in total which includes a rollforward schedule.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (g)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1A<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=SL108378252-109267<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13854-109267<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=122137925&amp;loc=d3e14258-109268<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfGoodwillTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the amount of amortization expense expected to be recorded in succeeding fiscal years for finite-lived intangible assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>50
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687976548080">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Long-Term Debt (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_DebtDisclosureAbstract', window );"><strong>Debt Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfDebtTableTextBlock', window );">Schedule of Debt</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Long-term debt consisted of the following (in thousands):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:72.730%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.621%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Senior Notes due 2028, net of unamortized debt issuance costs of $3,036 and $3,633, respectively</span></div></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">296,964&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">296,367&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Term loan, net of unamortized debt issuance costs of $5,767 and $6,735, respectively</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">489,233&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">493,265&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vehicle and equipment notes, maturing through December 2027; payable in various monthly installments, including interest rates ranging from 1.9% to 6.1% </span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">72,984&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">69,228&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Various notes payable, maturing through April 2025; payable in various monthly installments, including interest rates ranging from 2.0% to 5.0%</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,973&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,172&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">861,154&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">863,032&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: current maturities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(30,983)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(30,839)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term debt, less current maturities</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">830,171&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">832,193&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock', window );">Schedule of Maturities of Long-term Debt</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Remaining required repayments of debt principal, gross of unamortized debt issuance costs, as of December&#160;31, 2022 are as follows (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:32.163%"><tr><td style="width:1.0%"/><td style="width:59.354%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:38.446%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2023</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,983&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2024</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,570&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19,630&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,576&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,198&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">770,000&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></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_DebtDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfDebtTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of information pertaining to short-term and long-debt instruments or arrangements, including but not limited to identification of terms, features, collateral requirements and other information necessary to a fair presentation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfDebtTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of maturity and sinking fund requirement for long-term debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=123465755&amp;loc=d3e1835-112601<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>51
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687981907440">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_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_ibp_AssetsAndLiabilitiesLesseeTableTextBlock', window );">Schedule of Lease-Related Assets and Liabilities</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The table below presents the lease-related assets and liabilities recorded on the Consolidated Balance Sheet:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:28.139%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:40.274%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.496%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.501%"/><td style="width:0.1%"/></tr><tr style="height:14pt"><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Classification</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr style="height:14pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-Current</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating&#160;lease&#160;right-of-use&#160;assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">76,174&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">69,871&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzUtMi0xLTEtMTAwMDAy_3f08309b-5457-499e-ae82-f8cdea3899fd"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzUtMi0xLTEtMTAwMDAy_b356578e-0cdd-4b5a-928c-9d4814d3c5ab">Property and equipment, net</span></span></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,928&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,266&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">85,102&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">75,137&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Liabilities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current&#160;maturities&#160;of&#160;operating&#160;lease&#160;obligations</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,145&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,224&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Financing</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current maturities of finance lease obligations</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,508&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,747&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-Current</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease obligations</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">49,789&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">46,075&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Financing</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance lease obligations</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,397&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,297&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">84,839&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">74,343&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:70.829%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.375%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted-average remaining lease term</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating leases</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.0 years</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.3 years</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance leases</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.6 years</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.3 years</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted-average discount rate</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating leases</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.41&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.38&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance leases</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.76&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.96&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeaseCostTableTextBlock', window );">Schedule of Lease Costs for Finance and Operating Leases</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The table below presents certain information related to the lease costs for finance and operating leases during 2022, 2021 and 2020:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:41.005%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:19.221%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.449%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.595%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.602%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Classification</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease cost</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"> (1)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Administrative</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,158&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,357&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,454&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance lease cost</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:6.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amortization of leased assets </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(2)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of sales</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,241&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,083&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,645&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest on finance lease obligations</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest&#160;expense,&#160;net</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">324&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">218&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">268&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease costs</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">36,723&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,658&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,367&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div><span><br/></span></div><div style="padding-left:27pt;text-indent:-27pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(1)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:15.34pt">Includes variable lease costs of $3.7 million, $3.0 million and $2.9 million for the years ended December&#160;31, 2022, 2021 and 2020, respectively, and short-term lease costs of $1.1 million, $1.1 million and $0.8 million for the years ended December&#160;31, 2022, 2021 and 2020, respectively. </span></div><div style="padding-left:27pt;text-indent:-27pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(2)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:15.34pt">Includes variable lease costs of $0.7 million for each of the three years ended December&#160;31, 2022, 2021 and 2020, respectively.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The table below presents supplemental cash flow information related to leases during 2022, 2021 and 2020:</span></div><div><span><br/></span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:62.642%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.595%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.595%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.600%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash paid for amounts included in the measurement of lease liabilities:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating cash flows for operating leases</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,710&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,930&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19,668&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating cash flows for finance leases</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">324&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">218&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">268&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Financing cash flows for finance leases</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,306&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,125&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,632&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr></table></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock', window );">Schedule of Undiscounted Cash Flows Finance Lease Obligations</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The table below reconciles the undiscounted cash flows for each of the first five years and total of the remaining years for the finance lease obligations and operating lease obligations recorded on the Consolidated Balance Sheet as of December&#160;31, 2022:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:97.953%"><tr><td style="width:1.0%"/><td style="width:43.676%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.183%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.546%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.885%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.546%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.885%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.546%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.633%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance&#160;Leases</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating Leases</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Related&#160;Party</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total&#160;Operating</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2023</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,954&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,421&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,512&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28,933&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2024</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,438&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,175&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19,222&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,397&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,075&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,017&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,837&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,854&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,745&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,114&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,114&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">774&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,252&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,252&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,559&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,559&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total minimum lease payments</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,986&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,613&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">79,496&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">83,109&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: Amounts representing executory costs</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: Amounts representing interest</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,075)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(7,175)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Present value of future minimum lease payments</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,905&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">75,934&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: Current obligation under leases</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,508)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(26,145)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term lease obligations</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,397&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">49,789&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock', window );">Schedule of Undiscounted Cash Flows Operating Lease Obligations</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The table below reconciles the undiscounted cash flows for each of the first five years and total of the remaining years for the finance lease obligations and operating lease obligations recorded on the Consolidated Balance Sheet as of December&#160;31, 2022:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:97.953%"><tr><td style="width:1.0%"/><td style="width:43.676%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.183%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.546%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.885%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.546%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.885%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.546%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.633%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance&#160;Leases</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating Leases</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(in thousands)</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Related&#160;Party</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total&#160;Operating</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2023</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,954&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,421&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,512&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28,933&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2024</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,438&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,175&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19,222&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,397&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,075&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,017&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,837&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,854&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,745&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,114&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,114&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">774&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,252&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,252&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,559&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,559&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total minimum lease payments</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,986&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,613&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">79,496&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">83,109&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: Amounts representing executory costs</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: Amounts representing interest</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,075)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(7,175)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Present value of future minimum lease payments</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,905&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">75,934&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: Current obligation under leases</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,508)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(26,145)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term lease obligations</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,397&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">49,789&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></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_ibp_AssetsAndLiabilitiesLesseeTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 supplemental balance sheet information related to 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;">ibp_AssetsAndLiabilitiesLesseeTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</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_FinanceLeaseLiabilityMaturityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of undiscounted cash flows of finance lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to finance lease liability recognized in statement of financial position.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeaseCostTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 lessee's lease cost. Includes, but is not limited to, interest expense for finance lease, amortization of right-of-use asset for finance lease, operating lease cost, short-term lease cost, variable lease cost and sublease income.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeaseCostTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>52
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687980083024">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value Measurements (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_FairValueDisclosuresAbstract', window );"><strong>Fair Value Disclosures [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock', window );">Schedule of Fair Values of Financial Assets and Liabilities</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The fair values of financial assets and liabilities that are recorded at fair value in the Consolidated Balance Sheets and not described above were as follows (in thousands):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:27.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.671%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.671%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.233%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.233%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.379%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.233%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.233%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.951%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31, 2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31, 2021</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level&#160;1</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level&#160;2</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level&#160;3</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level&#160;1</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level&#160;2</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level&#160;3</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Financial assets:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash equivalents</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">191,881&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">191,881&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">258,055&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">258,055&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Derivative financial instruments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">38,671&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">38,671&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,830&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,830&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzUtMC0xLTEtMTAwMDAy_2f118e6b-355c-4162-8970-b998a5ae5450"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzUtMC0xLTEtMTAwMDAy_70c840c6-6a79-4f97-a58a-b08f6f1bdbef">Total financial assets</span></span></span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">230,552&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">191,881&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">38,671&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">272,885&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">258,055&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,830&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Financial liabilities:</span></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Contingent consideration</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,858&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,858&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,170&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,170&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Derivative financial instruments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,937&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,937&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzktMC0xLTEtMTAwMDAy_18ae74f0-19f1-4416-a30d-86ea73bdfe06"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzktMC0xLTEtMTAwMDAy_c8d93f89-6621-4092-8404-217ee2466660">Total financial liabilities</span></span></span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,858&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,858&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,107&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,937&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,170&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock', window );">Change in Fair Value of the Contingent Consideration</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The change in fair value of the contingent consideration (a Level 3 input) was as follows (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:60.526%"><tr><td style="width:1.0%"/><td style="width:77.885%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:19.915%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Contingent consideration liability&#8212;January 1, 2022</span></div></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,170&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Preliminary purchase price</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,039&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fair value adjustments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(994)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accretion in value</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">743&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gains on acquisition earnouts</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(16,109)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Settlement adjustments</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(505)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amounts paid to sellers</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(7,486)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Contingent consideration liability&#8212;December&#160;31, 2022</span></div></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,858&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr></table></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByBalanceSheetGroupingTextBlock', window );">Summary of Carrying Values and Associated Fair Values of Financial Assets and Liabilities</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The carrying values and associated fair values of financial assets and liabilities that are not recorded at fair value in the Consolidated Balance Sheets and not described above include our Senior Notes. To estimate fair value of our Senior Notes, we utilized third-party quotes which are derived all or in part from model prices, external sources or market prices. The Senior Notes represent a Level 2 fair value measurement and are as follows (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:69.883%"><tr><td style="width:1.0%"/><td style="width:21.284%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.937%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.846%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.100%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.846%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.937%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.846%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.104%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31, 2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31, 2021</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Carrying&#160;Value</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fair&#160;Value</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Carrying&#160;Value</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fair&#160;Value</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Senior Notes </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">300,000&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">270,993&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">300,000&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">311,028&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="padding-left:27pt;text-indent:49.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(1)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:19.84pt">Excludes the impact of unamortized debt issuance costs.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByBalanceSheetGroupingTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the fair value of financial instruments, including financial assets and financial liabilities, and the measurements of those instruments, assets, and liabilities.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI https://asc.fasb.org/extlink&amp;oid=123594938&amp;loc=d3e13467-108611<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByBalanceSheetGroupingTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the fair value measurement of liabilities using significant unobservable inputs (Level 3), a reconciliation of the beginning and ending balances, separately presenting changes attributable to the following: (1) total gains or losses for the period (realized and unrealized), segregating those gains or losses included in earnings (or changes in net assets), and gains or losses recognized in other comprehensive income (loss) and a description of where those gains or losses included in earnings (or changes in net assets) are reported in the statement of income (or activities); (2) purchases, sales, issues, and settlements (each type disclosed separately); and (3) transfers in and transfers out of Level 3 (for example, transfers due to changes in the observability of significant inputs) by class of liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19279-110258<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 assets and liabilities, including [financial] instruments measured at fair value that are classified in stockholders' equity, if any, that are measured at fair value on a recurring basis. The disclosures contemplated herein include the fair value measurements at the reporting date by the level within the fair value hierarchy in which the fair value measurements in their entirety fall, segregating fair value measurements using quoted prices in active markets for identical assets (Level 1), significant other observable inputs (Level 2), and significant unobservable inputs (Level 3).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock</td>
</tr>
<tr>
<td style="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>53
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687979992288">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Information on Segments (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_SegmentReportingAbstract', window );"><strong>Segment Reporting [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock', window );">Schedule of Segment Information</a></td>
<td class="text">The following tables represents our segment information for the years ended December&#160;31, 2022, 2021 and 2020 (in thousands):<div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:38.666%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.525%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Year ended December 31, 2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Installation</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Eliminations</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Consolidated</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,513,557&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">162,433&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6,146)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,669,844&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of sales </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,678,771&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">123,705&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,826)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,797,650&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Segment gross profit</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">834,786&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">38,728&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,320)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">872,194&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Segment gross profit percentage</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33.2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23.8&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32.7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:38.666%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.525%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Year ended December 31, 2021</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Installation</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Eliminations</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Consolidated</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,941,543&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29,332&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,225)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,968,650&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of sales </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,317,739&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,155&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,701)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,338,193&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Segment gross profit</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">623,804&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,177&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(524)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">630,457&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Segment gross profit percentage</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32.1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23.6&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32.0&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:38.666%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.525%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Year ended December 31, 2020</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Installation</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Eliminations</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Consolidated</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,636,361&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,762&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(898)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,653,225&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of sales </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,092,139&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,771&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(670)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,104,240&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Segment gross profit</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">544,222&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,991&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(228)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">548,985&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Segment gross profit percentage</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33.3&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28.1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25.4&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33.2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-top:9pt;padding-left:27pt;text-indent:-27pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(1)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:15.34pt">Cost of sales included in segment gross profit is exclusive of depreciation and amortization for the years ended December&#160;31, 2022, 2021 and 2020. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The prior period disclosures in the above tables have been recast to conform to the current period segment presentation. </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The reconciliation between consolidated segment gross profit for each period as shown in the tables above to consolidated income before income taxes is as follows:</span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:53.870%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.524%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Segment gross profit - Consolidated</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">872,194&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">630,457&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">548,985&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Depreciation and amortization </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">44,410&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">40,938&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39,011&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross profit, as reported</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">827,784&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">589,519&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">509,974&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">482,373&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">401,639&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">348,107&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating income</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">345,411&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">187,880&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">161,867&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other expense, net</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">42,104&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,405&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,690&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income before income taxes</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">303,307&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">155,475&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">131,177&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div>(1)Cost of sales included in segment gross profit is exclusive of depreciation and amortization for the years ended December&#160;31, 2022, 2021 and 2020.<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 25<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8813-108599<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>54
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140688060502368">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Derivatives and Hedging Activities (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract', window );"><strong>Derivative Instruments and Hedging Activities Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock', window );">Schedule of Notional Amounts of Outstanding Derivative Positions</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2022, we had the following interest rate swap derivatives (notional amount in millions): </span></div><div style="margin-top:9pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:23.461%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:23.461%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:23.461%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:23.465%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Effective Date</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Notional Amount</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fixed Rate</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Maturity Date</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">July 30, 2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">200.0&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.51&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2025</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100.0&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.37&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2025</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100.0&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.37&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2025</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2025</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">300.0&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.09&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 14, 2028</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2025</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100.0&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.98&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 14, 2028</span></td></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December&#160;31, 2021, we had the following interest rate swap derivatives (notional amount in millions): </span></div><div style="margin-top:9pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:23.461%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:23.461%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:23.461%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:23.465%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Effective Date</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Notional Amount</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fixed Rate</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Maturity Date</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">July 30, 2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">200.0&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.51&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 15, 2030</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100.0&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.37&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2028</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100.0&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.37&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2028</span></td></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock', window );">Derivative Instruments, Gain (Loss)</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes amounts recorded to <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDUx_3580f4e1-9b51-444e-9a35-60d80703421b"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDUx_b0d386bd-7d5d-4b4d-b157-231830ca5700"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDUx_f2565731-dcbc-4849-afbc-408fac97be5e">interest expense</span></span></span>, net included in the Condensed Consolidated Statements of Operations and Comprehensive Income related to our interest rate swaps (in thousands):</span></div><div style="margin-top:9pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:53.285%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.525%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(Benefit) expense associated with swap net settlements</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,128)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">370&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,453&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expense associated with amortization of amended/terminated swaps</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,928&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,223&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,326&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the location and amount of derivative instruments and nonderivative instruments designated as hedging instruments reported before netting adjustments, and the amount of gain (loss) on derivative instruments and nonderivative instruments designated and qualified as hedging instruments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4E<br> -URI https://asc.fasb.org/extlink&amp;oid=125515794&amp;loc=SL5624181-113959<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=125515794&amp;loc=SL5618551-113959<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4C<br> -URI https://asc.fasb.org/extlink&amp;oid=125515794&amp;loc=SL5624171-113959<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 notional amounts of outstanding derivative positions.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=125515794&amp;loc=SL5579245-113959<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>55
<FILENAME>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140688060576096">
<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">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_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_ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock', window );">Schedule of Cash Flow Hedges Included in Accumulated Other Comprehensive Income (Loss)</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The change in accumulated other comprehensive income (loss) related to our interest rate derivatives, net of taxes, was as follows (in thousands):</span></div><div style="margin-top:18pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:53.285%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.525%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Year Ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accumulated loss at beginning of period</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(227)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(8,763)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(7,143)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unrealized gain (loss) in fair value of interest rate derivatives</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">37,885&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,151&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,601)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Reclassification of realized net losses to earnings</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,902&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,385&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">981&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accumulated gain (loss) at end of period </span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">40,560&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(227)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(8,763)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DividendsDeclaredTableTextBlock', window );">Schedule of Dividends</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the year ended December 31, 2022, we declared and paid the following cash dividends (amount declared and amount paid in thousands): </span></div><div style="margin-top:7pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:13.958%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.274%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.274%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.297%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.835%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.842%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Declaration Date</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Record Date</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Payment Date</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Dividend Per Share</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amount Declared</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amount Paid </span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2/24/2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3/15/2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3/31/2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.90&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,585&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,242&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2/24/2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3/15/2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3/31/2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.315&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,305&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,184&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5/5/2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6/15/2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6/30/2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.315&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,054&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,982&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8/4/2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9/15/2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9/30/2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.315&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,018&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,945&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11/03/2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12/15/2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12/31/2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.315&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,917&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,845&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the year ended December 31, 2021, we declared and paid the following cash dividends (amount declared and amount paid in thousands): </span></div><div><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:14.543%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.543%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.835%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.115%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.005%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.835%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.842%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Declaration Date</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Record Date</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Payment Date</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Dividend Per Share</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amount Declared</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amount Paid </span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2/23/2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3/15/2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3/31/2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.30&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 13pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,907</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,786&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5/5/2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6/15/2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6/30/2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.30&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 13pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,910</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,821&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8/5/2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9/15/2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9/30/2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.30&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 13pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,912</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,821&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11/4/2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12/15/2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12/31/2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.30&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 13pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,911</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,866&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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_DividendsDeclaredTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of information related to dividends declared, including paid and unpaid dividends.</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_DividendsDeclaredTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<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_ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 gain (loss) on derivative and nonderivative instruments designated and qualifying as cash flow hedge recorded in accumulated other comprehensive income (AOCI) and reclassified into earnings.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=125515794&amp;loc=SL5624171-113959<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>56
<FILENAME>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687976663488">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Employee Benefits (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_CompensationAndRetirementDisclosureAbstract', window );"><strong>Retirement Benefits [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_ibp_ScheduleOfEmployeeRelatedLiabilitiesTableTextBlock', window );">Summary of Workers' Compensation Known Claims and IBNR Reserves</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Workers&#8217; compensation known claims and IBNR reserves included on the Consolidated Balance Sheets were as follows (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:66.812%"><tr><td style="width:1.0%"/><td style="width:54.261%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.781%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.675%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.783%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 5.5pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Included in other current liabilities</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,946&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,048&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Included in other long-term liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,730&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,397</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,676&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,445&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></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_ibp_ScheduleOfInsuranceLossReservesForInsuredObligationsTableTextBlock', window );">Schedule of Insurance Receivable for Claims</a></td>
<td class="text">This receivable offsets an equal liability included within the reserve amounts noted above and was as follows (in thousands):<table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:67.105%"><tr><td style="width:1.0%"/><td style="width:54.455%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.686%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.671%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.688%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Included in other non-current assets</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,318&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,137&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></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_ScheduleOfMultiemployerPlansTableTextBlock', window );">Contributions to Multiemployer Pensions and Health and Welfare Benefit Plans</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our contributions to multiemployer pension and health and welfare benefit plans were as follows (in thousands):</span></div><div style="margin-top:7pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:70.760%"><tr><td style="width:1.0%"/><td style="width:35.057%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:19.561%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.833%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:19.561%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.626%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:19.562%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Pension plans</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,916&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,783&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,128&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Health &amp; welfare plans</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,115&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,893</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">952</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total contributions</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,031&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,676&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,080&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock', window );">Summary of Equity-Based Awards for Employees</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amounts and changes for each category of equity-based award were as follows:</span></div><div style="margin-top:5pt;padding-right:13.5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:37.350%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.555%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 4.37pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Common Stock Awards</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 3.25pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Performance-Based Stock Awards</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 4.37pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Performance-Based Restricted Stock Units</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 4.37pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Awards</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted Average Grant Date Fair Value Per Share</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 3.25pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Awards</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted Average Grant Date Fair Value Per Share</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 4.37pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Units</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted Average Grant Date Fair Value Per Share</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Nonvested awards/units at December 31, 2021</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">199,353&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">68.99&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">143,401&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">81.30&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,252&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">126.89&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">109,189&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">89.32&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">54,585&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">102.98&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,618&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">80.55&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vested</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(149,504)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">74.96&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(71,933)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">59.07&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(8,061)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">126.89&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Forfeited/Cancelled</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,921)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">79.60&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,098)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">88.61&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Nonvested awards/units at December 31, 2022</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">157,117&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">77.31&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">126,053&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">103.37&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,711&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">80.55&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock', window );">Summary of Stock Compensation Expenses</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the share-based compensation expense recognized under our 2014 Omnibus Incentive Plan (in thousands):</span></div><div><span><br/></span></div><div style="text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:84.064%"><tr><td style="width:1.0%"/><td style="width:45.334%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.291%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.291%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.294%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Common Stock Awards</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,247&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,285&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,116&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-Employee Common Stock Awards</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">547&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">465&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">333&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Performance-Based Stock Awards</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,337&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,528&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,869&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Liability Performance-Based Stock Awards</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">493&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,612&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,969&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Performance-Based Restricted Stock Units</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,192&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">862&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">539&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,816&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,752&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,826&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We recorded the following stock compensation expense, by income statement category (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:84.064%"><tr><td style="width:1.0%"/><td style="width:45.334%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.291%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.291%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.495%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.294%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of sales</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">648&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">448&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">284&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Selling</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">478&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">204&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">202&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Administrative</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,690&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,100&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,340&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,816&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,752&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,826&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock', window );">Unrecognized Share-Based Compensation Expense Related to Unvested Awards</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Unrecognized share-based compensation expense related to unvested awards was as follows (in thousands):</span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:55.332%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.391%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.393%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31, 2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unrecognized<br/>Compensation Expense<br/>on Unvested Awards</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted Average<br/>Remaining<br/>Vesting Period</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Common Stock Awards</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,259&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.7</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Performance-Based Stock Awards</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,825&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.6</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Performance-Based Restricted Stock Units</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">348&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.3</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total unrecognized compensation expense related to unvested awards</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,432&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></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_ibp_ScheduleOfEmployeeRelatedLiabilitiesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 employee related 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;">ibp_ScheduleOfEmployeeRelatedLiabilitiesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</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_ibp_ScheduleOfInsuranceLossReservesForInsuredObligationsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 insurance loss reserves for insured obligations.</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;">ibp_ScheduleOfInsuranceLossReservesForInsuredObligationsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</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_CompensationAndRetirementDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CompensationAndRetirementDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 allocation of amount expensed and capitalized for award under share-based payment arrangement to statement of income or comprehensive income and statement of financial position. Includes, but is not limited to, corresponding line item in financial statement.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfMultiemployerPlansTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of information about multiemployer 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 80<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (f)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=65877416&amp;loc=SL14450657-114947<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 80<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=65877416&amp;loc=SL14450657-114947<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 80<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=65877416&amp;loc=SL14450657-114947<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 80<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (e)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=65877416&amp;loc=SL14450657-114947<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 80<br> -Section 55<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=35742348&amp;loc=SL14450788-114948<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 80<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=65877416&amp;loc=SL14450657-114947<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 80<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=65877416&amp;loc=SL14450691-114947<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 80<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (e)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=65877416&amp;loc=SL14450657-114947<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 80<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=65877416&amp;loc=SL14450691-114947<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 80<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (f)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=65877416&amp;loc=SL14450657-114947<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 80<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=65877416&amp;loc=SL14450657-114947<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfMultiemployerPlansTableTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfNonvestedShareActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 outstanding nonvested shares.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 not yet recognized and weighted-average period over which cost is expected to be recognized for nonvested award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>57
<FILENAME>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687982003904">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock', window );">Provision for Income Taxes</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The provision for income taxes is comprised of the following (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:67.543%"><tr><td style="width:1.0%"/><td style="width:31.800%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.545%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.882%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.545%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.882%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.546%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Federal</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">55,488&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,011&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,495&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">State</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,312&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,139&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,918&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">72,800&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">37,150&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">42,413&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Federal</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,584&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(437)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(7,177)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">State</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,495&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,298)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,079&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(438)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(8,475)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total tax expense</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">79,879&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">36,712&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,938&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock', window );">Reconciliation Between Effective Tax Rate on Net Income (Loss) and Federal Statutory Tax Rate</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The reconciliation between our effective tax rate on net income and the federal statutory rate is as follows (dollars in thousands):</span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:43.344%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.648%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.648%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.655%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="33" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income tax at federal statutory rate</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">63,694&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21.0&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,650&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21.0&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,547&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21.0&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Stock compensation</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">300&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,567)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1.0)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">331&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.3&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other permanent items</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,282&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.4&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,274&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.8&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">424&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.3&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Change in valuation allowance</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(184)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.1)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(922)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.6)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(207)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.2)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Change in uncertain tax positions</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(459)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.1)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,867)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1.8)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">65&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">State income taxes, net of federal benefit</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,246&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.0&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,144&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,778&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.4&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total tax expense</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">79,879&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26.3&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">36,712&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23.6&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,938&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25.9&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock', window );">Net Deferred Tax Asset or Liability</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Components of the net deferred tax asset or liability are as follows (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:89.181%"><tr><td style="width:1.0%"/><td style="width:65.457%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.293%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.455%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.295%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred Tax Assets</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued liabilities and allowances</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,009&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,200&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Allowance for doubtful accounts</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,251&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">979</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventories</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,210&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">900</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">538&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">333&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intangibles</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,673&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,042</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net operating loss carryforwards</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">719&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,049</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 55pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term deferred tax assets</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24,415&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,517</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: Valuation allowance</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(44)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(216)</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 55pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net deferred tax assets</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24,371&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,301</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred Tax Liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued liabilities and allowances</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(640)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(669)</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(8,489)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(7,629)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intangibles</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(10,659)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6,783)</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Investment in partnership</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(31,154)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(8,271)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,067)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(793)</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 55pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term deferred tax liabilities</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(52,009)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(24,145)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net deferred tax liabilities</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(27,638)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,844)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">The above amounts are included in our Consolidated Balance Sheets as follows:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other non-current assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">820&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">975&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term deferred income tax liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(28,458)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,819)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net deferred tax liabilities</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(27,638)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,844)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock', window );">Rollforward of Gross Unrecognized Tax Benefits</a></td>
<td class="text">A rollforward of the gross unrecognized tax benefits is as follows (in thousands):<table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:79.970%"><tr><td style="width:1.0%"/><td style="width:80.618%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.182%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unrecognized tax benefit, December 31, 2019</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,717&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Increase as a result of tax positions taken during the period</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,822</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Decrease as a result of tax positions taken during the period</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,873)</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Increase as a result of expiring statutes</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unrecognized tax benefit, December 31, 2020</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,676&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Increase as a result of tax positions taken during the period</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,482</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Decrease as a result of tax positions taken during the period</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,999)</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Decrease as a result of expiring statutes</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,857)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unrecognized tax benefit, December 31, 2021</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,302&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Increase as a result of tax positions taken during the period</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,448&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Decrease as a result of tax positions taken during the period</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,863)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Increase as a result of expiring statutes</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unrecognized tax benefit, December 31, 2022</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,890&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the components of income tax expense attributable to continuing operations for each year presented including, but not limited to: current tax expense (benefit), deferred tax expense (benefit), investment tax credits, government grants, the benefits of operating loss carryforwards, tax expense that results from allocating certain tax benefits either directly to contributed capital or to reduce goodwill or other noncurrent intangible assets of an acquired entity, adjustments of a deferred tax liability or asset for enacted changes in tax laws or rates or a change in the tax status of the entity, and adjustments of the beginning-of-the-year balances of a valuation allowance because of a change in circumstances that causes a change in judgment about the realizability of the related deferred tax asset in future years.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 net deferred tax asset or liability recognized in an entity's statement of financial position, including the following: the total of all deferred tax liabilities, the total of all deferred tax assets, the total valuation allowance recognized for deferred tax assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 reconciliation using percentage or dollar amounts of the reported amount of income tax expense attributable to continuing operations for the year to the amount of income tax expense that would result from applying domestic federal statutory tax rates to pretax income from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 change in unrecognized tax benefits.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 55<br> -Paragraph 217<br> -URI https://asc.fasb.org/extlink&amp;oid=126976462&amp;loc=d3e36027-109320<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15A<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=SL6600010-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>58
<FILENAME>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687979934128">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Related Party Transactions (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_RelatedPartyTransactionsAbstract', window );"><strong>Related Party Transactions [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock', window );">Schedule of Common or Related Party Transactions</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The amount of sales to common or related parties as well as the purchases from and rent expense paid to common or related parties were as follows (in thousands):</span></div><div style="margin-top:5pt;padding-left:6.75pt;padding-right:6.75pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:64.473%"><tr><td style="width:1.0%"/><td style="width:29.058%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:21.575%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.707%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:21.575%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.707%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:21.578%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Years ended December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sales</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,793&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,452&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,987&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Purchases</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,152&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,544&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,841&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Rent</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,300&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,322&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,125&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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_RelatedPartyTransactionsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of related party transactions. Examples of related party transactions include, but are not limited to, transactions between (a) a parent company and its subsidiary; (b) subsidiaries of a common parent; (c) and entity and its principal owners and (d) affiliates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>59
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687974911200">
<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">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_ScheduleOfAccruedInsuranceReservesTableTextBlock', window );">Schedule of Accrued General Insurance Reserves</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accrued general liability and auto insurance reserves included on the Consolidated Balance Sheets were as follows (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:66.666%"><tr><td style="width:1.0%"/><td style="width:54.163%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.829%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.677%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.831%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Included in other current liabilities</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,479&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,889&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Included in other long-term liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,528&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,050&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,007&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,939&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></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_ibp_InsuranceReceivableClaimsTableTextBlock', window );">Schedule of Insurance Receivable for Claims</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We also had insurance receivables and indemnification assets included on the Consolidated Balance Sheets that, in aggregate, offset equal liabilities included within the reserve amounts noted above. The amounts were as follows (in thousands):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:72.291%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.911%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.914%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">As of December 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 4.37pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 4.37pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Insurance receivables and indemnification assets for claims under fully insured policies</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,933&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,578&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Insurance receivables for claims that exceeded the stop loss limit</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">380</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">278</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total insurance receivables and indemnification assets included in other non-current assets</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,313&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,856&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></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_ibp_InsuranceReceivableClaimsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Summary of amount of insurance receivables, booked to offset an equal general insurance liability. The probability of receiving the amount booked as a receivable is high upon the event of owing any amounts associated with the 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;">ibp_InsuranceReceivableClaimsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</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_ibp_ScheduleOfAccruedInsuranceReservesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 accrued insurance reserves.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ibp_ScheduleOfAccruedInsuranceReservesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>60
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687982126880">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Business Combinations (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 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_BusinessCombinationsAbstract', window );"><strong>Business Combinations [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock', window );">Schedule of Business Combinations</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the year ended December&#160;31, 2022 (in thousands):</span></div><div style="margin-top:9pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:21.122%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.434%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022 Acquisitions</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquisition Type</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash Paid</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Seller Obligations</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total Purchase Price</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net Income (Loss)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">CAS</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4/11/2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Share</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">55,150&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,927&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">78,077&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">37,822&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,001)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ABS</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12/19/2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Share</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,150&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">412&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,562&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">658&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(97)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Various</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asset/Share</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35,759&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,639&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39,398&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,576&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">787&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">114,059&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,978&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">141,037&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">61,056&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(311)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the year ended December&#160;31, 2021 (in thousands):</span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:21.122%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.434%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021 Acquisitions</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquisition Type</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash Paid</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Seller Obligations</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total Purchase Price</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net Income (Loss)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">IWI</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">03/01/2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Share</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">42,098&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,959&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">48,057&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">36,259&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,373&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Five Star</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9/13/2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Share</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,308&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,466&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,774&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,861&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(119)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">AMD</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12/13/2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asset</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">119,490&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,631&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">126,121&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,707&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(225)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Various </span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asset/Share</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">55,119&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,835&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">64,954&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35,604&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(390)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">243,015&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,891&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">270,906&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">82,431&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,639&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the year ended December&#160;31, 2020 (in thousands):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:21.122%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.434%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020 Acquisitions</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquisition Type</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash Paid</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Seller Obligations</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total Purchase Price</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net Income (Loss)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ICON</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10/13/2020</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asset</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,900&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,598&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,498&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,798&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">449&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Various</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asset</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">59,546&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,488&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">70,034&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35,696&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,443&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">76,446&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,086&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">90,532&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">40,494&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,892&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock', window );">Summary of Estimated Fair Value of Assets Acquired and Liabilities Assumed</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The estimated fair values of the assets acquired and liabilities assumed for the acquisitions, as well as total purchase prices and cash paid, approximated the following (in thousands):</span></div><div style="margin-top:7pt;padding-left:5.62pt;padding-right:5.62pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.122%"><tr><td style="width:1.0%"/><td style="width:46.097%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.731%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.389%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.436%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.389%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.731%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.389%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.738%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">CAS</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ABS</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Estimated fair values:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">243&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">193&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">87&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">523&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts receivable</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,502&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,777&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,800&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,079&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventories</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,784&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">853&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,456&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,093&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other current assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">576&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">485&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">71&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,132&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,590&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,269&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,498&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,357&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease right-of-use asset </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">844&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">66&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">910&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intangibles</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">34,900&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,800&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,365&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">65,065&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,594&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,546&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,154&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">49,294&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other non-current assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">56&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">56&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts payable and other current liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(5,387)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,677)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,133)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(10,197)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred income tax liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,455)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,455)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income tax payable</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(229)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(229)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other long-term liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(569)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(22)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(591)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fair value of assets acquired and purchase price</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">78,077&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,562&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39,398&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">141,037&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less seller obligations</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,927&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">412&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,639&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,978&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash paid</span></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">55,150&#160;</span></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,150&#160;</span></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35,759&#160;</span></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">114,059&#160;</span></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-top:7pt;padding-right:11.25pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:32.964%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.624%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="27" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">IWI</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Five Star</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">AMD</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Estimated fair values:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">168&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,472&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">67&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,707&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts receivable</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,122&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,583&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,393&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,584&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,682&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventories</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,157&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,399&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,540&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,786&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,882&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other current assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,014&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">330&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,975&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,319&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">796&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,161&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,133&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,124&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,214&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease right of-use-asset</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">199&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">199&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intangibles</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,200&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,400&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">52,800&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,554&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">126,954&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,282&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,626&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">56,327&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,122&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">107,357&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other non-current assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">264&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">417&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">681&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts payable and other current liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(8,416)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,170)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(184)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6,809)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(16,579)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred income tax liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,089)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,089)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other long-term liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,530)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(27)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(87)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(777)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,421)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fair value of assets acquired and purchase price</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">48,057&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,774&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">126,121&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">64,954&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">270,906&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less seller obligations</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,959&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,466&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,631&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,835&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,891&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash paid</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">42,098&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,308&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">119,490&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">55,119&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">243,015&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:59.572%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.622%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ICON</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Estimated fair values:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts receivable</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,828&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,777&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,605&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventories</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">243&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,518&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,761&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other current assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">675&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">779&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,454&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">380&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,482&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,862&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intangibles</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,830&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">34,393&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">46,223&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,870&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,435&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,305&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other non-current assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">145&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">96&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">241&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts payable and other current liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(445)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,196)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,641)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other long-term liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(28)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(250)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(278)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fair value of assets acquired and purchase price</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,498&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">70,034&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">90,532&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less seller obligations</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,598&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,488&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,086&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash paid</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,900&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">59,546&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">76,446&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedAndIndefiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTableTextBlock', window );">Estimates of Acquired Intangible Assets</a></td>
<td class="text"><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Estimates of acquired intangible assets related to the acquisitions are as follows (dollars in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"/><td style="width:30.811%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.635%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.535%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.635%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.535%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.635%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.535%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.635%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.535%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.635%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.535%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.639%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquired intangibles assets</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Estimated Fair Value</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted Average Estimated Useful Life (yrs)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Estimated Fair Value</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted Average Estimated Useful Life (yrs)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Estimated Fair Value</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted Average Estimated Useful Life (yrs)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">45,236&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">95,173&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28,307&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trademarks and trade names</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,794&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,149&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,834&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-competition agreements</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,645&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,054&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,315&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Backlog</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">390&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,578&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.5</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,767&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.5</span></td></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionProFormaInformationTextBlock', window );">Pro Forma Results of Operations</a></td>
<td class="text"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:70.467%"><tr><td style="width:1.0%"/><td style="width:42.675%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.949%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.837%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.949%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.837%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.953%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31,</span></div></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net revenue</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,732,084&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,217,592&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,922,327&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net income</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">227,108&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">135,850&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">107,791&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Basic net income per share</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.91&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.63&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.65&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted net income per share</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.87&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.59&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.63&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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_BusinessAcquisitionProFormaInformationTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 pro forma results of operations for a material business acquisition or series of individually immaterial business acquisitions that are material in the aggregate.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionProFormaInformationTextBlock</td>
</tr>
<tr>
<td style="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_BusinessCombinationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_BusinessCombinationsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedAndIndefiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of finite-lived and indefinite-lived intangible assets acquired as part of a business combination.</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_FiniteLivedAndIndefiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTableTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of a material business combination completed during the period, including background, timing, and recognized assets and liabilities. This table does not include leveraged buyouts.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1486-128463<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amounts recognized as of the acquisition date for each major class of assets acquired and liabilities assumed. May include but not limited to the following: (a) acquired receivables; (b) contingencies recognized at the acquisition date; and (c) the fair value of noncontrolling interests in the acquiree.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock</td>
</tr>
<tr>
<td style="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>61
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687976810976">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Organization - Additional Information (Detail)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>segment </div>
<div>location</div>
</th>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>location </div>
<div>reporting_unit</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>
<td class="text">&#160;<span></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_ibp_NumberOfLocationsInOperation', window );">Number of locations the company operates | location</a></td>
<td class="nump">230<span></span>
</td>
<td class="nump">230<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NumberOfOperatingSegments', window );">Number of operating segment</a></td>
<td class="nump">3<span></span>
</td>
<td class="nump">3<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NumberOfReportableSegments', window );">Number of reportable segment | segment</a></td>
<td class="nump">1<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_ibp_NumberOfLocationsInOperation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Locations In Operation</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;">ibp_NumberOfLocationsInOperation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NumberOfOperatingSegments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of operating segments. An operating segment is a component of an enterprise: (a) that engages in business activities from which it may earn revenues and incur expenses (including revenues and expenses relating to transactions with other components of the same enterprise), (b) whose operating results are regularly reviewed by the enterprise's chief operating decision maker to make decisions about resources to be allocated to the segment and assess its performance, and (c) for which discrete financial information is available. An operating segment may engage in business activities for which it has yet to earn revenues, for example, start-up operations may be operating segments before earning revenues.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8672-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NumberOfOperatingSegments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NumberOfReportableSegments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8672-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_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>62
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687970828144">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Significant Accounting Policies (Detail) - USD ($)<br></strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_AccountingPoliciesAndGeneralInformationLineItems', window );"><strong>Accounting Policies and General Information [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_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1', window );">Gains on acquisition earnouts</a></td>
<td class="num">$ (16,109,000)<span></span>
</td>
<td class="num">$ (1,035,000)<span></span>
</td>
<td class="num">$ (188,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_CashFDICInsuredAmount', window );">Amount insured by FDIC</a></td>
<td class="nump">250,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_ImpairmentOfLongLivedAssetsHeldForUse', window );">Impairment of long-lived assets</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WorkersCompensationLiabilityCurrentAndNoncurrent', window );">Insurance cost of claims</a></td>
<td class="nump">23,676,000<span></span>
</td>
<td class="nump">21,445,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdvertisingExpense', window );">Advertising expenses</a></td>
<td class="nump">4,900,000<span></span>
</td>
<td class="nump">4,600,000<span></span>
</td>
<td class="nump">3,900,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_DeferredFinanceCostsNet', window );">Deferred financing costs</a></td>
<td class="nump">10,200,000<span></span>
</td>
<td class="nump">11,400,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AmortizationOfFinancingCosts', window );">Amortization expense related to financing costs</a></td>
<td class="nump">1,900,000<span></span>
</td>
<td class="nump">1,400,000<span></span>
</td>
<td class="nump">1,300,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_WriteOffOfDeferredDebtIssuanceCost', window );">Write-off of debt issuance costs, included in interest expense</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,767,000<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_DebtRelatedFinancingCost', window );">Costs incurred associated with debt-related financing transactions</a></td>
<td class="nump">700,000<span></span>
</td>
<td class="nump">7,500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RestatementAxis=srt_RevisionOfPriorPeriodReclassificationAdjustmentMember', window );">Revision of Prior Period, Reclassification, Adjustment</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_ibp_AccountingPoliciesAndGeneralInformationLineItems', window );"><strong>Accounting Policies and General Information [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_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1', window );">Gains on acquisition earnouts</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,000,000<span></span>
</td>
<td class="nump">$ 200,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_DebtInstrumentAxis=ibp_SeniorSecuredCreditAgreementMember', window );">Senior Secured Credit Agreement</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_AccountingPoliciesAndGeneralInformationLineItems', window );"><strong>Accounting Policies and General Information [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_DeferredFinanceCostsNet', window );">Deferred financing costs</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,600,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_WriteOffOfDeferredDebtIssuanceCost', window );">Write-off of debt issuance costs, included in interest expense</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">200,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_GuaranteedInsuranceContractTypeOfGuaranteeAxis=us-gaap_WorkersCompensationInsuranceMember', window );">Workers' Compensation Insurance</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_ibp_AccountingPoliciesAndGeneralInformationLineItems', window );"><strong>Accounting Policies and General Information [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_WorkersCompensationLiabilityCurrentAndNoncurrent', window );">Insurance cost of claims</a></td>
<td class="nump">800,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_GuaranteedInsuranceContractTypeOfGuaranteeAxis=ibp_VehiclesInsuranceMember', window );">Vehicles Insurance</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_ibp_AccountingPoliciesAndGeneralInformationLineItems', window );"><strong>Accounting Policies and General Information [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_WorkersCompensationLiabilityCurrentAndNoncurrent', window );">Insurance cost of claims</a></td>
<td class="nump">$ 1,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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingMember', window );">Buildings</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_ibp_AccountingPoliciesAndGeneralInformationLineItems', window );"><strong>Accounting Policies and General Information [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_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful life</a></td>
<td class="text">30 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_srt_RangeAxis=srt_MaximumMember', window );">Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_AccountingPoliciesAndGeneralInformationLineItems', window );"><strong>Accounting Policies and General Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_RevenueFromContractWithCustomerPaymentTerms', window );">Payment terms (in days)</a></td>
<td class="text">60 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum | General Liability Insurance Program</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_ibp_AccountingPoliciesAndGeneralInformationLineItems', window );"><strong>Accounting Policies and General Information [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_WorkersCompensationLiabilityCurrentAndNoncurrent', window );">Insurance cost of claims</a></td>
<td class="nump">$ 5,000,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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_AggregateCapWorkersCompensationLiability', window );">Aggregate cap of insurance cost of claims</a></td>
<td class="nump">$ 10,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_srt_RangeAxis=srt_MaximumMember', window );">Maximum | Vehicles</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_ibp_AccountingPoliciesAndGeneralInformationLineItems', window );"><strong>Accounting Policies and General Information [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_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful life</a></td>
<td class="text">5 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_srt_RangeAxis=srt_MaximumMember', window );">Maximum | Leasehold improvements</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_ibp_AccountingPoliciesAndGeneralInformationLineItems', window );"><strong>Accounting Policies and General Information [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_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful life</a></td>
<td class="text">5 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_srt_RangeAxis=srt_MaximumMember', window );">Maximum | Furniture, fixtures and equipment</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_ibp_AccountingPoliciesAndGeneralInformationLineItems', window );"><strong>Accounting Policies and General Information [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_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful life</a></td>
<td class="text">5 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_srt_RangeAxis=srt_MinimumMember', window );">Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_AccountingPoliciesAndGeneralInformationLineItems', window );"><strong>Accounting Policies and General Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_RevenueFromContractWithCustomerPaymentTerms', window );">Payment terms (in days)</a></td>
<td class="text">30 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum | Furniture, fixtures and equipment</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_ibp_AccountingPoliciesAndGeneralInformationLineItems', window );"><strong>Accounting Policies and General Information [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_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful life</a></td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BalanceSheetLocationAxis=us-gaap_OtherNoncurrentAssetsMember', window );">Other non-current assets</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_ibp_AccountingPoliciesAndGeneralInformationLineItems', window );"><strong>Accounting Policies and General Information [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_ConstructionContractorReceivableRetainage', window );">Retainage receivables</a></td>
<td class="nump">$ 1,000,000<span></span>
</td>
<td class="nump">500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember', window );">Accounts Receivable</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_ibp_AccountingPoliciesAndGeneralInformationLineItems', window );"><strong>Accounting Policies and General Information [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_AccountsReceivableNet', window );">Accounts receivable</a></td>
<td class="nump">$ 49,800,000<span></span>
</td>
<td class="nump">$ 40,500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember', window );">Accounts Receivable | Customer Concentration Risk | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_AccountingPoliciesAndGeneralInformationLineItems', window );"><strong>Accounting Policies and General Information [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_ConcentrationRiskPercentage1', window );">Customer risk (as a percent)</a></td>
<td class="nump">3.00%<span></span>
</td>
<td class="nump">3.00%<span></span>
</td>
<td class="nump">3.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_RevenueFromContractWithCustomerMember', window );">Revenue from Contract with Customer Benchmark | Customer Concentration Risk</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_ibp_AccountingPoliciesAndGeneralInformationLineItems', window );"><strong>Accounting Policies and General Information [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_ConcentrationRiskPercentage1', window );">Customer risk (as a percent)</a></td>
<td class="nump">100.00%<span></span>
</td>
<td class="nump">100.00%<span></span>
</td>
<td class="nump">100.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_RevenueFromContractWithCustomerMember', window );">Revenue from Contract with Customer Benchmark | Customer Concentration Risk | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_AccountingPoliciesAndGeneralInformationLineItems', window );"><strong>Accounting Policies and General Information [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_ConcentrationRiskPercentage1', window );">Customer risk (as a percent)</a></td>
<td class="nump">5.00%<span></span>
</td>
<td class="nump">5.00%<span></span>
</td>
<td class="nump">5.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelationshipsMember', window );">Customer relationships | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_AccountingPoliciesAndGeneralInformationLineItems', window );"><strong>Accounting Policies and General Information [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 );">Estimated useful life</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_CustomerRelationshipsMember', window );">Customer relationships | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_AccountingPoliciesAndGeneralInformationLineItems', window );"><strong>Accounting Policies and General Information [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 );">Estimated useful life</a></td>
<td class="text">8 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_NoncompeteAgreementsMember', window );">Covenants not-to-compete | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_AccountingPoliciesAndGeneralInformationLineItems', window );"><strong>Accounting Policies and General Information [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 );">Estimated useful life</a></td>
<td class="text">5 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_NoncompeteAgreementsMember', window );">Covenants not-to-compete | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_AccountingPoliciesAndGeneralInformationLineItems', window );"><strong>Accounting Policies and General Information [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 );">Estimated useful life</a></td>
<td class="text">1 year<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_TrademarksAndTradeNamesMember', window );">Trademarks and tradenames | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_AccountingPoliciesAndGeneralInformationLineItems', window );"><strong>Accounting Policies and General Information [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 );">Estimated useful life</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_TrademarksAndTradeNamesMember', window );">Trademarks and tradenames | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_AccountingPoliciesAndGeneralInformationLineItems', window );"><strong>Accounting Policies and General Information [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 );">Estimated useful life</a></td>
<td class="text">2 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_OrderOrProductionBacklogMember', window );">Backlog | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_AccountingPoliciesAndGeneralInformationLineItems', window );"><strong>Accounting Policies and General Information [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 );">Estimated useful life</a></td>
<td class="text">36 months<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_OrderOrProductionBacklogMember', window );">Backlog | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_AccountingPoliciesAndGeneralInformationLineItems', window );"><strong>Accounting Policies and General Information [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 );">Estimated useful life</a></td>
<td class="text">12 months<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_ibp_AccountingPoliciesAndGeneralInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Accounting Policies and General Information [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;">ibp_AccountingPoliciesAndGeneralInformationLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ibp_AggregateCapWorkersCompensationLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 cap carrying value of obligations and payables pertaining to claims incurred of a workers compensation nature.</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;">ibp_AggregateCapWorkersCompensationLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ibp_DebtRelatedFinancingCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Debt Related Financing Cost.</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;">ibp_DebtRelatedFinancingCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ibp_RevenueFromContractWithCustomerPaymentTerms">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Revenue From Contract With Customer, Payment Terms</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;">ibp_RevenueFromContractWithCustomerPaymentTerms</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</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_AccountsReceivableNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 954<br> -SubTopic 310<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=126942793&amp;loc=d3e3073-115593<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdvertisingExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount charged to advertising expense for the period, which are expenses incurred with the objective of increasing revenue for a specified brand, product or product line.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 720<br> -SubTopic 35<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=6420018&amp;loc=d3e36677-107848<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdvertisingExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AmortizationOfFinancingCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense attributable to debt issuance costs.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(8))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495355-112611<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124435984&amp;loc=d3e28555-108399<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AmortizationOfFinancingCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 value of a contingent consideration liability, including, but not limited to, differences arising upon settlement.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=126975305&amp;loc=d3e7008-128479<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_CashFDICInsuredAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of cash deposited in financial institutions as of the balance sheet date that is insured by the Federal Deposit Insurance Corporation.</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_CashFDICInsuredAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ConcentrationRiskPercentage1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 an entity that discloses a concentration risk in relation to quantitative amount, which serves as the "benchmark" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9054-108599<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -URI https://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6351-108592<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI https://asc.fasb.org/extlink&amp;oid=123594938&amp;loc=d3e13531-108611<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123594938&amp;loc=d3e13537-108611<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI https://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6404-108592<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskPercentage1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConstructionContractorReceivableRetainage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of right to consideration in exchange for good or service transferred to customer withheld under retainage provision in long-term contract or program when right to consideration is unconditional.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 910<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126937589&amp;loc=SL119991598-234733<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3)(c)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConstructionContractorReceivableRetainage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredFinanceCostsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after accumulated amortization, of debt issuance costs. Includes, but is not limited to, legal, accounting, underwriting, printing, and registration costs.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495340-112611<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124435984&amp;loc=d3e28555-108399<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredFinanceCostsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate amount of write-downs for impairments recognized during the period for long lived assets held for use (including those held for disposal by means other than sale).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=109226691&amp;loc=d3e2921-110230<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=126905981&amp;loc=d3e2420-110228<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ImpairmentOfLongLivedAssetsHeldForUse</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment.</p></div>
<a href="javascript:void(0);" onclick="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_PropertyPlantAndEquipmentUsefulLife</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WorkersCompensationLiabilityCurrentAndNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 and payables pertaining to claims incurred of a workers compensation nature.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(15)(a))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(24))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WorkersCompensationLiabilityCurrentAndNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_WriteOffOfDeferredDebtIssuanceCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Write-off of amounts previously capitalized as debt issuance cost in an extinguishment of debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.8)<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WriteOffOfDeferredDebtIssuanceCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RestatementAxis=srt_RevisionOfPriorPeriodReclassificationAdjustmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RestatementAxis=srt_RevisionOfPriorPeriodReclassificationAdjustmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=ibp_SeniorSecuredCreditAgreementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=ibp_SeniorSecuredCreditAgreementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_GuaranteedInsuranceContractTypeOfGuaranteeAxis=us-gaap_WorkersCompensationInsuranceMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_GuaranteedInsuranceContractTypeOfGuaranteeAxis=us-gaap_WorkersCompensationInsuranceMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_GuaranteedInsuranceContractTypeOfGuaranteeAxis=ibp_VehiclesInsuranceMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_GuaranteedInsuranceContractTypeOfGuaranteeAxis=ibp_VehiclesInsuranceMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeAxis=ibp_GeneralLiabilityInsuranceProgramMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_GuaranteedInsuranceContractTypeOfGuaranteeAxis=ibp_GeneralLiabilityInsuranceProgramMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_VehiclesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_VehiclesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BalanceSheetLocationAxis=us-gaap_OtherNoncurrentAssetsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_BalanceSheetLocationAxis=us-gaap_OtherNoncurrentAssetsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_RevenueFromContractWithCustomerMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConcentrationRiskByBenchmarkAxis=us-gaap_RevenueFromContractWithCustomerMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelationshipsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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_CustomerRelationshipsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_NoncompeteAgreementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_NoncompeteAgreementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksAndTradeNamesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TrademarksAndTradeNamesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_OrderOrProductionBacklogMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_OrderOrProductionBacklogMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687971420064">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue Recognition - Summary of Revenues Disaggregated by End Market and Product (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 revenue</a></td>
<td class="nump">$ 2,669,844<span></span>
</td>
<td class="nump">$ 1,968,650<span></span>
</td>
<td class="nump">$ 1,653,225<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_ConcentrationRiskByBenchmarkAxis=us-gaap_RevenueFromContractWithCustomerMember', window );">Revenue from Contract with Customer Benchmark | Customer Concentration Risk</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Customer risk (as a percent)</a></td>
<td class="nump">100.00%<span></span>
</td>
<td class="nump">100.00%<span></span>
</td>
<td class="nump">100.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_RevenueFromContractWithCustomerProductAndServiceBenchmarkMember', window );">Revenue from Contract with Customer, Product and Service Benchmark | Product Concentration Risk</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Customer risk (as a percent)</a></td>
<td class="nump">100.00%<span></span>
</td>
<td class="nump">100.00%<span></span>
</td>
<td class="nump">100.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=ibp_ProductInstallationMember', window );">Net revenues, Installation</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net revenue</a></td>
<td class="nump">$ 2,513,557<span></span>
</td>
<td class="nump">$ 1,941,543<span></span>
</td>
<td class="nump">$ 1,636,361<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=ibp_ProductInstallationMember', window );">Net revenues, Installation | Revenue from Contract with Customer, Product and Service Benchmark | Product Concentration Risk</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Customer risk (as a percent)</a></td>
<td class="nump">94.00%<span></span>
</td>
<td class="nump">99.00%<span></span>
</td>
<td class="nump">99.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=ibp_InsulationMember', window );">Insulation</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net revenue</a></td>
<td class="nump">$ 1,611,037<span></span>
</td>
<td class="nump">$ 1,235,583<span></span>
</td>
<td class="nump">$ 1,041,453<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=ibp_InsulationMember', window );">Insulation | Revenue from Contract with Customer, Product and Service Benchmark | Product Concentration Risk</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Customer risk (as a percent)</a></td>
<td class="nump">61.00%<span></span>
</td>
<td class="nump">63.00%<span></span>
</td>
<td class="nump">63.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=ibp_ShowerDoorsShelvingAndMirrorsMember', window );">Shower doors, shelving and mirrors</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net revenue</a></td>
<td class="nump">$ 172,979<span></span>
</td>
<td class="nump">$ 138,797<span></span>
</td>
<td class="nump">$ 117,131<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=ibp_ShowerDoorsShelvingAndMirrorsMember', window );">Shower doors, shelving and mirrors | Revenue from Contract with Customer, Product and Service Benchmark | Product Concentration Risk</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Customer risk (as a percent)</a></td>
<td class="nump">7.00%<span></span>
</td>
<td class="nump">7.00%<span></span>
</td>
<td class="nump">7.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=ibp_GarageDoorsMember', window );">Garage doors</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net revenue</a></td>
<td class="nump">$ 168,800<span></span>
</td>
<td class="nump">$ 108,675<span></span>
</td>
<td class="nump">$ 93,516<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=ibp_GarageDoorsMember', window );">Garage doors | Revenue from Contract with Customer, Product and Service Benchmark | Product Concentration Risk</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Customer risk (as a percent)</a></td>
<td class="nump">6.00%<span></span>
</td>
<td class="nump">6.00%<span></span>
</td>
<td class="nump">6.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=ibp_WaterproofingMember', window );">Waterproofing</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net revenue</a></td>
<td class="nump">$ 124,808<span></span>
</td>
<td class="nump">$ 130,924<span></span>
</td>
<td class="nump">$ 122,962<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=ibp_WaterproofingMember', window );">Waterproofing | Revenue from Contract with Customer, Product and Service Benchmark | Product Concentration Risk</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Customer risk (as a percent)</a></td>
<td class="nump">5.00%<span></span>
</td>
<td class="nump">6.00%<span></span>
</td>
<td class="nump">7.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=ibp_RainGuttersMember', window );">Rain gutters</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net revenue</a></td>
<td class="nump">$ 114,022<span></span>
</td>
<td class="nump">$ 86,406<span></span>
</td>
<td class="nump">$ 62,672<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=ibp_RainGuttersMember', window );">Rain gutters | Revenue from Contract with Customer, Product and Service Benchmark | Product Concentration Risk</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Customer risk (as a percent)</a></td>
<td class="nump">4.00%<span></span>
</td>
<td class="nump">4.00%<span></span>
</td>
<td class="nump">4.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=ibp_FireproofingAndFirestoppingMember', window );">Fireproofing/firestopping</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net revenue</a></td>
<td class="nump">$ 63,498<span></span>
</td>
<td class="nump">$ 59,381<span></span>
</td>
<td class="nump">$ 49,648<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=ibp_FireproofingAndFirestoppingMember', window );">Fireproofing/firestopping | Revenue from Contract with Customer, Product and Service Benchmark | Product Concentration Risk</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Customer risk (as a percent)</a></td>
<td class="nump">2.00%<span></span>
</td>
<td class="nump">3.00%<span></span>
</td>
<td class="nump">3.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=ibp_WindowBlindsMember', window );">Window blinds</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net revenue</a></td>
<td class="nump">$ 61,295<span></span>
</td>
<td class="nump">$ 50,255<span></span>
</td>
<td class="nump">$ 46,984<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=ibp_WindowBlindsMember', window );">Window blinds | Revenue from Contract with Customer, Product and Service Benchmark | Product Concentration Risk</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Customer risk (as a percent)</a></td>
<td class="nump">2.00%<span></span>
</td>
<td class="nump">3.00%<span></span>
</td>
<td class="nump">3.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=ibp_OtherBuildingProductsMember', window );">Other building products</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net revenue</a></td>
<td class="nump">$ 197,118<span></span>
</td>
<td class="nump">$ 131,522<span></span>
</td>
<td class="nump">$ 101,995<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=ibp_OtherBuildingProductsMember', window );">Other building products | Revenue from Contract with Customer, Product and Service Benchmark | Product Concentration Risk</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Customer risk (as a percent)</a></td>
<td class="nump">7.00%<span></span>
</td>
<td class="nump">7.00%<span></span>
</td>
<td class="nump">6.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=ibp_OtherProductInstallationMember', window );">Other</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net revenue</a></td>
<td class="nump">$ 156,287<span></span>
</td>
<td class="nump">$ 27,107<span></span>
</td>
<td class="nump">$ 16,864<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=ibp_OtherProductInstallationMember', window );">Other | Revenue from Contract with Customer, Product and Service Benchmark | Product Concentration Risk</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Customer risk (as a percent)</a></td>
<td class="nump">6.00%<span></span>
</td>
<td class="nump">1.00%<span></span>
</td>
<td class="nump">1.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_MajorCustomersAxis=ibp_CustomerInstallationMember', window );">Net revenue, Installation</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net revenue</a></td>
<td class="nump">$ 2,513,557<span></span>
</td>
<td class="nump">$ 1,941,543<span></span>
</td>
<td class="nump">$ 1,636,361<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_MajorCustomersAxis=ibp_CustomerInstallationMember', window );">Net revenue, Installation | Revenue from Contract with Customer Benchmark | Customer Concentration Risk</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Customer risk (as a percent)</a></td>
<td class="nump">94.00%<span></span>
</td>
<td class="nump">99.00%<span></span>
</td>
<td class="nump">99.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_MajorCustomersAxis=ibp_ResidentialNewConstructionMember', window );">Residential new construction</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net revenue</a></td>
<td class="nump">$ 1,980,253<span></span>
</td>
<td class="nump">$ 1,488,674<span></span>
</td>
<td class="nump">$ 1,230,955<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_MajorCustomersAxis=ibp_ResidentialNewConstructionMember', window );">Residential new construction | Revenue from Contract with Customer Benchmark | Customer Concentration Risk</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Customer risk (as a percent)</a></td>
<td class="nump">74.00%<span></span>
</td>
<td class="nump">76.00%<span></span>
</td>
<td class="nump">75.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_MajorCustomersAxis=ibp_RepairAndRemodelMember', window );">Repair and remodel</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net revenue</a></td>
<td class="nump">$ 151,761<span></span>
</td>
<td class="nump">$ 121,594<span></span>
</td>
<td class="nump">$ 106,486<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_MajorCustomersAxis=ibp_RepairAndRemodelMember', window );">Repair and remodel | Revenue from Contract with Customer Benchmark | Customer Concentration Risk</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Customer risk (as a percent)</a></td>
<td class="nump">6.00%<span></span>
</td>
<td class="nump">6.00%<span></span>
</td>
<td class="nump">6.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_MajorCustomersAxis=ibp_CommercialMember', window );">Commercial</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net revenue</a></td>
<td class="nump">$ 381,543<span></span>
</td>
<td class="nump">$ 331,275<span></span>
</td>
<td class="nump">$ 298,920<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_MajorCustomersAxis=ibp_CommercialMember', window );">Commercial | Revenue from Contract with Customer Benchmark | Customer Concentration Risk</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Customer risk (as a percent)</a></td>
<td class="nump">14.00%<span></span>
</td>
<td class="nump">17.00%<span></span>
</td>
<td class="nump">18.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_MajorCustomersAxis=ibp_OtherCustomerInstallationMember', window );">Other</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net revenue</a></td>
<td class="nump">$ 156,287<span></span>
</td>
<td class="nump">$ 27,107<span></span>
</td>
<td class="nump">$ 16,864<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_MajorCustomersAxis=ibp_OtherCustomerInstallationMember', window );">Other | Revenue from Contract with Customer Benchmark | Customer Concentration Risk</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Customer risk (as a percent)</a></td>
<td class="nump">6.00%<span></span>
</td>
<td class="nump">1.00%<span></span>
</td>
<td class="nump">1.00%<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_ConcentrationRiskPercentage1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 an entity that discloses a concentration risk in relation to quantitative amount, which serves as the "benchmark" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9054-108599<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -URI https://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6351-108592<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI https://asc.fasb.org/extlink&amp;oid=123594938&amp;loc=d3e13531-108611<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123594938&amp;loc=d3e13537-108611<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI https://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6404-108592<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskPercentage1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisaggregationOfRevenueLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisaggregationOfRevenueLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9031-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9038-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130543-203045<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9054-108599<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130545-203045<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI https://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ConcentrationRiskByBenchmarkAxis=us-gaap_RevenueFromContractWithCustomerMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConcentrationRiskByBenchmarkAxis=us-gaap_RevenueFromContractWithCustomerMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_RevenueFromContractWithCustomerProductAndServiceBenchmarkMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConcentrationRiskByBenchmarkAxis=us-gaap_RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_ProductConcentrationRiskMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConcentrationRiskByTypeAxis=us-gaap_ProductConcentrationRiskMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=ibp_ProductInstallationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=ibp_ProductInstallationMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=ibp_InsulationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=ibp_InsulationMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=ibp_ShowerDoorsShelvingAndMirrorsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=ibp_ShowerDoorsShelvingAndMirrorsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=ibp_GarageDoorsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=ibp_GarageDoorsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=ibp_WaterproofingMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=ibp_WaterproofingMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=ibp_RainGuttersMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=ibp_RainGuttersMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=ibp_FireproofingAndFirestoppingMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=ibp_FireproofingAndFirestoppingMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=ibp_WindowBlindsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=ibp_WindowBlindsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=ibp_OtherBuildingProductsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=ibp_OtherBuildingProductsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=ibp_OtherProductInstallationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=ibp_OtherProductInstallationMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_MajorCustomersAxis=ibp_CustomerInstallationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_MajorCustomersAxis=ibp_CustomerInstallationMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_MajorCustomersAxis=ibp_ResidentialNewConstructionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_MajorCustomersAxis=ibp_ResidentialNewConstructionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_MajorCustomersAxis=ibp_RepairAndRemodelMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_MajorCustomersAxis=ibp_RepairAndRemodelMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_MajorCustomersAxis=ibp_CommercialMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_MajorCustomersAxis=ibp_CommercialMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_MajorCustomersAxis=ibp_OtherCustomerInstallationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_MajorCustomersAxis=ibp_OtherCustomerInstallationMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>64
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687980133840">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Revenue Recognition - Summary of Assets and Liabilities Related to Uncompleted Contracts and Customer Deposits (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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_ContractWithCustomerAssetNet', window );">Contract assets</a></td>
<td class="nump">$ 29,431<span></span>
</td>
<td class="nump">$ 32,679<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiability', window );">Contract liabilities</a></td>
<td class="num">$ (18,884)<span></span>
</td>
<td class="num">$ (14,153)<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_ContractWithCustomerAssetNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130549-203045<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=126919976&amp;loc=SL49130531-203044<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=126919976&amp;loc=SL49130533-203044<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerAssetNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=126919976&amp;loc=SL49130531-203044<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130549-203045<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126919976&amp;loc=SL49130532-203044<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>65
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687970818368">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Revenue Recognition - Schedule of Cost and Estimated Earnings on Uncompleted Contracts (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_CostsIncurredOnUncompletedContracts', window );">Costs incurred on uncompleted contracts</a></td>
<td class="nump">$ 273,788<span></span>
</td>
<td class="nump">$ 206,050<span></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_ibp_EstimatedEarningsOnLongTermContracts', window );">Estimated earnings</a></td>
<td class="nump">114,781<span></span>
</td>
<td class="nump">106,163<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_ReceivablesLongTermContractsOrPrograms', window );">Total</a></td>
<td class="nump">388,569<span></span>
</td>
<td class="nump">312,213<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BilledContractReceivables', window );">Less: Billings to date</a></td>
<td class="nump">368,009<span></span>
</td>
<td class="nump">285,978<span></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_ibp_CostAndEstimatedEarningsUnderOverBillingsNet', window );">Net under billings</a></td>
<td class="nump">$ 20,560<span></span>
</td>
<td class="nump">$ 26,235<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ibp_CostAndEstimatedEarningsUnderOverBillingsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cost and estimated earnings under or over billings net.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ibp_CostAndEstimatedEarningsUnderOverBillingsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ibp_CostsIncurredOnUncompletedContracts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Costs incurred on uncompleted contracts.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ibp_CostsIncurredOnUncompletedContracts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ibp_EstimatedEarningsOnLongTermContracts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Estimated earnings on long term contracts.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ibp_EstimatedEarningsOnLongTermContracts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_BilledContractReceivables">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amounts due for billed services rendered or to be rendered, actions taken or to be taken, or a promise to refrain from taking certain actions in accordance with the terms of a legally binding agreement between the Company and, at a minimum, one other party. An example would be amounts billed to customers under contracts or programs but not paid as of the balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 912<br> -SubTopic 310<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126938201&amp;loc=d3e55302-109406<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BilledContractReceivables</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ReceivablesLongTermContractsOrPrograms">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount to be collected within one year of the balance sheet date (or one operating cycle, if longer) from customers in accordance with the contractual provisions of long-term contracts or programs including amounts billed and unbilled as of the balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3)(c))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReceivablesLongTermContractsOrPrograms</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>66
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687974937536">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Revenue Recognition - Schedule of Net Under (Over) Billings (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts', window );">Costs and estimated earnings in excess of billings on uncompleted contracts (contract assets)</a></td>
<td class="nump">$ 29,431<span></span>
</td>
<td class="nump">$ 32,679<span></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_ibp_BillingsInExcessOfCostOnUncompletedContracts', window );">Billings in excess of costs and estimated earnings on uncompleted contracts (contract liabilities)</a></td>
<td class="num">(8,871)<span></span>
</td>
<td class="num">(6,444)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_CostAndEstimatedEarningsUnderOverBillingsNet', window );">Net under billings</a></td>
<td class="nump">$ 20,560<span></span>
</td>
<td class="nump">$ 26,235<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ibp_BillingsInExcessOfCostOnUncompletedContracts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Billings In Excess Of Cost On Uncompleted Contracts</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ibp_BillingsInExcessOfCostOnUncompletedContracts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ibp_CostAndEstimatedEarningsUnderOverBillingsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cost and estimated earnings under or over billings net.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ibp_CostAndEstimatedEarningsUnderOverBillingsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ibp_CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Costs And Estimated Earnings In Excess Of Billing On Uncompleted Contracts</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ibp_CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>67
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687981506976">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue Recognition - Additional Information (Detail) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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_ContractWithCustomerLiabilityRevenueRecognized', window );">Contract liability revenue recognized</a></td>
<td class="nump">$ 13,700,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_CapitalizedContractCostImpairmentLoss', window );">Impairment losses on receivables and contract assets</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_RevenueRemainingPerformanceObligation', window );">Transaction price allocated to uncompleted contracts</a></td>
<td class="nump">$ 162,300,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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2023-01-01', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2023-01-01</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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems', window );"><strong>Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1', window );">Expected time of revenue recognition</a></td>
<td class="text">18 months<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_CapitalizedContractCostImpairmentLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 impairment loss for asset recognized from cost incurred to obtain or fulfill contract with customer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 340<br> -SubTopic 40<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126905575&amp;loc=SL49131252-203054<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CapitalizedContractCostImpairmentLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ContractWithCustomerLiabilityRevenueRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130549-203045<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiabilityRevenueRecognized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_RevenueRemainingPerformanceObligation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of transaction price allocated to performance obligation that has not been recognized as revenue.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130556-203045<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Period in which remaining performance obligation is expected to be recognized as revenue, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130556-203045<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2023-01-01">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2023-01-01</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>68
<FILENAME>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687975880416">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Credit Losses - Additional Information (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Jan. 01, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems', window );"><strong>Financing Receivable, Allowance for Credit Loss [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Stockholders' equity</a></td>
<td class="num">$ (493,499)<span></span>
</td>
<td class="num">$ (416,840)<span></span>
</td>
<td class="num">$ (319,182)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (250,031)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=us-gaap_RetainedEarningsMember', window );">Retained Earnings</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_FinancingReceivableAllowanceForCreditLossesLineItems', window );"><strong>Financing Receivable, Allowance for Credit Loss [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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 );">Stockholders' equity</a></td>
<td class="num">$ (513,095)<span></span>
</td>
<td class="num">$ (352,543)<span></span>
</td>
<td class="num">$ (269,420)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(173,371)<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_CumulativeEffectPeriodOfAdoptionAxis=srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember', window );">Cumulative Effect, Period of Adoption, Adjustment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems', window );"><strong>Financing Receivable, Allowance for Credit Loss [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Stockholders' equity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,190<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_CumulativeEffectPeriodOfAdoptionAxis=srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember', window );">Cumulative Effect, Period of Adoption, Adjustment | Retained Earnings</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_FinancingReceivableAllowanceForCreditLossesLineItems', window );"><strong>Financing Receivable, Allowance for Credit Loss [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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 );">Stockholders' equity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,190<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_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201613Member', window );">Accounting Standards Update 2016-13</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_FinancingReceivableAllowanceForCreditLossesLineItems', window );"><strong>Financing Receivable, Allowance for Credit Loss [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxAssetsNet', window );">Cumulative effect on retained earnings, tax</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 400<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201613Member', window );">Accounting Standards Update 2016-13 | Cumulative Effect, Period of Adoption, Adjustment | Retained Earnings</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_FinancingReceivableAllowanceForCreditLossesLineItems', window );"><strong>Financing Receivable, Allowance for Credit Loss [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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 );">Stockholders' equity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,200<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_DeferredIncomeTaxAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e31931-109318<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e31917-109318<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_FinancingReceivableAllowanceForCreditLossesLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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>Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -URI https://asc.fasb.org/extlink&amp;oid=122038336&amp;loc=d3e74512-122707<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_StatementEquityComponentsAxis=us-gaap_RetainedEarningsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_RetainedEarningsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_CumulativeEffectPeriodOfAdoptionAxis=srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CumulativeEffectPeriodOfAdoptionAxis=srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201613Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201613Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>69
<FILENAME>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687976157040">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Credit Losses - Schedule of Changes in Allowance for Credit Losses (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward', window );"><strong>Accounts Receivable, Allowance for Credit Loss [Roll Forward]</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_AllowanceForDoubtfulAccountsReceivable', window );">Beginning balance</a></td>
<td class="nump">$ 8,717<span></span>
</td>
<td class="nump">$ 8,789<span></span>
</td>
<td class="nump">$ 6,878<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProvisionForDoubtfulAccounts', window );">Current period provision</a></td>
<td class="nump">4,129<span></span>
</td>
<td class="nump">2,227<span></span>
</td>
<td class="nump">4,444<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries', window );">Recoveries collected and additions</a></td>
<td class="nump">334<span></span>
</td>
<td class="nump">574<span></span>
</td>
<td class="nump">503<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs', window );">Amounts written off</a></td>
<td class="num">(3,631)<span></span>
</td>
<td class="num">(2,873)<span></span>
</td>
<td class="num">(4,636)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivable', window );">Ending balance</a></td>
<td class="nump">$ 9,549<span></span>
</td>
<td class="nump">$ 8,717<span></span>
</td>
<td class="nump">8,789<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_CumulativeEffectPeriodOfAdoptionAxis=srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember', window );">Cumulative Effect, Period of Adoption, Adjustment | Accounting Standards Update 2016-13</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_AllowanceForDoubtfulAccountsReceivableRollforward', window );"><strong>Accounts Receivable, Allowance for Credit Loss [Roll Forward]</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_AllowanceForDoubtfulAccountsReceivable', window );">Beginning balance</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,600<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_AllowanceForDoubtfulAccountsReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of allowance for credit loss on accounts receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124255953&amp;loc=SL82919249-210447<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=d3e5074-111524<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=124255953&amp;loc=SL82919249-210447<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=124255206&amp;loc=SL82895884-210446<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 allowance for credit loss on accounts receivable, from recovery.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=124255953&amp;loc=SL82919249-210447<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of direct write-downs of accounts receivable charged against the allowance.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=124255953&amp;loc=SL82919249-210447<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProvisionForDoubtfulAccounts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expense (reversal of expense) for expected credit loss on accounts receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124255953&amp;loc=SL82919249-210447<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProvisionForDoubtfulAccounts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_CumulativeEffectPeriodOfAdoptionAxis=srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CumulativeEffectPeriodOfAdoptionAxis=srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201613Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201613Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>70
<FILENAME>R57.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687981875456">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Cash and Cash Equivalents - Additional Information (Detail) - USD ($)<br> $ in Millions</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract', window );"><strong>Investments, Debt and Equity Securities [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_MoneyMarketFundsAtCarryingValue', window );">Cash and cash equivalents</a></td>
<td class="nump">$ 191.9<span></span>
</td>
<td class="nump">$ 258.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_InvestmentsDebtAndEquitySecuritiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_InvestmentsDebtAndEquitySecuritiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MoneyMarketFundsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Investment in short-term money-market instruments (such as commercial paper, banker's acceptances, repurchase agreements, government securities, certificates of deposit, and so forth) which are highly liquid (that is, readily convertible to known amounts of cash) and so near their maturity that they present an insignificant risk of changes in value because of changes in interest rates. Generally, only investments with original maturities of three months or less qualify as cash equivalents by definition. Original maturity means an original maturity to the entity holding the investment. For example, both a three-month US Treasury bill and a three-year Treasury note purchased three months from maturity qualify as cash equivalents. However, a Treasury note purchased three-years ago does not become a cash equivalent when its remaining maturity is three months.</p></div>
<a href="javascript:void(0);" onclick="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_MoneyMarketFundsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>71
<FILENAME>R58.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687975252032">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Property and Equipment - Schedule of Property and Equipment (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization', window );">Property and equipment, gross</a></td>
<td class="nump">$ 378,140<span></span>
</td>
<td class="nump">$ 328,348<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization', window );">Less: accumulated depreciation and amortization</a></td>
<td class="num">(259,366)<span></span>
</td>
<td class="num">(222,415)<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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization', window );">Property and equipment, net</a></td>
<td class="nump">118,774<span></span>
</td>
<td class="nump">105,933<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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LandMember', window );">Land</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization', window );">Property and equipment, gross</a></td>
<td class="nump">108<span></span>
</td>
<td class="nump">108<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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingMember', window );">Buildings</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization', window );">Property and equipment, gross</a></td>
<td class="nump">3,901<span></span>
</td>
<td class="nump">3,901<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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember', window );">Leasehold improvements</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization', window );">Property and equipment, gross</a></td>
<td class="nump">12,620<span></span>
</td>
<td class="nump">10,935<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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember', window );">Furniture, fixtures and equipment</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization', window );">Property and equipment, gross</a></td>
<td class="nump">74,175<span></span>
</td>
<td class="nump">64,556<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_PropertyPlantAndEquipmentByTypeAxis=ibp_VehiclesAndEquipmentMember', window );">Vehicles and equipment</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization', window );">Property and equipment, gross</a></td>
<td class="nump">$ 287,336<span></span>
</td>
<td class="nump">$ 248,848<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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated depreciation and amortization from plant, property, and equipment and right-of-use asset from finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918638-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 and amortization, of property, plant, and equipment and finance lease right-of-use asset.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before accumulated depreciation and amortization, of property, plant, and equipment and finance lease right-of-use asset.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(18))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_PropertyPlantAndEquipmentLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LandMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LandMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=ibp_VehiclesAndEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PropertyPlantAndEquipmentByTypeAxis=ibp_VehiclesAndEquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>72
<FILENAME>R59.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687975252656">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Property and Equipment - Schedule of Depreciation and Amortization Expense on Property and Equipment, by Income Statement Category (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationAndAmortization', window );">Depreciation and amortization expense</a></td>
<td class="nump">$ 47,283<span></span>
</td>
<td class="nump">$ 43,562<span></span>
</td>
<td class="nump">$ 41,339<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_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember', window );">Cost of sales</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationAndAmortization', window );">Depreciation and amortization expense</a></td>
<td class="nump">44,410<span></span>
</td>
<td class="nump">40,938<span></span>
</td>
<td class="nump">39,011<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_IncomeStatementLocationAxis=us-gaap_GeneralAndAdministrativeExpenseMember', window );">Administrative</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationAndAmortization', window );">Depreciation and amortization expense</a></td>
<td class="nump">$ 2,873<span></span>
</td>
<td class="nump">$ 2,623<span></span>
</td>
<td class="nump">$ 2,328<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_DepreciationAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The current period expense charged against earnings on long-lived, physical assets not used in production, and which are not intended for resale, to allocate or recognize the cost of such assets over their useful lives; or to record the reduction in book value of an intangible asset over the benefit period of such asset; or to reflect consumption during the period of an asset that is not used in production.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DepreciationAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_PropertyPlantAndEquipmentLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_GeneralAndAdministrativeExpenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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_IncomeStatementLocationAxis=us-gaap_GeneralAndAdministrativeExpenseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>73
<FILENAME>R60.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687975093168">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill and Intangibles - Summary of Change in Carrying Amount of Goodwill (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillRollForward', window );"><strong>Goodwill [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillGross', window );">Goodwill (Gross), beginning balance</a></td>
<td class="nump">$ 392,521<span></span>
</td>
<td class="nump">$ 286,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_GoodwillAcquiredDuringPeriod', window );">Business combinations</a></td>
<td class="nump">49,294<span></span>
</td>
<td class="nump">105,617<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillOtherIncreaseDecrease', window );">Other additions</a></td>
<td class="nump">1,744<span></span>
</td>
<td class="nump">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_GoodwillGross', window );">Goodwill (Gross), ending balance</a></td>
<td class="nump">443,559<span></span>
</td>
<td class="nump">392,521<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillImpairedAccumulatedImpairmentLoss', window );">Accumulated impairment losses</a></td>
<td class="num">(70,004)<span></span>
</td>
<td class="num">(70,004)<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_Goodwill', window );">Goodwill (net)</a></td>
<td class="nump">373,555<span></span>
</td>
<td class="nump">322,517<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=ibp_InstallationSegmentMember', window );">Installation</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_GoodwillRollForward', window );"><strong>Goodwill [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillGross', window );">Goodwill (Gross), beginning balance</a></td>
<td class="nump">331,782<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAcquiredDuringPeriod', window );">Business combinations</a></td>
<td class="nump">21,700<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillOtherIncreaseDecrease', window );">Other additions</a></td>
<td class="nump">1,744<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillGross', window );">Goodwill (Gross), ending balance</a></td>
<td class="nump">355,226<span></span>
</td>
<td class="nump">331,782<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillImpairedAccumulatedImpairmentLoss', window );">Accumulated impairment losses</a></td>
<td class="num">(70,004)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill (net)</a></td>
<td class="nump">285,222<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=ibp_OtherSegmentMember', window );">Other</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_GoodwillRollForward', window );"><strong>Goodwill [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillGross', window );">Goodwill (Gross), beginning balance</a></td>
<td class="nump">60,739<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAcquiredDuringPeriod', window );">Business combinations</a></td>
<td class="nump">27,594<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillGross', window );">Goodwill (Gross), ending balance</a></td>
<td class="nump">88,333<span></span>
</td>
<td class="nump">$ 60,739<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_Goodwill', window );">Goodwill (net)</a></td>
<td class="nump">$ 88,333<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_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 an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=122137925&amp;loc=d3e14258-109268<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13770-109266<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(15))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_GoodwillAcquiredDuringPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized resulting from a business combination.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=122137925&amp;loc=d3e14258-109268<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAcquiredDuringPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_GoodwillGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=122137925&amp;loc=d3e14258-109268<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_GoodwillImpairedAccumulatedImpairmentLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 impairment loss for an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=122137925&amp;loc=d3e14258-109268<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillImpairedAccumulatedImpairmentLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_GoodwillOtherIncreaseDecrease">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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), classified as other, of an asset representing the future economic benefits from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (g)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillOtherIncreaseDecrease</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_GoodwillRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=ibp_InstallationSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=ibp_InstallationSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=ibp_OtherSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=ibp_OtherSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>74
<FILENAME>R61.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687976756624">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill and Intangibles - Additional Information (Detail)<br></strong></div></th>
<th class="th" colspan="5">12 Months Ended</th>
</tr>
<tr>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>USD ($) </div>
<div>reporting_unit</div>
</th>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>USD ($) </div>
<div>segment</div>
</th>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($) </div>
<div>reporting_unit</div>
</th>
<th class="th">
<div>Dec. 31, 2020 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<td class="text">&#160;<span></span>
</td>
<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_GoodwillImpairmentLoss', window );">Goodwill impairment</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="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_ImpairmentOfIntangibleAssetsFinitelived', window );">Intangible asset impairment</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="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_FiniteLivedIntangibleAssetsPeriodIncreaseDecrease', window );">Increase in gross carrying amount of intangibles</a></td>
<td class="nump">62,800,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">130,100,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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Intangibles on business combination</a></td>
<td class="nump">65,100,000<span></span>
</td>
<td class="nump">$ 65,100,000<span></span>
</td>
<td class="nump">$ 65,100,000<span></span>
</td>
<td class="nump">130,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AmortizationOfIntangibleAssets', window );">Amortization of intangibles</a></td>
<td class="nump">43,763,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">37,079,000<span></span>
</td>
<td class="nump">$ 28,535,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_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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Intangibles</a></td>
<td class="nump">65,100,000<span></span>
</td>
<td class="nump">$ 65,100,000<span></span>
</td>
<td class="nump">$ 65,100,000<span></span>
</td>
<td class="nump">$ 130,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NumberOfOperatingSegments', window );">Number of operating segment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3<span></span>
</td>
<td class="nump">3<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NumberOfReportingUnits', window );">Number of Reporting Units | reporting_unit</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=ibp_DenisonGlassAndMirrorMember', window );">Denison Glass and Mirror</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Goodwill and Intangible Assets Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillPurchaseAccountingAdjustments', window );">Goodwill adjustments</a></td>
<td class="nump">1,600,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RestatementAxis=srt_RestatementAdjustmentMember', window );">Adjustment | Denison Glass and Mirror</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Goodwill and Intangible Assets Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Intangibles on business combination</a></td>
<td class="nump">3,000,000<span></span>
</td>
<td class="nump">$ 3,000,000<span></span>
</td>
<td class="nump">$ 3,000,000<span></span>
</td>
<td class="nump">$ 3,000,000.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_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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Intangibles</a></td>
<td class="nump">$ 3,000,000<span></span>
</td>
<td class="nump">$ 3,000,000<span></span>
</td>
<td class="nump">$ 3,000,000<span></span>
</td>
<td class="nump">$ 3,000,000.0<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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16225-109274<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 intangible assets, excluding goodwill, acquired at the acquisition date.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FiniteLivedIntangibleAssetsPeriodIncreaseDecrease">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 carrying value 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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsPeriodIncreaseDecrease</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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_GoodwillImpairmentLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 loss from the write-down of an asset representing the future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13854-109267<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13777-109266<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=122137925&amp;loc=d3e14258-109268<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillImpairmentLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_GoodwillPurchaseAccountingAdjustments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) from adjustments after acquisition date under purchase accounting of an asset representing the future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (g)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 25<br> -Paragraph 16<br> -URI https://asc.fasb.org/extlink&amp;oid=123586518&amp;loc=d3e961-128460<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillPurchaseAccountingAdjustments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ImpairmentOfIntangibleAssetsFinitelived">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 impairment loss recognized in the period resulting from the write-down of the carrying amount of a finite-lived intangible asset to fair value.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16373-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ImpairmentOfIntangibleAssetsFinitelived</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_NumberOfOperatingSegments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of operating segments. An operating segment is a component of an enterprise: (a) that engages in business activities from which it may earn revenues and incur expenses (including revenues and expenses relating to transactions with other components of the same enterprise), (b) whose operating results are regularly reviewed by the enterprise's chief operating decision maker to make decisions about resources to be allocated to the segment and assess its performance, and (c) for which discrete financial information is available. An operating segment may engage in business activities for which it has yet to earn revenues, for example, start-up operations may be operating segments before earning revenues.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8672-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NumberOfOperatingSegments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NumberOfReportingUnits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 reporting units tested for impairment of goodwill. A reporting unit is an operating segment or one level below an operating segment.</p></div>
<a href="javascript:void(0);" onclick="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_NumberOfReportingUnits</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=ibp_DenisonGlassAndMirrorMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=ibp_DenisonGlassAndMirrorMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RestatementAxis=srt_RestatementAdjustmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RestatementAxis=srt_RestatementAdjustmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>75
<FILENAME>R62.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687976516672">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Goodwill and Intangibles - Schedule of Gross Carrying Amount and Accumulated Amortization (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Amount</a></td>
<td class="nump">$ 509,376<span></span>
</td>
<td class="nump">$ 446,561<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="nump">225,903<span></span>
</td>
<td class="nump">182,140<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_FiniteLivedIntangibleAssetsNet', window );">Net Book Value</a></td>
<td class="nump">283,473<span></span>
</td>
<td class="nump">264,421<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_CustomerRelationshipsMember', window );">Customer relationships</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Amount</a></td>
<td class="nump">338,050<span></span>
</td>
<td class="nump">292,113<span></span>
</td>
</tr>
<tr class="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">145,722<span></span>
</td>
<td class="nump">113,849<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Book Value</a></td>
<td class="nump">192,328<span></span>
</td>
<td class="nump">178,264<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_NoncompeteAgreementsMember', window );">Covenants not-to-compete</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Amount</a></td>
<td class="nump">30,899<span></span>
</td>
<td class="nump">27,717<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="nump">20,086<span></span>
</td>
<td class="nump">16,471<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_FiniteLivedIntangibleAssetsNet', window );">Net Book Value</a></td>
<td class="nump">10,813<span></span>
</td>
<td class="nump">11,246<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_TrademarksAndTradeNamesMember', window );">Trademarks and tradenames</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Amount</a></td>
<td class="nump">119,612<span></span>
</td>
<td class="nump">103,007<span></span>
</td>
</tr>
<tr class="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">39,638<span></span>
</td>
<td class="nump">32,623<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Book Value</a></td>
<td class="nump">79,974<span></span>
</td>
<td class="nump">70,384<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_OrderOrProductionBacklogMember', window );">Backlog</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Amount</a></td>
<td class="nump">20,815<span></span>
</td>
<td class="nump">23,724<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="nump">20,457<span></span>
</td>
<td class="nump">19,197<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_FiniteLivedIntangibleAssetsNet', window );">Net Book Value</a></td>
<td class="nump">$ 358<span></span>
</td>
<td class="nump">$ 4,527<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(16))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 928<br> -SubTopic 340<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6473545&amp;loc=d3e61844-108004<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 926<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=120154696&amp;loc=d3e54445-107959<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelationshipsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CustomerRelationshipsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_NoncompeteAgreementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_NoncompeteAgreementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksAndTradeNamesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TrademarksAndTradeNamesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_OrderOrProductionBacklogMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_OrderOrProductionBacklogMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>76
<FILENAME>R63.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687982177312">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Goodwill and Intangibles - Schedule of Estimated Aggregate Annual Amortization (Details)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract', window );"><strong>Finite Lived Intangible Assets Net Amortization Expense Rolling Maturity [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_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths', window );">2023</a></td>
<td class="nump">$ 42,460<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo', window );">2024</a></td>
<td class="nump">38,366<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree', window );">2025</a></td>
<td class="nump">32,961<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour', window );">2026</a></td>
<td class="nump">29,010<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive', window );">2027</a></td>
<td class="nump">24,724<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive', window );">Thereafter</a></td>
<td class="nump">$ 115,952<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for asset, excluding financial asset and goodwill, lacking physical substance with finite life expected to be recognized after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="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_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance 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>77
<FILENAME>R64.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687974822048">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Long-term Debt - Schedule of Debt (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Total long term debt</a></td>
<td class="nump">$ 861,154<span></span>
</td>
<td class="nump">$ 863,032<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtCurrent', window );">Less: current maturities</a></td>
<td class="num">(30,983)<span></span>
</td>
<td class="num">(30,839)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtNoncurrent', window );">Long-term debt, less current maturities</a></td>
<td class="nump">830,171<span></span>
</td>
<td class="nump">832,193<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_SeniorNotesMember', window );">Senior Notes | 5.75% Senior Notes Due 2028</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Total long term debt</a></td>
<td class="nump">296,964<span></span>
</td>
<td class="nump">296,367<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentUnamortizedDiscount', window );">Unamortized debt issuance costs</a></td>
<td class="nump">3,036<span></span>
</td>
<td class="nump">3,633<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Notes payable Interest rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5.75%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_MediumTermNotesMember', window );">Medium-term Notes | Term Loan Agreement</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Total long term debt</a></td>
<td class="nump">489,233<span></span>
</td>
<td class="nump">493,265<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentUnamortizedDiscount', window );">Unamortized debt issuance costs</a></td>
<td class="nump">5,767<span></span>
</td>
<td class="nump">6,735<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_NotesPayableOtherPayablesMember', window );">Notes Payable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Total long term debt</a></td>
<td class="nump">$ 1,973<span></span>
</td>
<td class="nump">4,172<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_NotesPayableOtherPayablesMember', window );">Notes Payable | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Notes payable Interest rate</a></td>
<td class="nump">2.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_NotesPayableOtherPayablesMember', window );">Notes Payable | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Notes payable Interest rate</a></td>
<td class="nump">5.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_NotesPayableOtherPayablesMember', window );">Notes Payable | Vehicle and Equipment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Total long term debt</a></td>
<td class="nump">$ 72,984<span></span>
</td>
<td class="nump">$ 69,228<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_NotesPayableOtherPayablesMember', window );">Notes Payable | Vehicle and Equipment | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Notes payable Interest rate</a></td>
<td class="nump">1.90%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_NotesPayableOtherPayablesMember', window );">Notes Payable | Vehicle and Equipment | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Notes payable Interest rate</a></td>
<td class="nump">6.10%<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_DebtInstrumentInterestRateStatedPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Contractual interest rate for funds borrowed, under the debt agreement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(a)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentInterestRateStatedPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentUnamortizedDiscount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after accumulated amortization, of debt discount.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1A<br> -URI https://asc.fasb.org/extlink&amp;oid=124435984&amp;loc=d3e28541-108399<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 55<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=114775985&amp;loc=d3e28878-108400<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495340-112611<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentUnamortizedDiscount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LongTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466204&amp;loc=SL6031897-161870<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69C<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495737-112612<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(16))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69B<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495735-112612<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495340-112611<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after unamortized (discount) premium and debt issuance costs, of long-term debt, classified as current. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19,20)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding unamortized premium (discount) and debt issuance cost, of long-term debt classified as noncurrent. Excludes lease obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongtermDebtTypeAxis=us-gaap_SeniorNotesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongtermDebtTypeAxis=us-gaap_SeniorNotesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_LongtermDebtTypeAxis=us-gaap_MediumTermNotesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongtermDebtTypeAxis=us-gaap_MediumTermNotesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=ibp_TermLoanAgreementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=ibp_TermLoanAgreementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_LongtermDebtTypeAxis=us-gaap_NotesPayableOtherPayablesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongtermDebtTypeAxis=us-gaap_NotesPayableOtherPayablesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=ibp_VehicleAndEquipmentNotesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=ibp_VehicleAndEquipmentNotesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>78
<FILENAME>R65.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687975730496">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Long-Term Debt - Schedule of Maturities of Long Term Debt (Detail)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtDisclosureAbstract', window );"><strong>Debt Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths', window );">2023</a></td>
<td class="nump">$ 30,983<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo', window );">2024</a></td>
<td class="nump">25,570<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree', window );">2025</a></td>
<td class="nump">19,630<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour', window );">2026</a></td>
<td class="nump">14,576<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive', window );">2027</a></td>
<td class="nump">9,198<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive', window );">Thereafter</a></td>
<td class="nump">$ 770,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=123465755&amp;loc=d3e1835-112601<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495348-112611<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24072-122690<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495348-112611<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24072-122690<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=123465755&amp;loc=d3e1835-112601<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495348-112611<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=123465755&amp;loc=d3e1835-112601<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24072-122690<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495348-112611<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=123465755&amp;loc=d3e1835-112601<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24072-122690<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495348-112611<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24072-122690<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=123465755&amp;loc=d3e1835-112601<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495348-112611<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24072-122690<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=123465755&amp;loc=d3e1835-112601<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>79
<FILENAME>R66.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687970010736">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Long-term Debt - Additional Information (Detail) - USD ($)<br></strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="3">1 Months Ended</th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Feb. 28, 2022</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Feb. 28, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Feb. 27, 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_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_DeferredFinanceCostsNet', window );">Deferred financing costs and debt issuance costs, net</a></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">$ 11,400,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 10,200,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization', window );">Assets relating to master loan agreements, gross</a></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">328,348,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">378,140,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization', window );">Property and equipment, net</a></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">105,933,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">118,774,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_LeaseContractualTermAxis=ibp_VehicleAndEquipmentNotesMember', window );">Vehicle and Equipment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization', window );">Assets relating to master loan agreements, gross</a></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">69,200,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 73,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=ibp_MasterLoanAgreementMember', window );">Master Loan Agreements</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_DebtInstrumentTerm', window );">Term loan facility maturity period (in years)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">60 months<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_DebtInstrumentAxis=ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember', window );">5.75% Senior Notes Due 2028 | Senior Notes</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 );">Notes payable Interest rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5.75%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Debt instrument, face amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 300,000,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_ProceedsFromDebtNetOfIssuanceCosts', window );">Proceeds from senior note issuance</a></td>
<td class="text">&#160;<span></span>
</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">$ 295,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_DebtInstrumentCovenantMarketCapitalizationThreshold', window );">Market capitalization (as percent)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=ibp_AblCreditAgreementMember', window );">ABL Credit Agreement</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_ibp_DebtInstrumentCovenantMarketCapitalizationThreshold', window );">Market capitalization (as percent)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_FixedChargeCoverageRatio', window );">Fixed charge coverage ratio</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">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>
<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_DebtInstrumentAxis=ibp_AblCreditAgreementMember', window );">ABL Credit Agreement | Letter of Credit</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 borrowing availability</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">$ 244,200,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_DebtInstrumentAxis=ibp_AblCreditAgreementMember', window );">ABL Credit Agreement | Eurodollar | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 );">Margin interest rate percentage</a></td>
<td class="nump">1.25%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=ibp_AblCreditAgreementMember', window );">ABL Credit Agreement | Eurodollar | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 );">Margin interest rate percentage</a></td>
<td class="nump">1.50%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_DebtInstrumentAxis=ibp_AblCreditAgreementMember', window );">ABL Credit Agreement | Base Rate | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 );">Margin interest rate percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.25%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_DebtInstrumentAxis=ibp_AblCreditAgreementMember', window );">ABL Credit Agreement | Base Rate | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 );">Margin interest rate percentage</a></td>
<td class="text">&#160;<span></span>
</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>
<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_DebtInstrumentAxis=ibp_AblCreditAgreementMember', window );">ABL Credit Agreement | Revolving Credit Facility</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Line of credit maximum borrowing capacity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">$ 200,000,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_LineOfCreditFacilityAccordionFeatureIncreaseLimit', window );">Line Of Credit Facility, Accordion Feature, Increase Limit</a></td>
<td class="nump">$ 300,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 300,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_DebtInstrumentAxis=ibp_AblCreditAgreementMember', window );">ABL Credit Agreement | Letter of Credit</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Line of credit maximum borrowing capacity</a></td>
<td class="nump">100,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">100,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_DebtInstrumentAxis=ibp_AblCreditAgreementMember', window );">ABL Credit Agreement | Incremental Revolving Credit Facility</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Line of credit maximum borrowing capacity</a></td>
<td class="nump">50,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">50,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_DebtInstrumentAxis=ibp_AblCreditAgreementMember', window );">ABL Credit Agreement | Swing Line Loans</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Line of credit maximum borrowing capacity</a></td>
<td class="nump">25,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">25,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_DebtInstrumentAxis=ibp_TermLoanMember', window );">Term Loan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_DebtInstrumentFaceAmount', window );">Debt instrument, face amount</a></td>
<td class="nump">$ 250,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 250,000,000<span></span>
</td>
<td class="nump">$ 500,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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentTerm', window );">Term loan facility maturity period (in years)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">7 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentPeriodicPaymentPrincipal', window );">Quarterly principal payments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,250,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1', window );">Margin interest rate percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.25%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds', window );">Percentage of net cash proceeds (as a percent)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">100.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds2', window );">Percentage of cash proceeds and its restricted subsidiaries (as a percent)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">50.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_ibp_DebtInstrumentMaximumCashProceeds', window );">Maximum cash proceeds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 15,000,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_DebtInstrumentAxis=ibp_TermLoanMember', window );">Term Loan | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds', window );">Step down percentage (as a percent)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds2', window );">Step down percentage and its subsidiaries (as a percent)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=ibp_TermLoanMember', window );">Term Loan | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds', window );">Step down percentage (as a percent)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">50.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds2', window );">Step down percentage and its subsidiaries (as a percent)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">25.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_DebtInstrumentAxis=ibp_TermLoanMember', window );">Term Loan | LIBOR | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 );">Margin interest rate percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2.25%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_DebtInstrumentAxis=ibp_TermLoanMember', window );">Term Loan | Term Loan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_DeferredFinanceCostsNet', window );">Deferred financing costs and debt issuance costs, net</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">$ 489,200,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ibp_DebtInstrumentCovenantMarketCapitalizationThreshold">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Debt Instrument, Covenant, Market Capitalization Threshold</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;">ibp_DebtInstrumentCovenantMarketCapitalizationThreshold</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</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_ibp_DebtInstrumentMaximumCashProceeds">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Debt Instrument, Maximum Cash Proceeds</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;">ibp_DebtInstrumentMaximumCashProceeds</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Debt Instrument, Prepayments, Percentage Of Net Cash Proceeds</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;">ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</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_ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Debt Instrument, Prepayments, Percentage Of Net Cash Proceeds 2</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;">ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds2</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</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_ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Debt Instrument, Prepayments, Step Down Percentage Of Net Cash Proceeds</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;">ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</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_ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Debt Instrument, Prepayments, Step Down Percentage Of Net Cash Proceeds 2</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;">ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds2</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</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_ibp_FixedChargeCoverageRatio">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fixed charge coverage ratio.</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;">ibp_FixedChargeCoverageRatio</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:pureItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ibp_LineOfCreditFacilityAccordionFeatureIncreaseLimit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, Accordion Feature, Increase Limit</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;">ibp_LineOfCreditFacilityAccordionFeatureIncreaseLimit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DebtInstrumentFaceAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 (par) amount of debt instrument at time of issuance.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=124435984&amp;loc=d3e28551-108399<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 55<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=114775985&amp;loc=d3e28878-108400<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=124429444&amp;loc=SL124452920-239629<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69C<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495737-112612<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69B<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495735-112612<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentFaceAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DebtInstrumentInterestRateStatedPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Contractual interest rate for funds borrowed, under the debt agreement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(a)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentInterestRateStatedPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentPeriodicPaymentPrincipal">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the required periodic payments applied to principal.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentPeriodicPaymentPrincipal</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DebtInstrumentTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Period of time between issuance and maturity of debt instrument, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentTerm</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredFinanceCostsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after accumulated amortization, of debt issuance costs. Includes, but is not limited to, legal, accounting, underwriting, printing, and registration costs.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495340-112611<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124435984&amp;loc=d3e28555-108399<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredFinanceCostsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(b),22(b))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of borrowing capacity currently available under the credit facility (current borrowing capacity less the amount of borrowings outstanding).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(b),22(b))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ProceedsFromDebtNetOfIssuanceCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 additional borrowings, net of cash paid to third parties in connection with debt origination.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromDebtNetOfIssuanceCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 and amortization, of property, plant, and equipment and finance lease right-of-use asset.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before accumulated depreciation and amortization, of property, plant, and equipment and finance lease right-of-use asset.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(18))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LeaseContractualTermAxis=ibp_VehicleAndEquipmentNotesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LeaseContractualTermAxis=ibp_VehicleAndEquipmentNotesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=ibp_MasterLoanAgreementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=ibp_MasterLoanAgreementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_LongtermDebtTypeAxis=us-gaap_SeniorNotesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongtermDebtTypeAxis=us-gaap_SeniorNotesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=ibp_AblCreditAgreementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=ibp_AblCreditAgreementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_ShortTermDebtTypeAxis=us-gaap_LetterOfCreditMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShortTermDebtTypeAxis=us-gaap_LetterOfCreditMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_VariableRateAxis=us-gaap_EurodollarMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_EurodollarMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_VariableRateAxis=us-gaap_BaseRateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_VariableRateAxis=us-gaap_BaseRateMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_us-gaap_CreditFacilityAxis=us-gaap_LetterOfCreditMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CreditFacilityAxis=us-gaap_LetterOfCreditMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CreditFacilityAxis=ibp_IncrementalRevolvingCreditFacilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=ibp_IncrementalRevolvingCreditFacilityMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=ibp_SwingLineLoansMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=ibp_SwingLineLoansMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=ibp_TermLoanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=ibp_TermLoanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_VariableRateAxis=us-gaap_LondonInterbankOfferedRateLIBORMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LondonInterbankOfferedRateLIBORMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_LongtermDebtTypeAxis=ibp_TermLoanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongtermDebtTypeAxis=ibp_TermLoanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>80
<FILENAME>R67.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687976159136">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Leases - Schedule of Supplemental Balance Sheet In formation Related To Leases (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_NonCurrentLeaseAssetsAbstract', window );"><strong>Non-Current</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Operating</a></td>
<td class="nump">$ 76,174<span></span>
</td>
<td class="nump">$ 69,871<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseRightOfUseAsset', window );">Finance</a></td>
<td class="nump">8,928<span></span>
</td>
<td class="nump">5,266<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_LeaseAssets', window );">Total lease assets</a></td>
<td class="nump">$ 85,102<span></span>
</td>
<td class="nump">$ 75,137<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList', window );">Finance Lease, Right-of-Use Asset, Statement of Financial Position [Extensible List]</a></td>
<td class="text">Property and equipment, net<span></span>
</td>
<td class="text">Property and equipment, net<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_CurrentLeaseLiabilitiesAbstract', window );"><strong>Current</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_OperatingLeaseLiabilityCurrent', window );">Operating</a></td>
<td class="nump">$ 26,145<span></span>
</td>
<td class="nump">$ 23,224<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityCurrent', window );">Financing</a></td>
<td class="nump">2,508<span></span>
</td>
<td class="nump">1,747<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_NoncurrentLeaseLiabilitiesAbstract', window );"><strong>Non-Current</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityNoncurrent', window );">Operating lease obligations</a></td>
<td class="nump">49,789<span></span>
</td>
<td class="nump">46,075<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityNoncurrent', window );">Finance lease obligations</a></td>
<td class="nump">6,397<span></span>
</td>
<td class="nump">3,297<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_LeaseLiabilities', window );">Total lease liabilities</a></td>
<td class="nump">$ 84,839<span></span>
</td>
<td class="nump">$ 74,343<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_WeightedAverageRemainingLeaseTermOfOperatingFinanceLeasesAbstract', window );"><strong>Weighted-average remaining lease term</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_OperatingLeaseWeightedAverageRemainingLeaseTerm1', window );">Operating leases (in years)</a></td>
<td class="text">4 years<span></span>
</td>
<td class="text">4 years 3 months 18 days<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1', window );">Finance leases (in years)</a></td>
<td class="text">3 years 7 months 6 days<span></span>
</td>
<td class="text">3 years 3 months 18 days<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_WeightedAverageDiscountRateOfOperatingFinanceLeasesAbstract', window );"><strong>Weighted-average discount rate</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_OperatingLeaseWeightedAverageDiscountRatePercent', window );">Operating leases (as percent)</a></td>
<td class="nump">4.41%<span></span>
</td>
<td class="nump">3.38%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent', window );">Finance leases (as percent)</a></td>
<td class="nump">5.76%<span></span>
</td>
<td class="nump">4.96%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ibp_CurrentLeaseLiabilitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 current lease liabilities 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;">ibp_CurrentLeaseLiabilitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ibp_LeaseAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 aggregate of operating and finance lease 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;">ibp_LeaseAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ibp_LeaseLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 total lease liabilities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ibp_LeaseLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ibp_NonCurrentLeaseAssetsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Operating and fianance lease right of use assets 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;">ibp_NonCurrentLeaseAssetsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ibp_NoncurrentLeaseLiabilitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 non-current lease liabilities 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;">ibp_NoncurrentLeaseLiabilitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ibp_WeightedAverageDiscountRateOfOperatingFinanceLeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 weighted average discount rate of operating finance leases 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;">ibp_WeightedAverageDiscountRateOfOperatingFinanceLeasesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ibp_WeightedAverageRemainingLeaseTermOfOperatingFinanceLeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 weighted average remaining lease term of operating finance leases 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;">ibp_WeightedAverageRemainingLeaseTermOfOperatingFinanceLeasesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from finance lease, 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FinanceLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from finance lease, 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FinanceLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after accumulated amortization, of right-of-use asset from finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 finance lease right-of-use asset.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918631-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList</td>
</tr>
<tr>
<td style="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_FinanceLeaseWeightedAverageDiscountRatePercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average discount rate for finance lease calculated at point in time.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(4)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI https://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining lease term for finance lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI https://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(4)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI https://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI https://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>81
<FILENAME>R68.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687975276096">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases - Lease Cost Finance and Operating Leases (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeLeaseDescriptionLineItems', window );"><strong>Lessee, Lease, Description [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_OperatingLeaseCost', window );">Operating lease cost</a></td>
<td class="nump">$ 33,158<span></span>
</td>
<td class="nump">$ 27,357<span></span>
</td>
<td class="nump">$ 23,454<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeaseCostAbstract', window );"><strong>Finance lease cost</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_FinanceLeaseRightOfUseAssetAmortization', window );">Amortization of leased assets</a></td>
<td class="nump">3,241<span></span>
</td>
<td class="nump">3,083<span></span>
</td>
<td class="nump">3,645<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseInterestExpense', window );">Interest on finance lease obligations</a></td>
<td class="nump">324<span></span>
</td>
<td class="nump">218<span></span>
</td>
<td class="nump">268<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_LeaseCost', window );">Total lease costs</a></td>
<td class="nump">36,723<span></span>
</td>
<td class="nump">30,658<span></span>
</td>
<td class="nump">27,367<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_LeaseContractualTermAxis=ibp_OperatingLeaseMember', window );">Operating Lease</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_LeaseCostAbstract', window );"><strong>Finance lease cost</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_VariableLeaseCost', window );">Variable lease costs</a></td>
<td class="nump">3,700<span></span>
</td>
<td class="nump">3,000<span></span>
</td>
<td class="nump">2,900<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShortTermLeaseCost', window );">Short-term lease costs</a></td>
<td class="nump">$ 1,100<span></span>
</td>
<td class="nump">$ 1,100<span></span>
</td>
<td class="nump">800<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_LeaseContractualTermAxis=ibp_FinanceLeaseMember', window );">Finance Lease</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_LeaseCostAbstract', window );"><strong>Finance lease cost</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_VariableLeaseCost', window );">Variable lease costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 700<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_FinanceLeaseInterestExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of interest expense on finance lease liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918638-209977<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI https://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseInterestExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseRightOfUseAssetAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense attributable to right-of-use asset from finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918638-209977<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI https://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseRightOfUseAssetAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lease cost recognized by lessee for lease contract.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI https://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeaseCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeaseCostAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LeaseCostAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeLeaseDescriptionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_LesseeLeaseDescriptionLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI https://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShortTermLeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 short-term lease cost, excluding expense for lease with term of one month or less.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI https://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShortTermLeaseCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_VariableLeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 variable lease cost, excluded from lease liability, recognized when obligation for payment is incurred for finance and operating leases.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI https://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_VariableLeaseCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LeaseContractualTermAxis=ibp_OperatingLeaseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LeaseContractualTermAxis=ibp_OperatingLeaseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_LeaseContractualTermAxis=ibp_FinanceLeaseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LeaseContractualTermAxis=ibp_FinanceLeaseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>82
<FILENAME>R69.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687971913536">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases - Schedule of Supplemental Cash Flow Information Related to Leases (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_CashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesAbstract', window );"><strong>Cash paid for amounts included in the measurement of 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="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 );">Operating cash flows for operating leases</a></td>
<td class="nump">$ 27,710<span></span>
</td>
<td class="nump">$ 22,930<span></span>
</td>
<td class="nump">$ 19,668<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseInterestPaymentOnLiability', window );">Operating cash flows for finance leases</a></td>
<td class="nump">324<span></span>
</td>
<td class="nump">218<span></span>
</td>
<td class="nump">268<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeasePrincipalPayments', window );">Financing cash flows for finance leases</a></td>
<td class="nump">$ 2,306<span></span>
</td>
<td class="nump">$ 2,125<span></span>
</td>
<td class="nump">$ 2,632<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ibp_CashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cash paid for amounts included in measurement of lease liabilities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ibp_CashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseInterestPaymentOnLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 paid on finance lease liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918643-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseInterestPaymentOnLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FinanceLeasePrincipalPayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow for principal payment on finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918643-209977<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeasePrincipalPayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918643-209977<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeasePayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>83
<FILENAME>R70.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687971654432">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Leases - Finance Lease Obligations and Operating Lease Obligations (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityAbstract', window );"><strong>Finance&#160;Leases</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths', window );">2023</a></td>
<td class="nump">$ 2,954<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo', window );">2024</a></td>
<td class="nump">2,438<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree', window );">2025</a></td>
<td class="nump">2,075<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour', window );">2026</a></td>
<td class="nump">1,745<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive', window );">2027</a></td>
<td class="nump">774<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive', window );">Thereafter</a></td>
<td class="nump">0<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_FinanceLeaseLiabilityPaymentsDue', window );">Total minimum lease payments</a></td>
<td class="nump">9,986<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_ibp_FinanceLeaseExecutoryCosts', window );">Less: Amounts representing executory costs</a></td>
<td class="num">(6)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount', window );">Less: Amounts representing interest</a></td>
<td class="num">(1,075)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiability', window );">Present value of future minimum lease payments</a></td>
<td class="nump">8,905<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityCurrent', window );">Less: Current obligation under leases</a></td>
<td class="num">(2,508)<span></span>
</td>
<td class="num">$ (1,747)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityNoncurrent', window );">Long-term lease obligations</a></td>
<td class="nump">6,397<span></span>
</td>
<td class="nump">3,297<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityAbstract', window );"><strong>Operating Leases</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_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths', window );">2023</a></td>
<td class="nump">28,933<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">2024</a></td>
<td class="nump">20,397<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">2025</a></td>
<td class="nump">13,854<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">2026</a></td>
<td class="nump">9,114<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive', window );">2027</a></td>
<td class="nump">5,252<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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">5,559<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue', window );">Total minimum lease payments</a></td>
<td class="nump">83,109<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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: Amounts representing interest</a></td>
<td class="num">(7,175)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Present value of future minimum lease payments</a></td>
<td class="nump">75,934<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrent', window );">Less: Current obligation under leases</a></td>
<td class="num">(26,145)<span></span>
</td>
<td class="num">(23,224)<span></span>
</td>
</tr>
<tr class="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 );">Long-term lease obligations</a></td>
<td class="nump">49,789<span></span>
</td>
<td class="nump">$ 46,075<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_RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis=ibp_RelatedPartyOperatingLeasesMember', window );">Related&#160;Party</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_OperatingLeaseLiabilityAbstract', window );"><strong>Operating Leases</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths', window );">2023</a></td>
<td class="nump">1,421<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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 );">2024</a></td>
<td class="nump">1,175<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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 );">2025</a></td>
<td class="nump">1,017<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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 );">2026</a></td>
<td class="text"> <span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive', window );">2027</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive', window );">Thereafter</a></td>
<td class="nump">0<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 minimum lease payments</a></td>
<td class="nump">3,613<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis=ibp_OtherPartyOperatingLeasesMember', window );">Other</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_OperatingLeaseLiabilityAbstract', window );"><strong>Operating Leases</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_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths', window );">2023</a></td>
<td class="nump">27,512<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">2024</a></td>
<td class="nump">19,222<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">2025</a></td>
<td class="nump">12,837<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">2026</a></td>
<td class="nump">9,114<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive', window );">2027</a></td>
<td class="nump">5,252<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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">5,559<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue', window );">Total minimum lease payments</a></td>
<td class="nump">$ 79,496<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_ibp_FinanceLeaseExecutoryCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 executory costs of finance 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;">ibp_FinanceLeaseExecutoryCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FinanceLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FinanceLeaseLiabilityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from finance lease, 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FinanceLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from finance lease, 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityPaymentsDue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments for finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityPaymentsDue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid in 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OperatingLeaseLiabilityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_OperatingLeaseLiabilityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_srt_RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis=ibp_RelatedPartyOperatingLeasesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis=ibp_RelatedPartyOperatingLeasesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis=ibp_OtherPartyOperatingLeasesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis=ibp_OtherPartyOperatingLeasesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>84
<FILENAME>R71.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687971723520">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Fair Value Measurements - Schedule of Fair Values of Financial Assets and Liabilities (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Financial 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_CashAndCashEquivalentsFairValueDisclosure', window );">Cash equivalents</a></td>
<td class="nump">$ 191,881<span></span>
</td>
<td class="nump">$ 258,055<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeAssets', window );">Derivative financial instruments</a></td>
<td class="nump">$ 38,671<span></span>
</td>
<td class="nump">$ 14,830<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeAssetStatementOfFinancialPositionExtensibleEnumeration', window );">Derivative Asset, Statement of Financial Position [Extensible Enumeration]</a></td>
<td class="text">Other Assets, Noncurrent<span></span>
</td>
<td class="text">Other Assets, Noncurrent<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_AssetsFairValueDisclosure', window );">Total financial assets</a></td>
<td class="nump">$ 230,552<span></span>
</td>
<td class="nump">$ 272,885<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesFairValueDisclosureAbstract', window );"><strong>Financial 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_BusinessCombinationContingentConsiderationLiability', window );">Contingent consideration</a></td>
<td class="nump">1,858<span></span>
</td>
<td class="nump">11,170<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeLiabilities', window );">Derivative financial instruments</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 1,937<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeLiabilityStatementOfFinancialPositionExtensibleEnumeration', window );">Derivative Liability, Statement of Financial Position [Extensible Enumeration]</a></td>
<td class="text">Other Liabilities, Current<span></span>
</td>
<td class="text">Other Liabilities, Current<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_LiabilitiesFairValueDisclosure', window );">Total financial liabilities</a></td>
<td class="nump">$ 1,858<span></span>
</td>
<td class="nump">$ 13,107<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member', window );">Level&#160;1</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_AssetsFairValueDisclosureAbstract', window );"><strong>Financial assets:</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_CashAndCashEquivalentsFairValueDisclosure', window );">Cash equivalents</a></td>
<td class="nump">191,881<span></span>
</td>
<td class="nump">258,055<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeAssets', window );">Derivative financial instruments</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosure', window );">Total financial assets</a></td>
<td class="nump">191,881<span></span>
</td>
<td class="nump">258,055<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesFairValueDisclosureAbstract', window );"><strong>Financial 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_BusinessCombinationContingentConsiderationLiability', window );">Contingent consideration</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_DerivativeLiabilities', window );">Derivative financial instruments</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesFairValueDisclosure', window );">Total financial liabilities</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">Level&#160;2</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_AssetsFairValueDisclosureAbstract', window );"><strong>Financial 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_CashAndCashEquivalentsFairValueDisclosure', window );">Cash equivalents</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_DerivativeAssets', window );">Derivative financial instruments</a></td>
<td class="nump">38,671<span></span>
</td>
<td class="nump">14,830<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosure', window );">Total financial assets</a></td>
<td class="nump">38,671<span></span>
</td>
<td class="nump">14,830<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesFairValueDisclosureAbstract', window );"><strong>Financial 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_BusinessCombinationContingentConsiderationLiability', window );">Contingent consideration</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_DerivativeLiabilities', window );">Derivative financial instruments</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,937<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_LiabilitiesFairValueDisclosure', window );">Total financial liabilities</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,937<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">Level&#160;3</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_AssetsFairValueDisclosureAbstract', window );"><strong>Financial assets:</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_CashAndCashEquivalentsFairValueDisclosure', window );">Cash equivalents</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_DerivativeAssets', window );">Derivative financial instruments</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosure', window );">Total financial assets</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_LiabilitiesFairValueDisclosureAbstract', window );"><strong>Financial 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_BusinessCombinationContingentConsiderationLiability', window );">Contingent consideration</a></td>
<td class="nump">1,858<span></span>
</td>
<td class="nump">11,170<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeLiabilities', window );">Derivative financial instruments</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesFairValueDisclosure', window );">Total financial liabilities</a></td>
<td class="nump">$ 1,858<span></span>
</td>
<td class="nump">$ 11,170<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_AssetsFairValueDisclosure">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair value portion of probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsFairValueDisclosure</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AssetsFairValueDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AssetsFairValueDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationContingentConsiderationLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 arising from contingent consideration in a business combination.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=126975305&amp;loc=d3e6927-128479<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 35<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126966325&amp;loc=d3e6819-128478<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 25<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=6911189&amp;loc=d3e6408-128476<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationContingentConsiderationLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_CashAndCashEquivalentsFairValueDisclosure">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair value portion 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.</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_CashAndCashEquivalentsFairValueDisclosure</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DerivativeAssetStatementOfFinancialPositionExtensibleEnumeration">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 derivative asset.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=125515794&amp;loc=SL5618551-113959<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeAssetStatementOfFinancialPositionExtensibleEnumeration</td>
</tr>
<tr>
<td style="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_DerivativeAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair value, after the effects of master netting arrangements, of a financial asset or other contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset. Includes assets not subject to a master netting arrangement and not elected to be offset.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 20<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=99393222&amp;loc=SL20226008-175313<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 20<br> -Section 55<br> -Paragraph 22<br> -URI https://asc.fasb.org/extlink&amp;oid=99393222&amp;loc=SL20226052-175313<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=123594938&amp;loc=d3e13433-108611<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 20<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=51824906&amp;loc=SL20225862-175312<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair value, after the effects of master netting arrangements, of a financial liability or contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset. Includes liabilities not subject to a master netting arrangement and not elected to be offset.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 20<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=51824906&amp;loc=SL20225862-175312<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 20<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=99393222&amp;loc=SL20226008-175313<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=123594938&amp;loc=d3e13433-108611<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 20<br> -Section 55<br> -Paragraph 22<br> -URI https://asc.fasb.org/extlink&amp;oid=99393222&amp;loc=SL20226052-175313<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DerivativeLiabilityStatementOfFinancialPositionExtensibleEnumeration">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 derivative 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=125515794&amp;loc=SL5618551-113959<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeLiabilityStatementOfFinancialPositionExtensibleEnumeration</td>
</tr>
<tr>
<td style="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_LiabilitiesFairValueDisclosure">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair value of financial and nonfinancial 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesFairValueDisclosure</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LiabilitiesFairValueDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LiabilitiesFairValueDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>85
<FILENAME>R72.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687975068592">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair value measurements - Summary of Change in Fair Value of Contingent Consideration (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward', window );"><strong>Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue', window );">Beginning Balance</a></td>
<td class="nump">$ 11,170<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases', window );">Preliminary purchase price</a></td>
<td class="nump">15,039<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings', window );">Fair value adjustments</a></td>
<td class="num">(994)<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_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityAccretionExpense', window );">Accretion in value</a></td>
<td class="nump">743<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_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnContingentConsideration', window );">Gains on acquisition earnouts</a></td>
<td class="num">(16,109)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements', window );">Settlement adjustments</a></td>
<td class="num">(505)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchasesSalesIssuancesSettlements', window );">Amounts paid to sellers</a></td>
<td class="num">(7,486)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue', window );">Ending Balance</a></td>
<td class="nump">1,858<span></span>
</td>
<td class="nump">$ 11,170<span></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_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnEarnoutLiability', window );">Earnout not being paid</a></td>
<td class="nump">$ 15,100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueRecurringBasisUnobservableInputReconciliationLiabilityGainLossStatementOfIncomeExtensibleList', window );">Fair Value, Liability, Recurring Basis, Unobservable Input Reconciliation, Gain (Loss), Statement of Income or Comprehensive Income [Extensible Enumeration]</a></td>
<td class="text">Gains on acquisition earnouts<span></span>
</td>
<td class="text">Gains on acquisition earnouts<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityAccretionExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair value measurement with unobservable inputs reconciliation recurring basis liability accretion expense.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityAccretionExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnContingentConsideration">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability, Gain (Loss) On Contingent Consideration</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;">ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnContingentConsideration</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnEarnoutLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability, Gain (Loss) On Earnout 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;">ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnEarnoutLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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) recognized in income from liability measured at fair value on recurring basis using unobservable input (level 3).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 purchases of financial instrument classified as a liability measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchasesSalesIssuancesSettlements">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 purchases, (sales), issuances and (settlements) of financial instrument classified as a liability measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchasesSalesIssuancesSettlements</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 settlements of financial instrument classified as a liability measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair value of financial instrument classified as a liability measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueRecurringBasisUnobservableInputReconciliationLiabilityGainLossStatementOfIncomeExtensibleList">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 in which net income is reported that includes gain (loss) from liability measured at fair value using unobservable input (level 3).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueRecurringBasisUnobservableInputReconciliationLiabilityGainLossStatementOfIncomeExtensibleList</td>
</tr>
<tr>
<td style="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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>86
<FILENAME>R73.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687971356752">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Fair Value measurements - Summary of Carrying Values and Associated Fair Values of Financial Assets and Liabilities (Detail) - 5.75% Senior Notes Due 2028 - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">Level&#160;2</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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_LongTermDebtFairValue', window );">Senior Notes</a></td>
<td class="nump">$ 270,993<span></span>
</td>
<td class="nump">$ 311,028<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_FairValueByMeasurementBasisAxis=us-gaap_CarryingReportedAmountFairValueDisclosureMember', window );">Carrying Value</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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_LongTermDebtFairValue', window );">Senior Notes</a></td>
<td class="nump">$ 300,000<span></span>
</td>
<td class="nump">$ 300,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The fair value amount of long-term debt whether such amount is presented as a separate caption or as a parenthetical disclosure. Additionally, this element may be used in connection with the fair value disclosures required in the footnote disclosures to the financial statements. The element may be used in both the balance sheet and disclosure in the same submission.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_FairValueByMeasurementBasisAxis=us-gaap_CarryingReportedAmountFairValueDisclosureMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FairValueByMeasurementBasisAxis=us-gaap_CarryingReportedAmountFairValueDisclosureMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>87
<FILENAME>R74.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687970508320">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Information on Segments (Details)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="6">12 Months Ended</th>
</tr>
<tr>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>segment</div>
</th>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>reporting_unit</div>
</th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2020 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NumberOfOperatingSegments', window );">Number of operating segment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3<span></span>
</td>
<td class="nump">3<span></span>
</td>
<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_NumberOfReportableSegments', window );">Number of reportable segment | segment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Revenue</a></td>
<td class="nump">$ 2,669,844<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,968,650<span></span>
</td>
<td class="nump">$ 1,653,225<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization', window );">Cost of sales</a></td>
<td class="nump">1,797,650<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,338,193<span></span>
</td>
<td class="nump">$ 1,104,240<span></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_ibp_AdjustedGrossProfitPercentage', window );">Segment gross profit percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">32.70%<span></span>
</td>
<td class="nump">32.00%<span></span>
</td>
<td class="nump">33.20%<span></span>
</td>
</tr>
<tr class="re">
<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">44,410<span></span>
</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">$ 40,938<span></span>
</td>
<td class="nump">$ 39,011<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">827,784<span></span>
</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">589,519<span></span>
</td>
<td class="nump">509,974<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingExpenses', window );">Operating Expenses</a></td>
<td class="nump">482,373<span></span>
</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">401,639<span></span>
</td>
<td class="nump">348,107<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SellingExpense', window );">Selling</a></td>
<td class="nump">119,031<span></span>
</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">93,204<span></span>
</td>
<td class="nump">81,613<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_OperatingIncomeLoss', window );">Operating income</a></td>
<td class="nump">345,411<span></span>
</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">187,880<span></span>
</td>
<td class="nump">161,867<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherNonoperatingExpense', window );">Other Nonoperating Expense</a></td>
<td class="nump">42,104<span></span>
</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,405<span></span>
</td>
<td class="nump">30,690<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestExpense', window );">Other expense, net</a></td>
<td class="nump">41,574<span></span>
</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,842<span></span>
</td>
<td class="nump">30,291<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">303,307<span></span>
</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">155,475<span></span>
</td>
<td class="nump">131,177<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RestatementAxis=srt_RestatementAdjustmentMember', window );">Adjustment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion', window );">Segment gross profit</a></td>
<td class="nump">872,194<span></span>
</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">630,457<span></span>
</td>
<td class="nump">548,985<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_IntersegmentEliminationMember', window );">Eliminations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="num">(6,146)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(2,225)<span></span>
</td>
<td class="num">(898)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization', window );">Cost of sales</a></td>
<td class="num">(4,826)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(1,701)<span></span>
</td>
<td class="num">(670)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion', window );">Segment gross profit</a></td>
<td class="num">(1,320)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (524)<span></span>
</td>
<td class="num">$ (228)<span></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_ibp_AdjustedGrossProfitPercentage', window );">Segment gross profit percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">21.50%<span></span>
</td>
<td class="nump">23.60%<span></span>
</td>
<td class="nump">25.40%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=ibp_InstallationSegmentMember', window );">Installation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NumberOfOperatingSegments', window );">Number of operating segment | segment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=ibp_InstallationSegmentMember', window );">Installation | Operating segments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">2,513,557<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,941,543<span></span>
</td>
<td class="nump">$ 1,636,361<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization', window );">Cost of sales</a></td>
<td class="nump">1,678,771<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,317,739<span></span>
</td>
<td class="nump">1,092,139<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_ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion', window );">Segment gross profit</a></td>
<td class="nump">834,786<span></span>
</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">$ 623,804<span></span>
</td>
<td class="nump">$ 544,222<span></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_ibp_AdjustedGrossProfitPercentage', window );">Segment gross profit percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">33.20%<span></span>
</td>
<td class="nump">32.10%<span></span>
</td>
<td class="nump">33.30%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=us-gaap_AllOtherSegmentsMember', window );">Other</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NumberOfOperatingSegments', window );">Number of operating segment | segment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=us-gaap_AllOtherSegmentsMember', window );">Other | Operating segments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">162,433<span></span>
</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">$ 29,332<span></span>
</td>
<td class="nump">$ 17,762<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization', window );">Cost of sales</a></td>
<td class="nump">123,705<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">22,155<span></span>
</td>
<td class="nump">12,771<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion', window );">Segment gross profit</a></td>
<td class="nump">$ 38,728<span></span>
</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">$ 7,177<span></span>
</td>
<td class="nump">$ 4,991<span></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_ibp_AdjustedGrossProfitPercentage', window );">Segment gross profit percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">23.80%<span></span>
</td>
<td class="nump">24.50%<span></span>
</td>
<td class="nump">28.10%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ibp_AdjustedGrossProfitPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Adjusted Gross Profit, Percentage</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ibp_AdjustedGrossProfitPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</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_ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Profit, Excluding Depreciation, Amortization And Depletion</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;">ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cost of product sold and service rendered, excluding depreciation, depletion, and amortization.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(2)(a))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(2)(d))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_GrossProfit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 18: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.1,2)<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GrossProfit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 940<br> -SubTopic 20<br> -Section 25<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=126941158&amp;loc=d3e41242-110953<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(8))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_InterestExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the cost of borrowed funds accounted for as interest expense.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=6450988&amp;loc=d3e26243-108391<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124435984&amp;loc=d3e28555-108399<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (210.5-03(11))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04.9)<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NumberOfOperatingSegments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of operating segments. An operating segment is a component of an enterprise: (a) that engages in business activities from which it may earn revenues and incur expenses (including revenues and expenses relating to transactions with other components of the same enterprise), (b) whose operating results are regularly reviewed by the enterprise's chief operating decision maker to make decisions about resources to be allocated to the segment and assess its performance, and (c) for which discrete financial information is available. An operating segment may engage in business activities for which it has yet to earn revenues, for example, start-up operations may be operating segments before earning revenues.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8672-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NumberOfOperatingSegments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NumberOfReportableSegments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8672-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OperatingExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingExpenses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OtherNonoperatingExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 related to nonoperating activities, classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.9)<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherNonoperatingExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9031-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9038-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130543-203045<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9054-108599<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130545-203045<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI https://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_SegmentReportingInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingInformationLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SellingExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Expenses recognized in the period that are directly related to the selling and distribution of products or services.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.4)<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SellingExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RestatementAxis=srt_RestatementAdjustmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RestatementAxis=srt_RestatementAdjustmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ConsolidationItemsAxis=us-gaap_IntersegmentEliminationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ConsolidationItemsAxis=us-gaap_IntersegmentEliminationMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=ibp_InstallationSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=ibp_InstallationSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=us-gaap_AllOtherSegmentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=us-gaap_AllOtherSegmentsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>88
<FILENAME>R75.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687971373552">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Derivative and Hedging Activities - Open Interest Swap Contract Summary (Details) - Cash Flow Hedging - Designated as Hedging Instrument - USD ($)<br> $ in Millions</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems', window );"><strong>Derivative Instruments and Hedging Activities Disclosures [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_DerivativeNotionalAmount', window );">Notional amount of derivative instruments</a></td>
<td class="nump">$ 400.0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=ibp_InterestRateSwapOneEffectiveJuly202021Member', window );">Interest Rate Swap One, Effective July 20, 2021</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_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems', window );"><strong>Derivative Instruments and Hedging Activities Disclosures [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_DerivativeNotionalAmount', window );">Notional amount of derivative instruments</a></td>
<td class="nump">$ 200.0<span></span>
</td>
<td class="nump">$ 200.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_DerivativeFixedInterestRate', window );">Interest rate of derivative instruments</a></td>
<td class="nump">0.51%<span></span>
</td>
<td class="nump">0.51%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=ibp_InterestRateSwapTwoEffectiveDecember312021Member', window );">Interest Rate Swap Two, Effective December 31, 2021</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_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems', window );"><strong>Derivative Instruments and Hedging Activities Disclosures [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_DerivativeNotionalAmount', window );">Notional amount of derivative instruments</a></td>
<td class="nump">$ 100.0<span></span>
</td>
<td class="nump">$ 100.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_DerivativeFixedInterestRate', window );">Interest rate of derivative instruments</a></td>
<td class="nump">1.37%<span></span>
</td>
<td class="nump">1.37%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=ibp_InterestRateSwapThreeEffectiveDecember312021Member', window );">Interest Rate Swap Three, Effective December 31, 2021</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_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems', window );"><strong>Derivative Instruments and Hedging Activities Disclosures [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_DerivativeNotionalAmount', window );">Notional amount of derivative instruments</a></td>
<td class="nump">$ 100.0<span></span>
</td>
<td class="nump">$ 100.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_DerivativeFixedInterestRate', window );">Interest rate of derivative instruments</a></td>
<td class="nump">1.37%<span></span>
</td>
<td class="nump">1.37%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=ibp_InterestRateSwapFourEffectiveDecember312025Member', window );">Interest Rate Swap Four, Effective December 31, 2025</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_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems', window );"><strong>Derivative Instruments and Hedging Activities Disclosures [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_DerivativeNotionalAmount', window );">Notional amount of derivative instruments</a></td>
<td class="nump">$ 300.0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeFixedInterestRate', window );">Interest rate of derivative instruments</a></td>
<td class="nump">3.09%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=ibp_InterestRateSwapFiveEffectiveDecember312025Member', window );">Interest Rate Swap Five, Effective December 31, 2025</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_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems', window );"><strong>Derivative Instruments and Hedging Activities Disclosures [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_DerivativeNotionalAmount', window );">Notional amount of derivative instruments</a></td>
<td class="nump">$ 100.0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeFixedInterestRate', window );">Interest rate of derivative instruments</a></td>
<td class="nump">2.98%<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_DerivativeFixedInterestRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fixed interest rate related to the interest rate derivative.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeFixedInterestRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeNotionalAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Nominal or face amount used to calculate payment on derivative.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1B<br> -URI https://asc.fasb.org/extlink&amp;oid=125515794&amp;loc=SL5580258-113959<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=125515794&amp;loc=SL5579245-113959<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeNotionalAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis=us-gaap_CashFlowHedgingMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DerivativeInstrumentsGainLossByHedgingRelationshipAxis=us-gaap_CashFlowHedgingMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_HedgingDesignationAxis=us-gaap_DesignatedAsHedgingInstrumentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_HedgingDesignationAxis=us-gaap_DesignatedAsHedgingInstrumentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentRiskAxis=ibp_InterestRateSwapOneEffectiveJuly202021Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentRiskAxis=ibp_InterestRateSwapOneEffectiveJuly202021Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentRiskAxis=ibp_InterestRateSwapTwoEffectiveDecember312021Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentRiskAxis=ibp_InterestRateSwapTwoEffectiveDecember312021Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentRiskAxis=ibp_InterestRateSwapThreeEffectiveDecember312021Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentRiskAxis=ibp_InterestRateSwapThreeEffectiveDecember312021Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentRiskAxis=ibp_InterestRateSwapFourEffectiveDecember312025Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentRiskAxis=ibp_InterestRateSwapFourEffectiveDecember312025Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentRiskAxis=ibp_InterestRateSwapFiveEffectiveDecember312025Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentRiskAxis=ibp_InterestRateSwapFiveEffectiveDecember312025Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>89
<FILENAME>R76.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687970402688">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Derivative and Hedging Activities - Narrative (Details)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">1 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Jul. 08, 2022 </div>
<div>USD ($) </div>
<div>instrument</div>
</th>
<th class="th">
<div>Aug. 31, 2021 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2020 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Jul. 28, 2022 </div>
<div>instrument</div>
</th>
<th class="th">
<div>Aug. 31, 2020 </div>
<div>swap</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_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems', window );"><strong>Derivative Instruments and Hedging Activities Disclosures [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_NumberOfSwaps', window );">Number of swaps | swap</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2<span></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_ibp_ProceedsFromTerminationOfDerivativeInstruments', window );">Proceeds from termination of interest rate swap agreements</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 25,462<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_HedgingDesignationAxis=us-gaap_DesignatedAsHedgingInstrumentMember', window );">Designated as Hedging Instrument</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems', window );"><strong>Derivative Instruments and Hedging Activities Disclosures [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrealizedGainLossOnDerivatives', window );">Unrealized gain (loss) on derivatives</a></td>
<td class="nump">$ 51,200<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationTax', window );">Amortization of unrealized gain (loss)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,400<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_ibp_ProceedsFromTerminationOfDerivativeInstruments', window );">Proceeds from termination of interest rate swap agreements</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">25,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_SwapOffMarketTermsCapitalized', window );">Capitalized off-market terms</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">25,700<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_OtherComprehensiveIncomeLossBeforeReclassificationsTax', window );">Amortized interest expense of financing element</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,600<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax', window );">Unrealized loss included in accumulated other comprehensive loss associated with the terminated swaps</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 17,800<span></span>
</td>
<td class="nump">3,800<span></span>
</td>
<td class="nump">3,200<span></span>
</td>
<td class="nump">1,300<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=us-gaap_InterestRateSwapMember', window );">Interest Rate Swap</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems', window );"><strong>Derivative Instruments and Hedging Activities Disclosures [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax', window );">Unrealized loss included in accumulated other comprehensive loss associated with the terminated swaps</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,928<span></span>
</td>
<td class="nump">$ 3,223<span></span>
</td>
<td class="nump">$ 1,326<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=us-gaap_InterestRateSwapMember', window );">Interest Rate Swap | Designated as Hedging Instrument</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems', window );"><strong>Derivative Instruments and Hedging Activities Disclosures [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeNumberOfInstrumentsHeld', window );">Number of derivatives | instrument</a></td>
<td class="nump">3<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsGainLossReclassificationFromAccumulatedOCIToIncomeEstimatedNetAmountToBeTransferred', window );">Reclassification from accumulated other comprehensive income to interest expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 11,100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ibp_NumberOfSwaps">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 swaps.</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;">ibp_NumberOfSwaps</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ibp_ProceedsFromTerminationOfDerivativeInstruments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Proceeds from Termination of Derivative Instruments</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ibp_ProceedsFromTerminationOfDerivativeInstruments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ibp_SwapOffMarketTermsCapitalized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Swap Off-Market Terms Capitalized</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;">ibp_SwapOffMarketTermsCapitalized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentsGainLossReclassificationFromAccumulatedOCIToIncomeEstimatedNetAmountToBeTransferred">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 value of gains (losses), net anticipated to be transferred in the future from accumulated other comprehensive income into earnings.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 30<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=121549185&amp;loc=d3e80845-113994<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentsGainLossReclassificationFromAccumulatedOCIToIncomeEstimatedNetAmountToBeTransferred</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DerivativeNumberOfInstrumentsHeld">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 derivative instruments of a particular group held by the entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=125515794&amp;loc=SL5579245-113959<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1B<br> -URI https://asc.fasb.org/extlink&amp;oid=125515794&amp;loc=SL5580258-113959<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeNumberOfInstrumentsHeld</td>
</tr>
<tr>
<td style="padding-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>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of tax expense (benefit) allocated to other comprehensive income (loss) before reclassification adjustment from accumulated other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124442407-227067<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e640-108580<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of tax expense (benefit) for reclassification of gain (loss) from accumulated other comprehensive income (AOCI) for derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e640-108580<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before tax, of reclassification from accumulated other comprehensive income (AOCI) for gain (loss) from discontinuance of cash flow hedge included in assessment of hedge effectiveness.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=125515794&amp;loc=SL5624171-113959<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UnrealizedGainLossOnDerivatives">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 change in the difference between the fair value and the carrying value, or in the comparative fair values, of derivative instruments, including options, swaps, futures, and forward contracts, held at each balance sheet date, that was included in earnings for the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrealizedGainLossOnDerivatives</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_HedgingDesignationAxis=us-gaap_DesignatedAsHedgingInstrumentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_HedgingDesignationAxis=us-gaap_DesignatedAsHedgingInstrumentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentRiskAxis=us-gaap_InterestRateSwapMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentRiskAxis=us-gaap_InterestRateSwapMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>90
<FILENAME>R77.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687981432688">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Derivative and Hedging Activities - Interest Rate Swap Summary (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems', window );"><strong>Derivative Instruments and Hedging Activities Disclosures [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_OciCashFlowHedgeReclassificationForDiscontinuanceStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration', window );">OCI, Cash Flow Hedge, Reclassification for Discontinuance, Statement of Income or Comprehensive Income [Extensible Enumeration]</a></td>
<td class="text">Other expense, net<span></span>
</td>
<td class="text">Other expense, net<span></span>
</td>
<td class="text">Other expense, net<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=us-gaap_InterestRateSwapMember', window );">Interest Rate Swap</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_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems', window );"><strong>Derivative Instruments and Hedging Activities Disclosures [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax', window );">(Benefit) expense associated with swap net settlements</a></td>
<td class="num">$ (3,128)<span></span>
</td>
<td class="nump">$ 370<span></span>
</td>
<td class="nump">$ 1,453<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax', window );">Expense associated with amortization of amended/terminated swaps</a></td>
<td class="nump">$ 3,928<span></span>
</td>
<td class="nump">$ 3,223<span></span>
</td>
<td class="nump">$ 1,326<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ibp_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Other Comprehensive Income (Loss), Cash Flow Hedge, Reclassification For Settlement, Before Tax</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ibp_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OciCashFlowHedgeReclassificationForDiscontinuanceStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 income or comprehensive income that includes reclassification from accumulated other comprehensive income (AOCI) for gain (loss) recognized in other comprehensive income (OCI) from discontinuance of cash flow hedge included in assessment of hedge effectiveness.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4D<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=125515794&amp;loc=SL5624177-113959<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=125515794&amp;loc=SL5624171-113959<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OciCashFlowHedgeReclassificationForDiscontinuanceStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration</td>
</tr>
<tr>
<td style="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_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before tax, of reclassification from accumulated other comprehensive income (AOCI) for gain (loss) from discontinuance of cash flow hedge included in assessment of hedge effectiveness.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=125515794&amp;loc=SL5624171-113959<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DerivativeInstrumentRiskAxis=us-gaap_InterestRateSwapMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentRiskAxis=us-gaap_InterestRateSwapMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>91
<FILENAME>R78.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687975818576">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity - Change in AOCI (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract', window );"><strong>AOCI Including Portion Attributable to Noncontrolling Interest, Net of Tax [Roll Forward]</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_StockholdersEquity', window );">Accumulated loss at beginning of period</a></td>
<td class="nump">$ 416,840<span></span>
</td>
<td class="nump">$ 319,182<span></span>
</td>
<td class="nump">$ 250,031<span></span>
</td>
</tr>
<tr class="re">
<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 );">Accumulated gain (loss) at end of period</a></td>
<td class="nump">493,499<span></span>
</td>
<td class="nump">416,840<span></span>
</td>
<td class="nump">319,182<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember', window );">Accumulated Gain (Loss), Net, Cash Flow Hedge, Parent</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_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract', window );"><strong>AOCI Including Portion Attributable to Noncontrolling Interest, Net of Tax [Roll Forward]</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_StockholdersEquity', window );">Accumulated loss at beginning of period</a></td>
<td class="num">(227)<span></span>
</td>
<td class="num">(8,763)<span></span>
</td>
<td class="num">(7,143)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax', window );">Unrealized gain (loss) in fair value of interest rate derivatives</a></td>
<td class="nump">37,885<span></span>
</td>
<td class="nump">6,151<span></span>
</td>
<td class="num">(2,601)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax', window );">Reclassification of realized net losses to earnings</a></td>
<td class="nump">2,902<span></span>
</td>
<td class="nump">2,385<span></span>
</td>
<td class="nump">981<span></span>
</td>
</tr>
<tr class="re">
<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 );">Accumulated gain (loss) at end of period</a></td>
<td class="nump">$ 40,560<span></span>
</td>
<td class="num">$ (227)<span></span>
</td>
<td class="num">$ (8,763)<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_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax, before reclassification adjustments of other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124442411-227067<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 17<br> -URI https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32136-110900<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6450520&amp;loc=d3e32583-110901<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669686-108580<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI https://asc.fasb.org/extlink&amp;oid=124507222&amp;loc=d3e1436-108581<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124442407-227067<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 20<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32211-110900<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of reclassification adjustments of other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 17<br> -URI https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32136-110900<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 20<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32211-110900<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124442411-227067<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6450520&amp;loc=d3e32583-110901<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669686-108580<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI https://asc.fasb.org/extlink&amp;oid=124507222&amp;loc=d3e1436-108581<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124442407-227067<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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>Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -URI https://asc.fasb.org/extlink&amp;oid=122038336&amp;loc=d3e74512-122707<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_StatementEquityComponentsAxis=us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>92
<FILENAME>R79.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687971757616">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity - Additional Information (Details) - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="3">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Jun. 30, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
<th class="th"><div>Jun. 30, 2021</div></th>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Feb. 24, 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_EquityAbstract', window );"><strong>Equity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockSharesAcquired', window );">Common stock repurchase (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,500,000<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">633,220<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockValueAcquiredCostMethod', window );">Share repurchase, amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 137,556<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 33,924<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockAcquiredAverageCostPerShare', window );">Share repurchase, price per share (USD per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">$ 91.54<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 53.57<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchaseProgramAuthorizedAmount1', window );">Stock repurchase program, authorized</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">$ 200,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1', window );">Stock repurchase program, remaining authorized repurchase amount</a></td>
<td class="nump">$ 162,100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 162,100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DividendsPayableLineItems', window );"><strong>Dividends Payable [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_PaymentsOfDividends', window );">Dividends paid</a></td>
<td class="nump">$ 8,845<span></span>
</td>
<td class="nump">$ 8,945<span></span>
</td>
<td class="nump">$ 8,982<span></span>
</td>
<td class="nump">$ 8,866<span></span>
</td>
<td class="nump">$ 8,821<span></span>
</td>
<td class="nump">$ 8,821<span></span>
</td>
<td class="nump">$ 8,786<span></span>
</td>
<td class="nump">62,671<span></span>
</td>
<td class="nump">$ 35,294<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember', window );">Restricted Stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DividendsPayableLineItems', window );"><strong>Dividends Payable [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_PaymentsOfDividends', window );">Dividends paid</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">$ 500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DividendsPayableLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DividendsPayableLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_PaymentsOfDividends">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cash outflow in the form of capital distributions and dividends to common shareholders, preferred shareholders and noncontrolling interests.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsOfDividends</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockRepurchaseProgramAuthorizedAmount1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 stock repurchase plan authorized.</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_StockRepurchaseProgramAuthorizedAmount1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount remaining of a stock repurchase plan authorized.</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_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_TreasuryStockAcquiredAverageCostPerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 cost of shares repurchased divided by the total number of shares 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6405813&amp;loc=d3e23239-112655<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockAcquiredAverageCostPerShare</td>
</tr>
<tr>
<td style="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_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockSharesAcquired</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockValueAcquiredCostMethod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Equity impact of the cost of common and preferred stock that were repurchased during the period. Recorded using the cost method.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6405813&amp;loc=d3e23239-112655<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockValueAcquiredCostMethod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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>93
<FILENAME>R80.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687970827040">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity - Schedule of Dividends Declared (Details) - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Nov. 03, 2022</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Aug. 04, 2022</div></th>
<th class="th"><div>Jun. 30, 2022</div></th>
<th class="th"><div>May 05, 2022</div></th>
<th class="th"><div>Mar. 31, 2022</div></th>
<th class="th"><div>Feb. 24, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Nov. 04, 2021</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
<th class="th"><div>Aug. 05, 2021</div></th>
<th class="th"><div>Jun. 30, 2021</div></th>
<th class="th"><div>May 05, 2021</div></th>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Feb. 23, 2021</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DividendsPayableLineItems', window );"><strong>Dividends Payable [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_CommonStockDividendsPerShareDeclared', window );">Cash dividends declared per share (in USD per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.315<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.315<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.315<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.30<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.30<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.30<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.30<span></span>
</td>
<td class="nump">$ 2.16<span></span>
</td>
<td class="nump">$ 1.20<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_DividendsCommonStockCash', window );">Amount Declared</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 8,917<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 9,018<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 9,054<span></span>
</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">$ 8,911<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 8,912<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 8,910<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 8,907<span></span>
</td>
<td class="nump">$ 62,876<span></span>
</td>
<td class="nump">$ 35,640<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsOfDividends', window );">Dividends paid</a></td>
<td class="nump">$ 8,845<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 8,945<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 8,982<span></span>
</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">$ 8,866<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 8,821<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 8,821<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 8,786<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 62,671<span></span>
</td>
<td class="nump">$ 35,294<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DividendsAxis=ibp_DividendsDeclaredAndPaid1Member', window );">Dividends Declared And Paid 1</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DividendsPayableLineItems', window );"><strong>Dividends Payable [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_CommonStockDividendsPerShareDeclared', window );">Cash dividends declared per share (in USD per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.90<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_DividendsCommonStockCash', window );">Amount Declared</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">$ 26,585<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_PaymentsOfDividends', window );">Dividends paid</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">$ 26,242<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_DividendsAxis=ibp_DividendsDeclaredAndPaid2Member', window );">Dividends Declared And Paid 2</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DividendsPayableLineItems', window );"><strong>Dividends Payable [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_CommonStockDividendsPerShareDeclared', window );">Cash dividends declared per share (in USD per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.315<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_DividendsCommonStockCash', window );">Amount Declared</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 9,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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_PaymentsOfDividends', window );">Dividends paid</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 9,184<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockDividendsPerShareDeclared">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 dividends declared during the period for each share of common stock outstanding.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockDividendsPerShareDeclared</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DividendsCommonStockCash">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of paid and unpaid common stock dividends declared with the form of settlement in cash.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DividendsCommonStockCash</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DividendsPayableLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DividendsPayableLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsOfDividends">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cash outflow in the form of capital distributions and dividends to common shareholders, preferred shareholders and noncontrolling interests.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsOfDividends</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DividendsAxis=ibp_DividendsDeclaredAndPaid1Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DividendsAxis=ibp_DividendsDeclaredAndPaid1Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_DividendsAxis=ibp_DividendsDeclaredAndPaid2Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DividendsAxis=ibp_DividendsDeclaredAndPaid2Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>94
<FILENAME>R81.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687970541424">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Employee Benefits - Additional Information (Detail)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>USD ($) </div>
<div>installment </div>
<div>shares</div>
</th>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($) </div>
<div>shares</div>
</th>
<th class="th">
<div>Dec. 31, 2020 </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_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems', window );"><strong>Pension Plans, Postretirement and Other Employee Benefits [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_HealthInsuranceExpense', window );">Healthcare benefit expense, net of employee contributions | $</a></td>
<td class="nump">$ 30,300<span></span>
</td>
<td class="nump">$ 28,400<span></span>
</td>
<td class="nump">$ 24,100<span></span>
</td>
</tr>
<tr class="re">
<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 );">Accrued compensation | $</a></td>
<td class="nump">51,608<span></span>
</td>
<td class="nump">50,964<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedContributionPlanAdministrativeExpenses', window );">Administration expense related to employee contribution plan | $</a></td>
<td class="nump">$ 2,900<span></span>
</td>
<td class="nump">$ 2,500<span></span>
</td>
<td class="nump">$ 2,200<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Share-based awards granted (in shares)</a></td>
<td class="nump">100,000<span></span>
</td>
<td class="nump">100,000<span></span>
</td>
<td class="nump">200,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Vesting period (in years)</a></td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfEqualInstallmentsForVestingOfStockAwards', window );">Number of equal installments | installment</a></td>
<td class="nump">3<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_VestingAxis=us-gaap_ShareBasedCompensationAwardTrancheOneMember', window );">Share-based Payment Arrangement, Tranche One</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_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems', window );"><strong>Pension Plans, Postretirement and Other Employee Benefits [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_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage', window );">Vesting percentage (as a percent)</a></td>
<td class="nump">33.33%<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_VestingAxis=us-gaap_ShareBasedCompensationAwardTrancheTwoMember', window );">Share-based Payment Arrangement, Tranche Two</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_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems', window );"><strong>Pension Plans, Postretirement and Other Employee Benefits [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_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage', window );">Vesting percentage (as a percent)</a></td>
<td class="nump">33.33%<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_VestingAxis=us-gaap_ShareBasedCompensationAwardTrancheThreeMember', window );">Share-based Payment Arrangement, Tranche Three</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_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems', window );"><strong>Pension Plans, Postretirement and Other Employee Benefits [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_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage', window );">Vesting percentage (as a percent)</a></td>
<td class="nump">33.33%<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_PlanNameAxis=ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember', window );">2014 Omnibus Incentive Plan</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_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems', window );"><strong>Pension Plans, Postretirement and Other Employee Benefits [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_SharesPaidForTaxWithholdingForShareBasedCompensation', window );">Common stock surrendered by employees (in shares)</a></td>
<td class="nump">53,000<span></span>
</td>
<td class="nump">44,000<span></span>
</td>
<td class="nump">25,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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant', window );">Common stock shares available for issuance (in shares)</a></td>
<td class="nump">1,700,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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized', window );">Common stock shares authorized (in shares)</a></td>
<td class="nump">3,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_AwardTypeAxis=ibp_PerformanceBasedAwardsMember', window );">Performance-Based Stock Awards</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_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems', window );"><strong>Pension Plans, Postretirement and Other Employee Benefits [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 );">Share-based awards granted (in shares)</a></td>
<td class="nump">54,585<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=ibp_LiabilityPerformanceBasedStockAwardsMember', window );">Liability Performance-Based Stock Awards</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_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems', window );"><strong>Pension Plans, Postretirement and Other Employee Benefits [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 );">Share-based awards granted (in shares)</a></td>
<td class="nump">7,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_AwardTypeAxis=ibp_PerformanceBasedRestrictedStockUnitsMember', window );">Performance Based Restricted Stock Units</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_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems', window );"><strong>Pension Plans, Postretirement and Other Employee Benefits [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 );">Share-based awards granted (in shares)</a></td>
<td class="nump">17,000<span></span>
</td>
<td class="nump">8,000<span></span>
</td>
<td class="nump">14,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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Vesting period (in years)</a></td>
<td class="text">1 year<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=us-gaap_EmployeeStockOptionMember', window );">Share-based Payment Arrangement, Option</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_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems', window );"><strong>Pension Plans, Postretirement and Other Employee Benefits [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_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense', window );">Share based compensation, recognized tax benefits | $</a></td>
<td class="nump">$ 300<span></span>
</td>
<td class="nump">$ 1,700<span></span>
</td>
<td class="num">$ (300)<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_TitleOfIndividualAxis=srt_DirectorMember', window );">Directors</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_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems', window );"><strong>Pension Plans, Postretirement and Other Employee Benefits [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 );">Share-based awards granted (in shares)</a></td>
<td class="nump">6,000,000<span></span>
</td>
<td class="nump">4,000,000<span></span>
</td>
<td class="nump">6,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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Vesting period (in years)</a></td>
<td class="text">1 year<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_TitleOfIndividualAxis=srt_OfficerMember', window );">Officer | Performance-Based Stock Awards</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_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems', window );"><strong>Pension Plans, Postretirement and Other Employee Benefits [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 );">Share-based awards granted (in shares)</a></td>
<td class="nump">41,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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfEqualInstallmentsForVestingOfStockAwards', window );">Number of equal installments | installment</a></td>
<td class="nump">2<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_TitleOfIndividualAxis=srt_OfficerMember', window );">Officer | Performance-Based Stock Awards | Share-based Payment Arrangement, Tranche One</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_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems', window );"><strong>Pension Plans, Postretirement and Other Employee Benefits [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_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage', window );">Vesting percentage (as a percent)</a></td>
<td class="nump">50.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_TitleOfIndividualAxis=srt_OfficerMember', window );">Officer | Performance-Based Stock Awards | Share-based Payment Arrangement, Tranche Two</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_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems', window );"><strong>Pension Plans, Postretirement and Other Employee Benefits [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_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage', window );">Vesting percentage (as a percent)</a></td>
<td class="nump">50.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_TitleOfIndividualAxis=ibp_CertainEmployeesMember', window );">Certain Employees | Performance-Based Stock Awards</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_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems', window );"><strong>Pension Plans, Postretirement and Other Employee Benefits [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 );">Share-based awards granted (in shares)</a></td>
<td class="nump">39,000<span></span>
</td>
<td class="nump">5,000<span></span>
</td>
<td class="nump">7,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_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember', window );">Cost of sales</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_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems', window );"><strong>Pension Plans, Postretirement and Other Employee Benefits [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_WorkersCompensationExpense', window );">Workers' compensation expense | $</a></td>
<td class="nump">$ 19,100<span></span>
</td>
<td class="nump">$ 17,600<span></span>
</td>
<td class="nump">$ 15,700<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_RetirementPlanTypeAxis=us-gaap_DefinedBenefitPostretirementHealthCoverageMember', window );">Medical IBNR Included in Accrued Compensation</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_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems', window );"><strong>Pension Plans, Postretirement and Other Employee Benefits [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_EmployeeRelatedLiabilitiesCurrent', window );">Accrued compensation | $</a></td>
<td class="nump">$ 3,800<span></span>
</td>
<td class="nump">$ 3,300<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_ibp_HealthInsuranceExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Health insurance expense.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ibp_HealthInsuranceExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Pension plans, postretirement and other employee benefits.</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;">ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ibp_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfEqualInstallmentsForVestingOfStockAwards">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 equal installments for vesting restricted stock.</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;">ibp_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfEqualInstallmentsForVestingOfStockAwards</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:decimalItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ibp_WorkersCompensationExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>All expenses associated with Worker's Compensation Insurance benefits incurred during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ibp_WorkersCompensationExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DefinedContributionPlanAdministrativeExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 administrative expense incurred by defined contribution plan.</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_DefinedContributionPlanAdministrativeExpenses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of tax benefit for recognition of expense of award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 authorized for issuance under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 difference between the maximum number of shares (or other type of equity) authorized for issuance under the plan (including the effects of amendments and adjustments), and the sum of: 1) the number of shares (or other type of equity) already issued upon exercise of options or other equity-based awards under the plan; and 2) shares (or other type of equity) reserved for issuance on granting of outstanding awards, net of cancellations and forfeitures, if applicable.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant</td>
</tr>
<tr>
<td style="padding-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_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 vesting of award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage</td>
</tr>
<tr>
<td style="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_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_VestingAxis=us-gaap_ShareBasedCompensationAwardTrancheOneMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_VestingAxis=us-gaap_ShareBasedCompensationAwardTrancheOneMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_VestingAxis=us-gaap_ShareBasedCompensationAwardTrancheTwoMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_VestingAxis=us-gaap_ShareBasedCompensationAwardTrancheTwoMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_VestingAxis=us-gaap_ShareBasedCompensationAwardTrancheThreeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_VestingAxis=us-gaap_ShareBasedCompensationAwardTrancheThreeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PlanNameAxis=ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=ibp_PerformanceBasedAwardsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=ibp_PerformanceBasedAwardsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=ibp_LiabilityPerformanceBasedStockAwardsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=ibp_LiabilityPerformanceBasedStockAwardsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=ibp_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=ibp_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_EmployeeStockOptionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_EmployeeStockOptionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_TitleOfIndividualAxis=srt_DirectorMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_TitleOfIndividualAxis=srt_DirectorMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_TitleOfIndividualAxis=srt_OfficerMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_TitleOfIndividualAxis=srt_OfficerMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_TitleOfIndividualAxis=ibp_CertainEmployeesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_TitleOfIndividualAxis=ibp_CertainEmployeesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RetirementPlanTypeAxis=us-gaap_DefinedBenefitPostretirementHealthCoverageMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RetirementPlanTypeAxis=us-gaap_DefinedBenefitPostretirementHealthCoverageMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>95
<FILENAME>R82.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687976407968">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Employee Benefits - Summary of Workers' Compensation Known Claims and IBNR Reserves (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CompensationAndRetirementDisclosureAbstract', window );"><strong>Retirement Benefits [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_WorkersCompensationLiabilityCurrent', window );">Included in other current liabilities</a></td>
<td class="nump">$ 9,946<span></span>
</td>
<td class="nump">$ 8,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_us-gaap_WorkersCompensationLiabilityNoncurrent', window );">Included in other long-term liabilities</a></td>
<td class="nump">13,730<span></span>
</td>
<td class="nump">13,397<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_WorkersCompensationLiabilityCurrentAndNoncurrent', window );">Workers' compensation liability</a></td>
<td class="nump">$ 23,676<span></span>
</td>
<td class="nump">$ 21,445<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CompensationAndRetirementDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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_CompensationAndRetirementDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WorkersCompensationLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 and payables pertaining to claims incurred of a workers compensation nature. 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WorkersCompensationLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_WorkersCompensationLiabilityCurrentAndNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 and payables pertaining to claims incurred of a workers compensation nature.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(15)(a))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(24))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WorkersCompensationLiabilityCurrentAndNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_WorkersCompensationLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 and payables pertaining to claims incurred of a workers compensation nature. Used to reflect the noncurrent portion of the liabilities (due beyond one year; or beyond one 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.24)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WorkersCompensationLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>96
<FILENAME>R83.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687979963584">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Employee Benefits - Schedule of Insurance Receivable for Claims (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CompensationAndRetirementDisclosureAbstract', window );"><strong>Retirement Benefits [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_InsuranceSettlementsReceivableNoncurrent', window );">Included in other non-current assets</a></td>
<td class="nump">$ 2,318<span></span>
</td>
<td class="nump">$ 2,137<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CompensationAndRetirementDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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_CompensationAndRetirementDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InsuranceSettlementsReceivableNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 due after one year of the balance sheet date (or one operating cycle, if longer) of amount due in settlement of a claim for reimbursement from an insurance company when the Company has suffered a loss covered under an insurance policy.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(17))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InsuranceSettlementsReceivableNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>97
<FILENAME>R84.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687975739840">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Employee Benefits - Contributions to Multiemployer Pensions and Health and Welfare Benefit Plans (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_MultiemployerPlansLineItems', window );"><strong>Multiemployer Plan [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_MultiemployerPlanEmployerContributionCost', window );">Total contributions</a></td>
<td class="nump">$ 6,031<span></span>
</td>
<td class="nump">$ 5,676<span></span>
</td>
<td class="nump">$ 2,080<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_RetirementPlanTypeAxis=us-gaap_PensionPlansDefinedBenefitMember', window );">Pension plans</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_MultiemployerPlansLineItems', window );"><strong>Multiemployer Plan [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_MultiemployerPlanEmployerContributionCost', window );">Total contributions</a></td>
<td class="nump">2,916<span></span>
</td>
<td class="nump">2,783<span></span>
</td>
<td class="nump">1,128<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_RetirementPlanTypeAxis=us-gaap_DefinedBenefitPostretirementHealthCoverageMember', window );">Health &amp; welfare plans</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_MultiemployerPlansLineItems', window );"><strong>Multiemployer Plan [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_MultiemployerPlanEmployerContributionCost', window );">Total contributions</a></td>
<td class="nump">$ 3,115<span></span>
</td>
<td class="nump">$ 2,893<span></span>
</td>
<td class="nump">$ 952<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_MultiemployerPlanEmployerContributionCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 for employer contribution to multiemployer plan. Multiemployer plan includes, but is not limited to, pension plan determined to be individually significant and insignificant and other postretirement benefit 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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 80<br> -Section 55<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=35742348&amp;loc=SL14450788-114948<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 80<br> -Section 35<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=29639808&amp;loc=d3e29008-114946<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 80<br> -Section 50<br> -Paragraph 11<br> -URI https://asc.fasb.org/extlink&amp;oid=65877416&amp;loc=SL14450702-114947<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 80<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=65877416&amp;loc=SL14450691-114947<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MultiemployerPlanEmployerContributionCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_MultiemployerPlansLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_MultiemployerPlansLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RetirementPlanTypeAxis=us-gaap_PensionPlansDefinedBenefitMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RetirementPlanTypeAxis=us-gaap_PensionPlansDefinedBenefitMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_RetirementPlanTypeAxis=us-gaap_DefinedBenefitPostretirementHealthCoverageMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RetirementPlanTypeAxis=us-gaap_DefinedBenefitPostretirementHealthCoverageMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>98
<FILENAME>R85.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687969945888">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Employee Benefits - Summary of Equity-Based Awards for Employees (Detail) - $ / shares<br></strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward', window );"><strong>Awards</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 );">Share-based awards granted (in shares)</a></td>
<td class="nump">100,000<span></span>
</td>
<td class="nump">100,000<span></span>
</td>
<td class="nump">200,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_AwardTypeAxis=ibp_CommonStockAwardsMember', window );">Common Stock Awards</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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward', window );"><strong>Awards</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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares', window );">Nonvested common stock awards, Beginning balance (in shares)</a></td>
<td class="nump">199,353<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Granted (in shares)</a></td>
<td class="nump">109,189<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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares', window );">Vested (in shares)</a></td>
<td class="num">(149,504)<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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares', window );">Forfeited/Cancelled (in shares)</a></td>
<td class="num">(1,921)<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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares', window );">Nonvested common stock awards, Ending balance (in shares)</a></td>
<td class="nump">157,117<span></span>
</td>
<td class="nump">199,353<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueAbstract', window );"><strong>Weighted Average Grant Date Fair Value Per Share</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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Nonvested common stock awards, Beginning balance (in USD per share)</a></td>
<td class="nump">$ 68.99<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Granted (in USD per share)</a></td>
<td class="nump">89.32<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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue', window );">Vested (in USD per share)</a></td>
<td class="nump">74.96<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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue', window );">Forfeited/Cancelled (in USD per share)</a></td>
<td class="nump">79.60<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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Nonvested common stock awards, Ending balance (in USD per share)</a></td>
<td class="nump">$ 77.31<span></span>
</td>
<td class="nump">$ 68.99<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=ibp_PerformanceBasedAwardsMember', window );">Performance-Based Stock Awards</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward', window );"><strong>Awards</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Nonvested performance-based stock awards/units, Beginning balance (in shares)</a></td>
<td class="nump">143,401<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 );">Share-based awards granted (in shares)</a></td>
<td class="nump">54,585<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod', window );">Vested (in shares)</a></td>
<td class="num">(71,933)<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod', window );">Forfeited/Cancelled (in shares)</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Nonvested performance-based stock awards/units, Ending balance (in shares)</a></td>
<td class="nump">126,053<span></span>
</td>
<td class="nump">143,401<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward', window );"><strong>Weighted Average Grant Date Fair Value Per Share</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Nonvested performance-based stock awards/units, Beginning balance (in USD per share)</a></td>
<td class="nump">$ 81.30<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Granted (in USD per share)</a></td>
<td class="nump">102.98<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue', window );">Vested (in USD per share)</a></td>
<td class="nump">59.07<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue', window );">Forfeited/Cancelled (in USD per share)</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Nonvested performance-based stock awards/units, Ending balance (in USD per share)</a></td>
<td class="nump">$ 103.37<span></span>
</td>
<td class="nump">$ 81.30<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=ibp_PerformanceBasedStockUnitsMember', window );">Performance-Based Restricted Stock Units</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward', window );"><strong>Awards</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Nonvested performance-based stock awards/units, Beginning balance (in shares)</a></td>
<td class="nump">8,252<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 );">Share-based awards granted (in shares)</a></td>
<td class="nump">16,618<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod', window );">Vested (in shares)</a></td>
<td class="num">(8,061)<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod', window );">Forfeited/Cancelled (in shares)</a></td>
<td class="num">(1,098)<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Nonvested performance-based stock awards/units, Ending balance (in shares)</a></td>
<td class="nump">15,711<span></span>
</td>
<td class="nump">8,252<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward', window );"><strong>Weighted Average Grant Date Fair Value Per Share</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Nonvested performance-based stock awards/units, Beginning balance (in USD per share)</a></td>
<td class="nump">$ 126.89<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Granted (in USD per share)</a></td>
<td class="nump">80.55<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue', window );">Vested (in USD per share)</a></td>
<td class="nump">126.89<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue', window );">Forfeited/Cancelled (in USD per share)</a></td>
<td class="nump">88.61<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Nonvested performance-based stock awards/units, Ending balance (in USD per share)</a></td>
<td class="nump">$ 80.55<span></span>
</td>
<td class="nump">$ 126.89<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 equity-based payment instruments, excluding stock (or unit) options, that were forfeited 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(03)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 fair value as of the grant date of equity-based award plans other than stock (unit) option plans that were not exercised or put into effect as a result of the occurrence of a terminating event.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(03)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="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_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Per share or unit weighted-average fair value of 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/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 equity-based payment instruments, excluding stock (or unit) options, that vested 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(02)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 as of grant date pertaining to an equity-based award plan other than a stock (or unit) option plan for which the grantee gained the right during the reporting period, by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash in accordance with the terms of the arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(02)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 number of share options (or share units) granted during 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 non-vested options 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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 non-vested options forfeited.</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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares</td>
</tr>
<tr>
<td style="padding-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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 grant-date fair value of non-vested options forfeited.</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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 grant-date fair value of non-vested options 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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 options vested.</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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares</td>
</tr>
<tr>
<td style="padding-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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 grant-date fair value of options vested.</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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="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_AwardTypeAxis=ibp_CommonStockAwardsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=ibp_CommonStockAwardsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=ibp_PerformanceBasedAwardsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=ibp_PerformanceBasedAwardsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=ibp_PerformanceBasedStockUnitsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=ibp_PerformanceBasedStockUnitsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>99
<FILENAME>R86.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687971332320">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Employee Benefits - Summary of Share-Based Compensation Expense Under the 2014 Omnibus Incentive Plan (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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_AllocatedShareBasedCompensationExpense', window );">Share-based compensation expense</a></td>
<td class="nump">$ 13,816<span></span>
</td>
<td class="nump">$ 13,752<span></span>
</td>
<td class="nump">$ 10,826<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=ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember', window );">2014 Omnibus Incentive Plan</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_AllocatedShareBasedCompensationExpense', window );">Share-based compensation expense</a></td>
<td class="nump">13,816<span></span>
</td>
<td class="nump">13,752<span></span>
</td>
<td class="nump">10,826<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=ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember', window );">2014 Omnibus Incentive Plan | Common Stock Awards</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_AllocatedShareBasedCompensationExpense', window );">Share-based compensation expense</a></td>
<td class="nump">6,247<span></span>
</td>
<td class="nump">5,285<span></span>
</td>
<td class="nump">4,116<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=ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember', window );">2014 Omnibus Incentive Plan | Common Stock Awards | Non-Employee Common Stock Awards</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_AllocatedShareBasedCompensationExpense', window );">Share-based compensation expense</a></td>
<td class="nump">547<span></span>
</td>
<td class="nump">465<span></span>
</td>
<td class="nump">333<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember', window );">2014 Omnibus Incentive Plan | Performance-Based Stock Awards</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_AllocatedShareBasedCompensationExpense', window );">Share-based compensation expense</a></td>
<td class="nump">5,337<span></span>
</td>
<td class="nump">4,528<span></span>
</td>
<td class="nump">3,869<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=ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember', window );">2014 Omnibus Incentive Plan | Liability Performance-Based Stock Awards</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_AllocatedShareBasedCompensationExpense', window );">Share-based compensation expense</a></td>
<td class="nump">493<span></span>
</td>
<td class="nump">2,612<span></span>
</td>
<td class="nump">1,969<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=ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember', window );">2014 Omnibus Incentive Plan | Performance-Based Restricted Stock Units</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_AllocatedShareBasedCompensationExpense', window );">Share-based compensation expense</a></td>
<td class="nump">$ 1,192<span></span>
</td>
<td class="nump">$ 862<span></span>
</td>
<td class="nump">$ 539<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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_PlanNameAxis=ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=ibp_CommonStockAwardsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=ibp_CommonStockAwardsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_GranteeStatusAxis=us-gaap_ShareBasedPaymentArrangementNonemployeeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_GranteeStatusAxis=us-gaap_ShareBasedPaymentArrangementNonemployeeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=ibp_PerformanceBasedAwardsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=ibp_PerformanceBasedAwardsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=ibp_LiabilityPerformanceBasedStockAwardsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=ibp_LiabilityPerformanceBasedStockAwardsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=ibp_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=ibp_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>100
<FILENAME>R87.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687981356080">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Employee Benefits - Summary of Stock Compensation Expense (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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_AllocatedShareBasedCompensationExpense', window );">Stock compensation expense</a></td>
<td class="nump">$ 13,816<span></span>
</td>
<td class="nump">$ 13,752<span></span>
</td>
<td class="nump">$ 10,826<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_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember', window );">Cost of sales</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_AllocatedShareBasedCompensationExpense', window );">Stock compensation expense</a></td>
<td class="nump">648<span></span>
</td>
<td class="nump">448<span></span>
</td>
<td class="nump">284<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_IncomeStatementLocationAxis=us-gaap_SellingAndMarketingExpenseMember', window );">Selling</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_AllocatedShareBasedCompensationExpense', window );">Stock compensation expense</a></td>
<td class="nump">478<span></span>
</td>
<td class="nump">204<span></span>
</td>
<td class="nump">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_IncomeStatementLocationAxis=us-gaap_GeneralAndAdministrativeExpenseMember', window );">Administrative</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_AllocatedShareBasedCompensationExpense', window );">Stock compensation expense</a></td>
<td class="nump">$ 12,690<span></span>
</td>
<td class="nump">$ 13,100<span></span>
</td>
<td class="nump">$ 10,340<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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_SellingAndMarketingExpenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IncomeStatementLocationAxis=us-gaap_SellingAndMarketingExpenseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_GeneralAndAdministrativeExpenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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_IncomeStatementLocationAxis=us-gaap_GeneralAndAdministrativeExpenseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>101
<FILENAME>R88.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687981970480">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Employee Benefits - Unrecognized Share-Based Compensation Expense Related to Unvested Awards (Details)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th">
<div>Dec. 31, 2022 </div>
<div>USD ($)</div>
</th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized', window );">Unrecognized Compensation Expense on Unvested Awards</a></td>
<td class="nump">$ 12,432<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=ibp_CommonStockAwardsMember', window );">Common Stock Awards</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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized', window );">Unrecognized Compensation Expense on Unvested Awards</a></td>
<td class="nump">$ 6,259<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1', window );">Weighted Average Remaining Vesting Period</a></td>
<td class="text">1 year 8 months 12 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_us-gaap_AwardTypeAxis=ibp_PerformanceBasedAwardsMember', window );">Performance-Based Stock Awards</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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized', window );">Unrecognized Compensation Expense on Unvested Awards</a></td>
<td class="nump">$ 5,825<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1', window );">Weighted Average Remaining Vesting Period</a></td>
<td class="text">1 year 7 months 6 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_us-gaap_AwardTypeAxis=ibp_PerformanceBasedRestrictedStockUnitsMember', window );">Performance-Based Restricted Stock Units</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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized', window );">Unrecognized Compensation Expense on Unvested Awards</a></td>
<td class="nump">$ 348<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1', window );">Weighted Average Remaining Vesting Period</a></td>
<td class="text">3 months 18 days<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 not yet recognized for nonvested award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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=ibp_CommonStockAwardsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=ibp_CommonStockAwardsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=ibp_PerformanceBasedAwardsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=ibp_PerformanceBasedAwardsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=ibp_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=ibp_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>102
<FILENAME>R89.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687975825472">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes - Provision for Income Taxes (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract', window );"><strong>Current:</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_CurrentFederalTaxExpenseBenefit', window );">Federal</a></td>
<td class="nump">$ 55,488<span></span>
</td>
<td class="nump">$ 27,011<span></span>
</td>
<td class="nump">$ 33,495<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CurrentStateAndLocalTaxExpenseBenefit', window );">State</a></td>
<td class="nump">17,312<span></span>
</td>
<td class="nump">10,139<span></span>
</td>
<td class="nump">8,918<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_CurrentIncomeTaxExpenseBenefit', window );">Current income tax expense (benefit)</a></td>
<td class="nump">72,800<span></span>
</td>
<td class="nump">37,150<span></span>
</td>
<td class="nump">42,413<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract', window );"><strong>Deferred:</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_DeferredFederalIncomeTaxExpenseBenefit', window );">Federal</a></td>
<td class="nump">5,584<span></span>
</td>
<td class="num">(437)<span></span>
</td>
<td class="num">(7,177)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit', window );">State</a></td>
<td class="nump">1,495<span></span>
</td>
<td class="num">(1)<span></span>
</td>
<td class="num">(1,298)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefit', window );">Deferred income tax expense (benefit)</a></td>
<td class="nump">7,079<span></span>
</td>
<td class="num">(438)<span></span>
</td>
<td class="num">(8,475)<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_IncomeTaxExpenseBenefit', window );">Total tax expense</a></td>
<td class="nump">$ 79,879<span></span>
</td>
<td class="nump">$ 36,712<span></span>
</td>
<td class="nump">$ 33,938<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_CurrentFederalTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current national tax expense (benefit) for non-US (United States of America) jurisdiction.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrentFederalTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CurrentIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) pertaining to taxable income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.2)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrentIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CurrentStateAndLocalTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrentStateAndLocalTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredFederalIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred national tax expense (benefit) for non-US (United States of America) jurisdiction.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredFederalIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.1)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.2)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.7)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32672-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123586238&amp;loc=d3e38679-109324<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>103
<FILENAME>R90.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687971659152">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes - Reconciliation of Effective Tax Rate on Net Income (Loss) and Federal Statutory Tax Rate (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract', window );"><strong>Amount</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_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate', window );">Income tax at federal statutory rate</a></td>
<td class="nump">$ 63,694<span></span>
</td>
<td class="nump">$ 32,650<span></span>
</td>
<td class="nump">$ 27,547<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost', window );">Stock compensation</a></td>
<td class="nump">300<span></span>
</td>
<td class="num">(1,567)<span></span>
</td>
<td class="nump">331<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationOtherAdjustments', window );">Other permanent items</a></td>
<td class="nump">1,282<span></span>
</td>
<td class="nump">1,274<span></span>
</td>
<td class="nump">424<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance', window );">Change in valuation allowance</a></td>
<td class="num">(184)<span></span>
</td>
<td class="num">(922)<span></span>
</td>
<td class="num">(207)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationTaxContingencies', window );">Change in uncertain tax positions</a></td>
<td class="num">(459)<span></span>
</td>
<td class="num">(2,867)<span></span>
</td>
<td class="nump">65<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes', window );">State income taxes, net of federal benefit</a></td>
<td class="nump">15,246<span></span>
</td>
<td class="nump">8,144<span></span>
</td>
<td class="nump">5,778<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_IncomeTaxExpenseBenefit', window );">Total tax expense</a></td>
<td class="nump">$ 79,879<span></span>
</td>
<td class="nump">$ 36,712<span></span>
</td>
<td class="nump">$ 33,938<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract', window );"><strong>Percent</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_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate', window );">Income tax at federal statutory rate</a></td>
<td class="nump">21.00%<span></span>
</td>
<td class="nump">21.00%<span></span>
</td>
<td class="nump">21.00%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost', window );">Stock compensation</a></td>
<td class="nump">0.10%<span></span>
</td>
<td class="num">(1.00%)<span></span>
</td>
<td class="nump">0.30%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent', window );">Other permanent items</a></td>
<td class="nump">0.40%<span></span>
</td>
<td class="nump">0.80%<span></span>
</td>
<td class="nump">0.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_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance', window );">Change in valuation allowance</a></td>
<td class="num">(0.10%)<span></span>
</td>
<td class="num">(0.60%)<span></span>
</td>
<td class="num">(0.20%)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationTaxContingencies', window );">Change in uncertain tax positions</a></td>
<td class="num">(0.10%)<span></span>
</td>
<td class="num">(1.80%)<span></span>
</td>
<td class="nump">0.10%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes', window );">State income taxes, net of federal benefit</a></td>
<td class="nump">5.00%<span></span>
</td>
<td class="nump">5.20%<span></span>
</td>
<td class="nump">4.40%<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_EffectiveIncomeTaxRateContinuingOperations', window );">Total tax expense</a></td>
<td class="nump">26.30%<span></span>
</td>
<td class="nump">23.60%<span></span>
</td>
<td class="nump">25.90%<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_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of domestic federal statutory tax rate applicable to pretax income (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.4)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to changes in the valuation allowance for deferred tax 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.4)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying domestic federal statutory income tax rate to pretax income (loss) from continuing operation, attributable to nondeductible 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://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.4)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost</td>
</tr>
<tr>
<td style="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_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of the difference, between reported income tax expense (benefit) and the expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations, that is attributable to tax exempt income, equity in earnings (loss) of an unconsolidated subsidiary, minority interest income (expense), tax holiday, disposition of a business, disposition of an asset, repatriation of foreign earnings, repatriation of foreign earnings jobs creation act of 2004, change in enacted tax rate, prior year income taxes, change in deferred tax asset valuation allowance, and other adjustments.</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_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations applicable to state and local income tax expense (benefit), net of federal tax expense (benefit).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.4)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationTaxContingencies">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to income tax contingencies. Includes, but not limited to, domestic tax contingency, foreign tax contingency, state and local tax contingency, and other 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.4)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationTaxContingencies</td>
</tr>
<tr>
<td style="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_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.7)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32672-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123586238&amp;loc=d3e38679-109324<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to increase (decrease) in the valuation allowance for deferred tax 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 income tax expense or benefit for the period computed by applying the domestic federal statutory tax rates to pretax 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/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 reported income tax expense (benefit) in excess of (less than) expected income tax expense (benefit) computed by applying domestic federal statutory income tax rate to pretax income (loss) from continuing operation, attributable to nondeductible expense for award under share-based payment arrangement. Includes, but is not limited to, expense determined to be nondeductible upon grant or after for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncomeTaxReconciliationOtherAdjustments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to other adjustments.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationOtherAdjustments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncomeTaxReconciliationStateAndLocalIncomeTaxes">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to state and local income tax expense (benefit).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncomeTaxReconciliationTaxContingencies">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to increase (decrease) in income tax contingencies. Including, but not limited to, domestic tax contingency, foreign tax contingency, state and local tax contingency, and other 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationTaxContingencies</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>104
<FILENAME>R91.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687976419872">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Income Taxes - Components of Net Deferred Tax Asset or Liability (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsNetAbstract', window );"><strong>Deferred Tax Assets</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances', window );">Accrued liabilities and allowances</a></td>
<td class="nump">$ 13,009<span></span>
</td>
<td class="nump">$ 10,200<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts', window );">Allowance for doubtful accounts</a></td>
<td class="nump">1,251<span></span>
</td>
<td class="nump">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_DeferredTaxAssetsInventory', window );">Inventories</a></td>
<td class="nump">1,210<span></span>
</td>
<td class="nump">900<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment', window );">Property and equipment</a></td>
<td class="nump">538<span></span>
</td>
<td class="nump">333<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets', window );">Intangibles</a></td>
<td class="nump">7,673<span></span>
</td>
<td class="nump">7,042<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards', window );">Net operating loss carryforwards</a></td>
<td class="nump">719<span></span>
</td>
<td class="nump">1,049<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOther', window );">Other</a></td>
<td class="nump">15<span></span>
</td>
<td class="nump">14<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_DeferredTaxAssetsGross', window );">Long-term deferred tax assets</a></td>
<td class="nump">24,415<span></span>
</td>
<td class="nump">20,517<span></span>
</td>
</tr>
<tr class="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 );">Less: Valuation allowance</a></td>
<td class="num">(44)<span></span>
</td>
<td class="num">(216)<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_DeferredTaxAssetsNet', window );">Net deferred tax assets</a></td>
<td class="nump">24,371<span></span>
</td>
<td class="nump">20,301<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesAbstract', window );"><strong>Deferred Tax Liabilities</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesDeferredExpenseReservesAndAccruals', window );">Accrued liabilities and allowances</a></td>
<td class="num">(640)<span></span>
</td>
<td class="num">(669)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment', window );">Property and equipment</a></td>
<td class="num">(8,489)<span></span>
</td>
<td class="num">(7,629)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets', window );">Intangibles</a></td>
<td class="num">(10,659)<span></span>
</td>
<td class="num">(6,783)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesInvestments', window );">Investment in partnership</a></td>
<td class="num">(31,154)<span></span>
</td>
<td class="num">(8,271)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesOther', window );">Other</a></td>
<td class="num">(1,067)<span></span>
</td>
<td class="num">(793)<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_DeferredIncomeTaxLiabilities', window );">Long-term deferred tax liabilities</a></td>
<td class="num">(52,009)<span></span>
</td>
<td class="num">(24,145)<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_DeferredTaxLiabilities', window );">Net deferred tax liabilities</a></td>
<td class="num">(27,638)<span></span>
</td>
<td class="num">(3,844)<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_BalanceSheetLocationAxis=us-gaap_OtherNoncurrentAssetsMember', window );">Other non-current assets</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_DeferredTaxLiabilitiesAbstract', window );"><strong>Deferred Tax Liabilities</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsLiabilitiesNet', window );">Net deferred tax assets</a></td>
<td class="nump">820<span></span>
</td>
<td class="nump">975<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_BalanceSheetLocationAxis=ibp_DeferredIncomeTaxLiabilitiesNetMember', window );">Long-term deferred income tax liabilities</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_DeferredTaxLiabilitiesAbstract', window );"><strong>Deferred Tax Liabilities</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilities', window );">Net deferred tax liabilities</a></td>
<td class="num">$ (28,458)<span></span>
</td>
<td class="num">$ (4,819)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ibp_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Deferred tax assets tax deferred expense reserves and accruals allowances.</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;">ibp_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 liability attributable to taxable temporary differences.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(26)(b))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(15)(b)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(26)(a))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from intangible assets including goodwill.</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_DeferredTaxAssetsGoodwillAndIntangibleAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxAssetsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxAssetsInventory">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from inventory.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsInventory</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxAssetsLiabilitiesNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, without 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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsLiabilitiesNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsNetAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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_DeferredTaxAssetsNetAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 allocation of valuation allowances of deferred tax asset attributable to deductible operating loss carryforwards.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsOperatingLossCarryforwards</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxAssetsOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 allocation of valuation allowance, of deferred tax asset attributable to deductible temporary differences, 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsOther</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxAssetsPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from property, plant, and equipment.</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_DeferredTaxAssetsPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 allocation of valuation allowance, of deferred tax asset attributable to deductible temporary difference from allowance for credit loss on accounts receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsValuationAllowance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 without jurisdictional netting.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e31931-109318<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxLiabilitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DeferredTaxLiabilitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxLiabilitiesDeferredExpenseReservesAndAccruals">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 liability attributable to taxable temporary differences from reserves and accruals.</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_DeferredTaxLiabilitiesDeferredExpenseReservesAndAccruals</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 liability attributable to taxable temporary differences from intangible assets including 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxLiabilitiesInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 liability attributable to taxable temporary differences from investments (excludes investments in subsidiaries and equity method investments).</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_DeferredTaxLiabilitiesInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxLiabilitiesOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 liability attributable to taxable temporary differences 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilitiesOther</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxLiabilitiesPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 liability attributable to taxable temporary differences from property, plant, and equipment.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BalanceSheetLocationAxis=us-gaap_OtherNoncurrentAssetsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_BalanceSheetLocationAxis=us-gaap_OtherNoncurrentAssetsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BalanceSheetLocationAxis=ibp_DeferredIncomeTaxLiabilitiesNetMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_BalanceSheetLocationAxis=ibp_DeferredIncomeTaxLiabilitiesNetMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>105
<FILENAME>R92.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687981517552">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes - Additional Information (Detail) - USD ($)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards', window );">Deferred tax assets, net operating loss carryforwards</a></td>
<td class="nump">$ 719,000<span></span>
</td>
<td class="nump">$ 1,049,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_IncomeTaxExpenseBenefitOperatingLossCarryforwards', window );">Benefit of net operating loss carryforwards</a></td>
<td class="nump">3,400,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued', window );">Uncertain tax positions, interest expense and penalties accrued</a></td>
<td class="nump">500,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_ibp_IncomeTaxesLineItems', window );"><strong>Income Taxes [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_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate', window );">Unrecognized tax benefit that would affect the effective tax rate</a></td>
<td class="nump">500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum</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_ibp_IncomeTaxesLineItems', window );"><strong>Income Taxes [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_UnrecognizedTaxBenefitsNetOfIncomeTaxPenaltiesAndInterestExpense', window );">Decrease in unrecognized tax benefits, net of penalties and interest</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum</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_ibp_IncomeTaxesLineItems', window );"><strong>Income Taxes [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_UnrecognizedTaxBenefitsNetOfIncomeTaxPenaltiesAndInterestExpense', window );">Decrease in unrecognized tax benefits, net of penalties and interest</a></td>
<td class="nump">$ 2,800,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ibp_IncomeTaxExpenseBenefitOperatingLossCarryforwards">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Income tax expense benefit operating loss carryforwards.</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;">ibp_IncomeTaxExpenseBenefitOperatingLossCarryforwards</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ibp_IncomeTaxesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Income Taxes [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;">ibp_IncomeTaxesLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ibp_UnrecognizedTaxBenefitsNetOfIncomeTaxPenaltiesAndInterestExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Unrecognized tax benefits net of income tax penalties and interest expense.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ibp_UnrecognizedTaxBenefitsNetOfIncomeTaxPenaltiesAndInterestExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxAssetsOperatingLossCarryforwards">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 allocation of valuation allowances of deferred tax asset attributable to deductible operating loss carryforwards.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsOperatingLossCarryforwards</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount accrued for interest on an underpayment of income taxes and penalties related to a tax position claimed or expected to be claimed in the tax return.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32718-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The total amount of unrecognized tax benefits that, if recognized, would affect the effective tax rate.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15A<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=SL6600010-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>106
<FILENAME>R93.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687981255648">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes - Gross Unrecognized Tax Benefit (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward', window );"><strong>Reconciliation of Unrecognized Tax Benefits, Excluding Amounts Pertaining to Examined Tax Returns [Roll Forward]</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_UnrecognizedTaxBenefits', window );">Unrecognized tax benefit beginning balance</a></td>
<td class="nump">$ 4,302<span></span>
</td>
<td class="nump">$ 6,676<span></span>
</td>
<td class="nump">$ 5,717<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions', window );">Increase as a result of tax positions taken during the period</a></td>
<td class="nump">5,448<span></span>
</td>
<td class="nump">4,482<span></span>
</td>
<td class="nump">3,822<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromCurrentPeriodTaxPositions', window );">Decrease as a result of tax positions taken during the period</a></td>
<td class="num">(4,863)<span></span>
</td>
<td class="num">(3,999)<span></span>
</td>
<td class="num">(2,873)<span></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_ibp_UnrecognizedTaxBenefitsIncreaseResultingFromLapseOfApplicableStatuteOfLimitations', window );">Increase as a result of expiring statutes</a></td>
<td class="nump">3<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations', window );">Decrease as a result of expiring statutes</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(2,857)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefits', window );">Unrecognized tax benefit ending balance</a></td>
<td class="nump">$ 4,890<span></span>
</td>
<td class="nump">$ 4,302<span></span>
</td>
<td class="nump">$ 6,676<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ibp_UnrecognizedTaxBenefitsIncreaseResultingFromLapseOfApplicableStatuteOfLimitations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Unrecognized Tax Benefits, Increase Resulting From Lapse Of Applicable Statute Of Limitations</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;">ibp_UnrecognizedTaxBenefitsIncreaseResultingFromLapseOfApplicableStatuteOfLimitations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UnrecognizedTaxBenefits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 unrecognized tax benefits.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10B<br> -URI https://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=SL37586934-109318<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15A<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=SL6600010-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefits</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_UnrecognizedTaxBenefitsDecreasesResultingFromCurrentPeriodTaxPositions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 unrecognized tax benefits resulting from tax positions that have been or will be taken in current period tax return.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15A<br> -Subparagraph (a)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=SL6600010-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromCurrentPeriodTaxPositions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 unrecognized tax benefits resulting from tax positions that have been or will be taken in current period tax return.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15A<br> -Subparagraph (a)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=SL6600010-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 unrecognized tax benefits resulting from lapses of applicable statutes of limitations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15A<br> -Subparagraph (a)(4)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=SL6600010-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>107
<FILENAME>R94.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687981978496">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Related Party Transactions - Schedule of Related Party Transactions (Detail) - Affiliated Entity - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionLineItems', window );"><strong>Related Party Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromRelatedParties', window );">Sales</a></td>
<td class="nump">$ 12,793<span></span>
</td>
<td class="nump">$ 1,452<span></span>
</td>
<td class="nump">$ 3,987<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty', window );">Purchases</a></td>
<td class="nump">2,152<span></span>
</td>
<td class="nump">1,544<span></span>
</td>
<td class="nump">1,841<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty', window );">Rent</a></td>
<td class="nump">$ 1,300<span></span>
</td>
<td class="nump">$ 1,322<span></span>
</td>
<td class="nump">$ 1,125<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_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Expenses recognized resulting from transactions (excluding transactions that are eliminated in consolidated or combined financial statements) with related party.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39549-107864<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_RelatedPartyTransactionLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Purchases during the period (excluding transactions that are eliminated in consolidated or combined financial statements) with related party.</p></div>
<a href="javascript:void(0);" onclick="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_RelatedPartyTransactionPurchasesFromRelatedParty</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromRelatedParties">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of revenue, fees and commissions earned from transactions between (a) a parent company and its subsidiaries; (b) subsidiaries of a common parent; (c) an entity and trusts for the benefit of employees, for example, but not limited to, pension and profit-sharing trusts that are managed by or under the trusteeship of the entity's management; (d) an entity and its principal, owners, management, or members of their immediate families; and (e) affiliates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 946<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07.1(c))<br> -URI https://asc.fasb.org/extlink&amp;oid=120401555&amp;loc=SL114874292-224272<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(C))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.1(e))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromRelatedParties</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=srt_AffiliatedEntityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=srt_AffiliatedEntityMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>108
<FILENAME>R95.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687976755600">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Related Party Transactions - Additional Information (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=srt_AffiliatedEntityMember', window );">Affiliated Entity</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_RelatedPartyTransactionLineItems', window );"><strong>Related Party Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableRelatedPartiesCurrent', window );">Accounts receivable, related parties</a></td>
<td class="nump">$ 3,300<span></span>
</td>
<td class="nump">$ 900<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromRelatedParties', window );">Sales</a></td>
<td class="nump">12,793<span></span>
</td>
<td class="nump">$ 1,452<span></span>
</td>
<td class="nump">$ 3,987<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_TrustForBenefitOfEmployeesMember', window );">Board of Directors</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_RelatedPartyTransactionLineItems', window );"><strong>Related Party Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableRelatedPartiesCurrent', window );">Accounts receivable, related parties</a></td>
<td class="nump">$ 2,500<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_AccountsReceivableRelatedPartiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 receivables arising from transactions with related parties due within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(k)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39549-107864<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39603-107864<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3)(b))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableRelatedPartiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromRelatedParties">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of revenue, fees and commissions earned from transactions between (a) a parent company and its subsidiaries; (b) subsidiaries of a common parent; (c) an entity and trusts for the benefit of employees, for example, but not limited to, pension and profit-sharing trusts that are managed by or under the trusteeship of the entity's management; (d) an entity and its principal, owners, management, or members of their immediate families; and (e) affiliates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 946<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07.1(c))<br> -URI https://asc.fasb.org/extlink&amp;oid=120401555&amp;loc=SL114874292-224272<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(C))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.1(e))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromRelatedParties</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=srt_AffiliatedEntityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=srt_AffiliatedEntityMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_TrustForBenefitOfEmployeesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_TrustForBenefitOfEmployeesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>109
<FILENAME>R96.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687980043888">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Commitments and Contingencies - Schedule of Accrued General Insurance Reserves (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureAbstract', window );"><strong>Commitments and Contingencies 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_AccruedInsuranceCurrent', window );">Included in other current liabilities</a></td>
<td class="nump">$ 7,479<span></span>
</td>
<td class="nump">$ 5,889<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedInsuranceNoncurrent', window );">Included in other long-term liabilities</a></td>
<td class="nump">17,528<span></span>
</td>
<td class="nump">16,050<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_AccruedInsuranceCurrentAndNoncurrent', window );">Total</a></td>
<td class="nump">$ 25,007<span></span>
</td>
<td class="nump">$ 21,939<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_AccruedInsuranceCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 to insurance entities to mitigate potential loss from various risks or to satisfy a promise to provide certain coverage's to employees. 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedInsuranceCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AccruedInsuranceCurrentAndNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 to insurance entities to mitigate potential loss from various risks or to satisfy a promise to provide certain coverage's to employees.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(15)(a))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(24))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedInsuranceCurrentAndNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AccruedInsuranceNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 due beyond one year (or beyond one operating cycle if longer) to insurance entities to mitigate potential loss from various risks or to satisfy a promise to provide certain coverages to employees.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.24)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedInsuranceNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>110
<FILENAME>R97.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687975730240">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Commitments and Contingencies - Schedule of Insurance Receivable for Claims (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_CommitmentsAndContingenciesDisclosureLineItems', window );"><strong>Commitments And Contingencies Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InsuranceSettlementsReceivableNoncurrent', window );">Total insurance receivables and indemnification assets included in other non-current assets</a></td>
<td class="nump">$ 2,318<span></span>
</td>
<td class="nump">$ 2,137<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_ScheduleOfMalpracticeInsuranceTypeAndTierIdentifierAxis=us-gaap_GeneralLiabilityMember', window );">General Liability</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_ibp_CommitmentsAndContingenciesDisclosureLineItems', window );"><strong>Commitments And Contingencies Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy', window );">Insurance receivables and indemnification assets for claims under fully insured policies</a></td>
<td class="nump">4,933<span></span>
</td>
<td class="nump">3,578<span></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_ibp_InsuranceReceivableForClaimsExceedingStopLossLimit', window );">Insurance receivables for claims that exceeded the stop loss limit</a></td>
<td class="nump">380<span></span>
</td>
<td class="nump">278<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_InsuranceSettlementsReceivableNoncurrent', window );">Total insurance receivables and indemnification assets included in other non-current assets</a></td>
<td class="nump">$ 5,313<span></span>
</td>
<td class="nump">$ 3,856<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ibp_CommitmentsAndContingenciesDisclosureLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Commitments and contingencies 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;">ibp_CommitmentsAndContingenciesDisclosureLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ibp_InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Insurance receivable and indemnification asset for claims under fully insured policy.</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;">ibp_InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ibp_InsuranceReceivableForClaimsExceedingStopLossLimit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Insurance receivable for claims exceeding stop loss limit.</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;">ibp_InsuranceReceivableForClaimsExceedingStopLossLimit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_InsuranceSettlementsReceivableNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 due after one year of the balance sheet date (or one operating cycle, if longer) of amount due in settlement of a claim for reimbursement from an insurance company when the Company has suffered a loss covered under an insurance policy.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(17))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InsuranceSettlementsReceivableNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ScheduleOfMalpracticeInsuranceTypeAndTierIdentifierAxis=us-gaap_GeneralLiabilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ScheduleOfMalpracticeInsuranceTypeAndTierIdentifierAxis=us-gaap_GeneralLiabilityMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>111
<FILENAME>R98.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687970414112">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Business Combinations - Additional Information (Detail)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>USD ($) </div>
<div>business</div>
</th>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($) </div>
<div>business</div>
</th>
<th class="th">
<div>Dec. 31, 2020 </div>
<div>USD ($) </div>
<div>business</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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_NumberOfBusinessesAcquired', window );">Number of businesses acquired | business</a></td>
<td class="nump">8<span></span>
</td>
<td class="nump">11<span></span>
</td>
<td class="nump">9<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationAcquisitionRelatedCosts', window );">Acquisition-related costs</a></td>
<td class="nump">$ 3,000<span></span>
</td>
<td class="nump">$ 3,800<span></span>
</td>
<td class="nump">$ 3,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_BusinessCombinationSeparatelyRecognizedTransactionsRevenuesAndGainsRecognized', window );">Gain on acquisition earnout</a></td>
<td class="nump">16,100<span></span>
</td>
<td class="nump">1,000<span></span>
</td>
<td class="nump">200<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount', window );">Goodwill acquired expected to be tax deductible</a></td>
<td class="nump">41,300<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</a></td>
<td class="nump">43,763<span></span>
</td>
<td class="nump">37,079<span></span>
</td>
<td class="nump">28,535<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestExpense', window );">Other expense, net</a></td>
<td class="nump">41,574<span></span>
</td>
<td class="nump">32,842<span></span>
</td>
<td class="nump">30,291<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income tax expense (benefit)</a></td>
<td class="nump">79,879<span></span>
</td>
<td class="nump">36,712<span></span>
</td>
<td class="nump">33,938<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Intangibles</a></td>
<td class="num">(65,100)<span></span>
</td>
<td class="num">(130,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_BusinessAcquisitionAxis=us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember', window );">Combined Business Acquisitions</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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</a></td>
<td class="nump">2,500<span></span>
</td>
<td class="nump">13,100<span></span>
</td>
<td class="nump">18,200<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestExpense', window );">Other expense, net</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,300<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income tax expense (benefit)</a></td>
<td class="nump">1,200<span></span>
</td>
<td class="nump">5,700<span></span>
</td>
<td class="nump">$ 3,700<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=ibp_DenisonGlassAndMirrorMember', window );">Denison Glass and Mirror</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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_GoodwillPurchaseAccountingAdjustments', window );">Goodwill adjustments</a></td>
<td class="nump">1,600<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_BusinessAcquisitionAxis=ibp_DenisonGlassAndMirrorMember', window );">Denison Glass and Mirror | Adjustment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Intangibles</a></td>
<td class="num">$ (3,000)<span></span>
</td>
<td class="num">$ (3,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16225-109274<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_BusinessAcquisitionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 goodwill arising from a business combination that is expected to be deductible for tax purposes.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126975305&amp;loc=d3e6927-128479<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_BusinessCombinationAcquisitionRelatedCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>This element represents acquisition-related costs incurred to effect a business combination which costs have been expensed during the period. Such costs include finder's fees; advisory, legal, accounting, valuation, and other professional or consulting fees; general administrative costs, including the costs of maintaining an internal acquisitions department; and may include costs of registering and issuing debt and equity 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 25<br> -Paragraph 23<br> -URI https://asc.fasb.org/extlink&amp;oid=123586518&amp;loc=d3e1043-128460<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationAcquisitionRelatedCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 intangible assets, excluding goodwill, acquired at the acquisition date.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_BusinessCombinationSeparatelyRecognizedTransactionsRevenuesAndGainsRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 revenues and gains recognized recorded for each transaction with the acquiree that is recognized separately from the acquisition of assets and assumptions of liabilities in the business combination.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationSeparatelyRecognizedTransactionsRevenuesAndGainsRecognized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_GoodwillPurchaseAccountingAdjustments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) from adjustments after acquisition date under purchase accounting of an asset representing the future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (g)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 25<br> -Paragraph 16<br> -URI https://asc.fasb.org/extlink&amp;oid=123586518&amp;loc=d3e961-128460<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillPurchaseAccountingAdjustments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.7)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32672-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123586238&amp;loc=d3e38679-109324<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InterestExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the cost of borrowed funds accounted for as interest expense.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=6450988&amp;loc=d3e26243-108391<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124435984&amp;loc=d3e28555-108399<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (210.5-03(11))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04.9)<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NumberOfBusinessesAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 businesses acquired by the entity during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NumberOfBusinessesAcquired</td>
</tr>
<tr>
<td style="padding-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_BusinessAcquisitionAxis=us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=ibp_DenisonGlassAndMirrorMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=ibp_DenisonGlassAndMirrorMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RestatementAxis=srt_RestatementAdjustmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RestatementAxis=srt_RestatementAdjustmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>112
<FILENAME>R99.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687972285072">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Business Combinations - Summary of Business Acquisitions (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 19, 2022</div></th>
<th class="th"><div>Apr. 11, 2022</div></th>
<th class="th"><div>Dec. 12, 2021</div></th>
<th class="th"><div>Sep. 13, 2021</div></th>
<th class="th"><div>Mar. 01, 2021</div></th>
<th class="th"><div>Oct. 13, 2020</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesGross', window );">Cash Paid</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">$ 114,059<span></span>
</td>
<td class="nump">$ 243,015<span></span>
</td>
<td class="nump">$ 76,446<span></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_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness', window );">Seller Obligations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">26,978<span></span>
</td>
<td class="nump">27,891<span></span>
</td>
<td class="nump">14,086<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_BusinessCombinationConsiderationTransferred1', window );">Total Purchase Price</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">141,037<span></span>
</td>
<td class="nump">270,906<span></span>
</td>
<td class="nump">90,532<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual', window );">Revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">61,056<span></span>
</td>
<td class="nump">82,431<span></span>
</td>
<td class="nump">40,494<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual', window );">Net Income (Loss)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(311)<span></span>
</td>
<td class="nump">2,639<span></span>
</td>
<td class="nump">1,892<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=ibp_CentralAluminumMember', window );">CAS</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesGross', window );">Cash Paid</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 55,150<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">55,150<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_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness', window );">Seller Obligations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">22,927<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">22,927<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferred1', window );">Total Purchase Price</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">78,077<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual', window );">Revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">37,822<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual', window );">Net Income (Loss)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (1,001)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_BusinessAcquisitionAxis=ibp_ABSMember', window );">ABS</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesGross', window );">Cash Paid</a></td>
<td class="nump">$ 23,150<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">23,150<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_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness', window );">Seller Obligations</a></td>
<td class="nump">412<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">412<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferred1', window );">Total Purchase Price</a></td>
<td class="nump">23,562<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual', window );">Revenue</a></td>
<td class="nump">658<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual', window );">Net Income (Loss)</a></td>
<td class="num">$ (97)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_BusinessAcquisitionAxis=ibp_IWMember', window );">IWI</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesGross', window );">Cash Paid</a></td>
<td class="text">&#160;<span></span>
</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">$ 42,098<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">42,098<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_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness', window );">Seller Obligations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,959<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,959<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferred1', window );">Total Purchase Price</a></td>
<td class="text">&#160;<span></span>
</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">48,057<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual', window );">Revenue</a></td>
<td class="text">&#160;<span></span>
</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">36,259<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual', window );">Net Income (Loss)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,373<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_BusinessAcquisitionAxis=ibp_FiveStarMember', window );">Five Star</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesGross', window );">Cash Paid</a></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">$ 26,308<span></span>
</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">26,308<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_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness', window );">Seller Obligations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,466<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,466<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_BusinessCombinationConsiderationTransferred1', window );">Total Purchase Price</a></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">31,774<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual', window );">Revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,861<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual', window );">Net Income (Loss)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (119)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_BusinessAcquisitionAxis=ibp_AMDMember', window );">AMD</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesGross', window );">Cash Paid</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 119,490<span></span>
</td>
<td class="text">&#160;<span></span>
</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">119,490<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_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness', window );">Seller Obligations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,631<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,631<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferred1', window );">Total Purchase Price</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">126,121<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual', window );">Revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,707<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual', window );">Net Income (Loss)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (225)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_BusinessAcquisitionAxis=ibp_NorkoteMember', window );">ICON</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesGross', window );">Cash Paid</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">$ 16,900<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">16,900<span></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_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness', window );">Seller Obligations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,598<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,598<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_BusinessCombinationConsiderationTransferred1', window );">Total Purchase Price</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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,498<span></span>
</td>
<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_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual', window );">Revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,798<span></span>
</td>
<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_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual', window );">Net Income (Loss)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">$ 449<span></span>
</td>
<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_BusinessAcquisitionAxis=ibp_OtherAcquisitionMember', window );">Other</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesGross', window );">Cash Paid</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">35,759<span></span>
</td>
<td class="nump">55,119<span></span>
</td>
<td class="nump">59,546<span></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_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness', window );">Seller Obligations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,639<span></span>
</td>
<td class="nump">9,835<span></span>
</td>
<td class="nump">10,488<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_BusinessCombinationConsiderationTransferred1', window );">Total Purchase Price</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">39,398<span></span>
</td>
<td class="nump">64,954<span></span>
</td>
<td class="nump">70,034<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual', window );">Revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">22,576<span></span>
</td>
<td class="nump">35,604<span></span>
</td>
<td class="nump">35,696<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual', window );">Net Income (Loss)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">$ 787<span></span>
</td>
<td class="num">$ (390)<span></span>
</td>
<td class="nump">$ 1,443<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>It represents the non cash amount of seller obligations in connection with acquisition of business.</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;">ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_BusinessAcquisitionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationConsiderationTransferred1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of consideration transferred, consisting of acquisition-date fair value of assets transferred by the acquirer, liabilities incurred by the acquirer, and equity interest issued by the acquirer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 30<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=126966197&amp;loc=d3e6613-128477<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126975305&amp;loc=d3e6927-128479<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 30<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=126966197&amp;loc=d3e6578-128477<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationConsiderationTransferred1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>This element represents the amount of earnings or loss of the acquiree since the acquisition date included in the consolidated income statement for the reporting 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>This element represents the amount of revenue of the acquiree since the acquisition date included in the consolidated income statement for the reporting 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PaymentsToAcquireBusinessesGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the acquisition of business during the period. The cash portion only of the acquisition price.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=126975305&amp;loc=d3e6927-128479<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3213-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquireBusinessesGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=ibp_CentralAluminumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=ibp_CentralAluminumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=ibp_ABSMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=ibp_ABSMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=ibp_IWMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=ibp_IWMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=ibp_FiveStarMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=ibp_FiveStarMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=ibp_AMDMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=ibp_AMDMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=ibp_NorkoteMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=ibp_NorkoteMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=ibp_OtherAcquisitionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=ibp_OtherAcquisitionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>113
<FILENAME>R100.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687964077520">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Business Combinations - Summary of Estimated Fair Value of Assets Acquired and Liabilities Assumed (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 19, 2022</div></th>
<th class="th"><div>Apr. 11, 2022</div></th>
<th class="th"><div>Dec. 12, 2021</div></th>
<th class="th"><div>Sep. 13, 2021</div></th>
<th class="th"><div>Mar. 01, 2021</div></th>
<th class="th"><div>Oct. 13, 2020</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Intangibles</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (65,100)<span></span>
</td>
<td class="num">$ (130,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_Goodwill', window );">Goodwill</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">373,555<span></span>
</td>
<td class="nump">322,517<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_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness', window );">Less seller obligations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">26,978<span></span>
</td>
<td class="nump">27,891<span></span>
</td>
<td class="nump">$ 14,086<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesGross', window );">Cash Paid</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">114,059<span></span>
</td>
<td class="nump">243,015<span></span>
</td>
<td class="nump">76,446<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=ibp_TwoThousandTwentyTwoAcquisitionsMember', window );">2022 Acquisitions</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents', window );">Cash</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">523<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables', window );">Accounts receivable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">12,079<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory', window );">Inventories</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">17,093<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther', window );">Other current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,132<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment', window );">Property and equipment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">8,357<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_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset', window );">Operating lease right-of-use asset</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">910<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Intangibles</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(65,065)<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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">49,294<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets', window );">Other non-current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">56<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_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities', window );">Accounts payable and other current liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(10,197)<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities', window );">Deferred income tax liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(2,455)<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_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable', window );">Income tax payable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(229)<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther', window );">Other long-term liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(591)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet', window );">Fair value of assets acquired and purchase price</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">141,037<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_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness', window );">Less seller obligations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">26,978<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesGross', window );">Cash Paid</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">114,059<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_BusinessAcquisitionAxis=ibp_CentralAluminumMember', window );">CAS</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents', window );">Cash</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">243<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables', window );">Accounts receivable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,502<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory', window );">Inventories</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">13,784<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther', window );">Other current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">576<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment', window );">Property and equipment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,590<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_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset', window );">Operating lease right-of-use asset</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">844<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Intangibles</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(34,900)<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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">27,594<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets', window );">Other non-current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities', window );">Accounts payable and other current liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(5,387)<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities', window );">Deferred income tax liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable', window );">Income tax payable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther', window );">Other long-term liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(569)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet', window );">Fair value of assets acquired and purchase price</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">78,077<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_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness', window );">Less seller obligations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 22,927<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">22,927<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesGross', window );">Cash Paid</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 55,150<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">55,150<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_BusinessAcquisitionAxis=ibp_ABSMember', window );">ABS</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents', window );">Cash</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">193<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables', window );">Accounts receivable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,777<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory', window );">Inventories</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">853<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther', window );">Other current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">485<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment', window );">Property and equipment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,269<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_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset', window );">Operating lease right-of-use asset</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Intangibles</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(12,800)<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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10,546<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets', window );">Other non-current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities', window );">Accounts payable and other current liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(2,677)<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities', window );">Deferred income tax liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(2,455)<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_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable', window );">Income tax payable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(229)<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther', window );">Other long-term liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet', window );">Fair value of assets acquired and purchase price</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">23,562<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_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness', window );">Less seller obligations</a></td>
<td class="nump">$ 412<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">412<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesGross', window );">Cash Paid</a></td>
<td class="nump">$ 23,150<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">23,150<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_BusinessAcquisitionAxis=ibp_TwoThousandTwentyOneAcquisitionsMember', window );">2021 Acquisitions</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents', window );">Cash</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,707<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables', window );">Accounts receivable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">31,682<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory', window );">Inventories</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">11,882<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther', window );">Other current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,319<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment', window );">Property and equipment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">7,214<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_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset', window );">Operating lease right-of-use asset</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">199<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Intangibles</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(126,954)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">107,357<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets', window );">Other non-current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">681<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_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities', window );">Accounts payable and other current liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(16,579)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities', window );">Deferred income tax liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(2,089)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther', window );">Other long-term liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(3,421)<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet', window );">Fair value of assets acquired and purchase price</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">270,906<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_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness', window );">Less seller obligations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">27,891<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesGross', window );">Cash Paid</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">243,015<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=ibp_IWMember', window );">IWI</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents', window );">Cash</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">168<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables', window );">Accounts receivable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,122<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory', window );">Inventories</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,157<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther', window );">Other current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,014<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment', window );">Property and equipment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">796<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_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset', window );">Operating lease right-of-use asset</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Intangibles</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(25,200)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">23,282<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets', window );">Other non-current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">264<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_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities', window );">Accounts payable and other current liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(8,416)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities', window );">Deferred income tax liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther', window );">Other long-term liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(2,530)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet', window );">Fair value of assets acquired and purchase price</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">48,057<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_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness', window );">Less seller obligations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 5,959<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,959<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesGross', window );">Cash Paid</a></td>
<td class="text">&#160;<span></span>
</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">$ 42,098<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">42,098<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=ibp_FiveStarMember', window );">Five Star</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents', window );">Cash</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,472<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables', window );">Accounts receivable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,583<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory', window );">Inventories</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,399<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther', window );">Other current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">330<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment', window );">Property and equipment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,161<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_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset', window );">Operating lease right-of-use asset</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Intangibles</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(17,400)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,626<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets', window );">Other non-current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities', window );">Accounts payable and other current liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(1,170)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities', window );">Deferred income tax liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther', window );">Other long-term liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(27)<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet', window );">Fair value of assets acquired and purchase price</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">31,774<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_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness', window );">Less seller obligations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 5,466<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,466<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesGross', window );">Cash Paid</a></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">$ 26,308<span></span>
</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">26,308<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=ibp_AMDMember', window );">AMD</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents', window );">Cash</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables', window );">Accounts receivable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">8,393<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory', window );">Inventories</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">7,540<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther', window );">Other current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment', window );">Property and equipment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,133<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_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset', window );">Operating lease right-of-use asset</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">199<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Intangibles</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(52,800)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">56,327<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets', window );">Other non-current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<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_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities', window );">Accounts payable and other current liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(184)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities', window );">Deferred income tax liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther', window );">Other long-term liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(87)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet', window );">Fair value of assets acquired and purchase price</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">126,121<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_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness', window );">Less seller obligations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 6,631<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,631<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesGross', window );">Cash Paid</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 119,490<span></span>
</td>
<td class="text">&#160;<span></span>
</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">119,490<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=ibp_TwoThousandTwentyAcquisitionsMember', window );">2020 Acquisitions</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables', window );">Accounts receivable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">17,605<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory', window );">Inventories</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,761<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther', window );">Other current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,454<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment', window );">Property and equipment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,862<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Intangibles</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(46,223)<span></span>
</td>
</tr>
<tr class="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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">21,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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets', window );">Other non-current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">241<span></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_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities', window );">Accounts payable and other current liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(4,641)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther', window );">Other long-term liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(278)<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet', window );">Fair value of assets acquired and purchase price</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">90,532<span></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_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness', window );">Less seller obligations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">14,086<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesGross', window );">Cash Paid</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">76,446<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=ibp_NorkoteMember', window );">ICON</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables', window );">Accounts receivable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,828<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory', window );">Inventories</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">243<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther', window );">Other current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">675<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment', window );">Property and equipment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">380<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Intangibles</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(11,830)<span></span>
</td>
</tr>
<tr class="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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,870<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets', window );">Other non-current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">145<span></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_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities', window );">Accounts payable and other current liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(445)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther', window );">Other long-term liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(28)<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet', window );">Fair value of assets acquired and purchase price</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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,498<span></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_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness', window );">Less seller obligations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,598<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,598<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesGross', window );">Cash Paid</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">$ 16,900<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">16,900<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=ibp_OtherAcquisitionMember', window );">Other</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents', window );">Cash</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">87<span></span>
</td>
<td class="nump">67<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables', window );">Accounts receivable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,800<span></span>
</td>
<td class="nump">13,584<span></span>
</td>
<td class="nump">12,777<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory', window );">Inventories</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,456<span></span>
</td>
<td class="nump">1,786<span></span>
</td>
<td class="nump">2,518<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther', window );">Other current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">71<span></span>
</td>
<td class="nump">1,975<span></span>
</td>
<td class="nump">779<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment', window );">Property and equipment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,498<span></span>
</td>
<td class="nump">4,124<span></span>
</td>
<td class="nump">5,482<span></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_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset', window );">Operating lease right-of-use asset</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">66<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Intangibles</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(17,365)<span></span>
</td>
<td class="num">(31,554)<span></span>
</td>
<td class="num">(34,393)<span></span>
</td>
</tr>
<tr class="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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">11,154<span></span>
</td>
<td class="nump">21,122<span></span>
</td>
<td class="nump">18,435<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets', window );">Other non-current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">56<span></span>
</td>
<td class="nump">417<span></span>
</td>
<td class="nump">96<span></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_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities', window );">Accounts payable and other current liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(2,133)<span></span>
</td>
<td class="num">(6,809)<span></span>
</td>
<td class="num">(4,196)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities', window );">Deferred income tax liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(2,089)<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_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable', window );">Income tax payable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther', window );">Other long-term liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(22)<span></span>
</td>
<td class="num">(777)<span></span>
</td>
<td class="num">(250)<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet', window );">Fair value of assets acquired and purchase price</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">39,398<span></span>
</td>
<td class="nump">64,954<span></span>
</td>
<td class="nump">70,034<span></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_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness', window );">Less seller obligations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,639<span></span>
</td>
<td class="nump">9,835<span></span>
</td>
<td class="nump">10,488<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesGross', window );">Cash Paid</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">$ 35,759<span></span>
</td>
<td class="nump">$ 55,119<span></span>
</td>
<td class="nump">$ 59,546<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Business combination recognized identifiable assets acquired and liabilities assumed accounts payable 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;">ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Income Tax Payable</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;">ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Business Combination, Recognized Identifiable Assets Acquired And Liabilities Assumed, Operating Lease, Right-Of-Use Asset</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>It represents the non cash amount of seller obligations in connection with acquisition of business.</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;">ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ibp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_BusinessAcquisitionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of currency on hand as well as demand deposits with banks or financial institutions, acquired at the acquisition date. 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.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of other assets expected to be realized or consumed before one year or the normal operating cycle, if longer, acquired at the acquisition date.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount due from customers or clients for goods or services, including trade receivables, that have been delivered or sold in the normal course of business, and amounts due from others, including related parties expected to be converted to cash, sold or exchanged within one year or the normal operating cycle, if longer, acquired at the acquisition date.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 liability attributable to taxable temporary differences assumed at the acquisition date.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 intangible assets, excluding goodwill, acquired at the acquisition date.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 inventory recognized as of the acquisition date.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 55<br> -Paragraph 37<br> -URI https://asc.fasb.org/extlink&amp;oid=123455525&amp;loc=d3e2207-128464<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 other liabilities due after one year or the normal operating cycle, if longer, assumed at the acquisition date.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 other assets expected to be realized or consumed after one year or the normal operating cycle, if longer, acquired at the acquisition date.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of property, plant, and equipment recognized as of the acquisition date.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 55<br> -Paragraph 37<br> -URI https://asc.fasb.org/extlink&amp;oid=123455525&amp;loc=d3e2207-128464<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount recognized for assets, including goodwill, in excess of (less than) the aggregate liabilities assumed.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_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 an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=122137925&amp;loc=d3e14258-109268<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13770-109266<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(15))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_PaymentsToAcquireBusinessesGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the acquisition of business during the period. The cash portion only of the acquisition price.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=126975305&amp;loc=d3e6927-128479<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3213-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquireBusinessesGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=ibp_TwoThousandTwentyTwoAcquisitionsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=ibp_TwoThousandTwentyTwoAcquisitionsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=ibp_CentralAluminumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=ibp_CentralAluminumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=ibp_ABSMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=ibp_ABSMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=ibp_TwoThousandTwentyOneAcquisitionsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=ibp_TwoThousandTwentyOneAcquisitionsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=ibp_IWMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=ibp_IWMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=ibp_FiveStarMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=ibp_FiveStarMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=ibp_AMDMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=ibp_AMDMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=ibp_TwoThousandTwentyAcquisitionsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=ibp_TwoThousandTwentyAcquisitionsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=ibp_NorkoteMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=ibp_NorkoteMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=ibp_OtherAcquisitionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=ibp_OtherAcquisitionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>114
<FILENAME>R101.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687975097424">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Business Combinations - Estimates of Acquired Intangible Assets (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelationshipsMember', window );">Customer relationships</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems', window );"><strong>Acquired Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinitelivedIntangibleAssetsAcquired1', window );">Estimated Fair Value</a></td>
<td class="nump">$ 45,236<span></span>
</td>
<td class="nump">$ 95,173<span></span>
</td>
<td class="nump">$ 28,307<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Weighted Average Estimated Useful Life (yrs)</a></td>
<td class="text">12 years<span></span>
</td>
<td class="text">12 years<span></span>
</td>
<td class="text">8 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_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksAndTradeNamesMember', window );">Trademarks and tradenames</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_AcquiredFiniteLivedIntangibleAssetsLineItems', window );"><strong>Acquired Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinitelivedIntangibleAssetsAcquired1', window );">Estimated Fair Value</a></td>
<td class="nump">$ 16,794<span></span>
</td>
<td class="nump">$ 23,149<span></span>
</td>
<td class="nump">$ 9,834<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Weighted Average Estimated Useful Life (yrs)</a></td>
<td class="text">15 years<span></span>
</td>
<td class="text">15 years<span></span>
</td>
<td class="text">15 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_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_NoncompeteAgreementsMember', window );">Non-competition agreements</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_AcquiredFiniteLivedIntangibleAssetsLineItems', window );"><strong>Acquired Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinitelivedIntangibleAssetsAcquired1', window );">Estimated Fair Value</a></td>
<td class="nump">$ 2,645<span></span>
</td>
<td class="nump">$ 7,054<span></span>
</td>
<td class="nump">$ 3,315<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Weighted Average Estimated Useful Life (yrs)</a></td>
<td class="text">5 years<span></span>
</td>
<td class="text">5 years<span></span>
</td>
<td class="text">5 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_OrderOrProductionBacklogMember', window );">Backlog</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_AcquiredFiniteLivedIntangibleAssetsLineItems', window );"><strong>Acquired Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinitelivedIntangibleAssetsAcquired1', window );">Estimated Fair Value</a></td>
<td class="nump">$ 390<span></span>
</td>
<td class="nump">$ 1,578<span></span>
</td>
<td class="nump">$ 4,767<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Weighted Average Estimated Useful Life (yrs)</a></td>
<td class="text">1 year<span></span>
</td>
<td class="text">1 year 6 months<span></span>
</td>
<td class="text">1 year 6 months<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_AcquiredFiniteLivedIntangibleAssetsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_AcquiredFiniteLivedIntangibleAssetsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average amortization period of finite-lived intangible assets acquired either individually or as part of a group of assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16265-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinitelivedIntangibleAssetsAcquired1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 assets, excluding financial assets, lacking physical substance with a definite life, from an acquisition.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16265-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinitelivedIntangibleAssetsAcquired1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelationshipsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CustomerRelationshipsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksAndTradeNamesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TrademarksAndTradeNamesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_NoncompeteAgreementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_NoncompeteAgreementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_OrderOrProductionBacklogMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_OrderOrProductionBacklogMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>115
<FILENAME>R102.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687976762432">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Business Combinations - Pro Forma Results of Operations (Detail) - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationsAbstract', window );"><strong>Business Combinations [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionsProFormaRevenue', window );">Net revenue</a></td>
<td class="nump">$ 2,732,084<span></span>
</td>
<td class="nump">$ 2,217,592<span></span>
</td>
<td class="nump">$ 1,922,327<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 227,108<span></span>
</td>
<td class="nump">$ 135,850<span></span>
</td>
<td class="nump">$ 107,791<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic', window );">Basic net income per share</a></td>
<td class="nump">$ 7.91<span></span>
</td>
<td class="nump">$ 4.63<span></span>
</td>
<td class="nump">$ 3.65<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted', window );">Diluted net income per share</a></td>
<td class="nump">$ 7.87<span></span>
</td>
<td class="nump">$ 4.59<span></span>
</td>
<td class="nump">$ 3.63<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_BusinessAcquisitionProFormaEarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 pro forma basic net income per share for a period as if the business combination or combinations had been completed at the beginning of a 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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic</td>
</tr>
<tr>
<td style="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_BusinessAcquisitionProFormaEarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 pro forma diluted net income per share for a period as if the business combination or combinations had been completed at the beginning of a 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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted</td>
</tr>
<tr>
<td style="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_BusinessAcquisitionsProFormaNetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 pro forma net Income or Loss for the period as if the business combination or combinations had been completed at the beginning of a 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_BusinessAcquisitionsProFormaRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 pro forma revenue for a period as if the business combination or combinations had been completed at the beginning of 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionsProFormaRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_BusinessCombinationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_BusinessCombinationsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance 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>116
<FILENAME>R103.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687980072448">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Per Common Share - Additional Information (Detail) - shares<br> shares in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings Per Share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements', window );">Dilutive effect of outstanding restricted stock awards (in shares)</a></td>
<td class="nump">161<span></span>
</td>
<td class="nump">261<span></span>
</td>
<td class="nump">213<span></span>
</td>
</tr>
<tr class="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 );">Common stock shares excluded from calculation of diluted net income per common share</a></td>
<td class="nump">2<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=126962052&amp;loc=d3e4991-113900<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 22<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1707-109256<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28A<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1500-109256<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 23<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1757-109256<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>117
<FILENAME>R104.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140687976753904">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Subsequent Events (Details) - USD ($)<br> $ / shares in Units, $ in Millions</strong></div></th>
<th class="th"><div>Mar. 15, 2023</div></th>
<th class="th"><div>Feb. 22, 2023</div></th>
<th class="th"><div>Feb. 24, 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_SubsequentEventLineItems', window );"><strong>Subsequent Event [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_StockRepurchaseProgramAuthorizedAmount1', window );">Stock repurchase program, authorized</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 200.0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember', window );">Subsequent Event</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_SubsequentEventLineItems', window );"><strong>Subsequent Event [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_StockRepurchaseProgramAuthorizedAmount1', window );">Stock repurchase program, authorized</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 200.0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementScenarioAxis=srt_ScenarioForecastMember', window );">Forecast | Subsequent Event</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_SubsequentEventLineItems', window );"><strong>Subsequent Event [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_DividendsPayableAmountPerShare', window );">First quarterly dividends payable (in dollars per share)</a></td>
<td class="nump">$ 0.33<span></span>
</td>
<td class="nump">$ 0.90<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_DividendsPayableAmountPerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 per share amount of a dividend declared, but not paid, as of the financial reporting date.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=126999549&amp;loc=d3e4304-108586<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DividendsPayableAmountPerShare</td>
</tr>
<tr>
<td style="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_StockRepurchaseProgramAuthorizedAmount1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 stock repurchase plan authorized.</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_StockRepurchaseProgramAuthorizedAmount1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_SubsequentEventLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Detail information of subsequent event by type. User is expected to use existing line items from elsewhere in the taxonomy as the primary line items for this disclosure, which is further associated with dimension and member elements pertaining to a subsequent event.</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_SubsequentEventLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementScenarioAxis=srt_ScenarioForecastMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementScenarioAxis=srt_ScenarioForecastMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>118
<FILENAME>ibp-20221231_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xml:lang="en-US"
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:dei="http://xbrl.sec.gov/dei/2022"
  xmlns:ibp="http://installedbuildingproducts.com/20221231"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:srt="http://fasb.org/srt/2022"
  xmlns:us-gaap="http://fasb.org/us-gaap/2022"
  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="ibp-20221231.xsd" xlink:type="simple"/>
    <context id="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="id9acdefd9f1a43fba69c41bb102d5560_I20220630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="id2233e562f8d428397263474bb294e17_I20230215">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
        </entity>
        <period>
            <instant>2023-02-15</instant>
        </period>
    </context>
    <context id="ia4f683e648134f0da1371b6bd27ef351_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="id6e5cb30ac31451891723ddbe1f912e6_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i9aea8d337c2a4a158061feaff30010e0_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ibcda928914984dab908ead68148bca5e_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i2872a34b72cc428096e4c33cb0a3178f_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">ibp:IntangibleAssetsExcludingCustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ic0d83bb8e2c1438bb57812b147ed1ed9_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">ibp:IntangibleAssetsExcludingCustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i63a472239ecc4254a47dbf528822350d_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="icda2001dc0514113b0f97d8b8892f98e_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i7b992fbf285b4c508e644ecd8ace6054_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i9e6e275488144ae5aa9f04480329ba6e_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i060a31c733a24e318b6082e3ad2430c3_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i14b4ffb871e4403fb52831afe7cc8ee1_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="iff4d4f6f690d4bce8ad0aafed6fdedd3_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="ifaeaa8ace0d84dad85c82ae885b51ffc_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i958803dddf2c4619bdd48c5de25d23dd_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i4dbcfeb87c1740e4b4eb9f7c6741ec30_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i5f4eac237bf84dcbb0b113c245834860_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i7fe08b3b47644acb83d3c2ab80777dc8_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i53839f2bf7bb48d5ae89fba9e9a5a697_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i2f8775c2218e4ae5bc2f4a117bb88c76_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i4103608b5e134096893c20315b3e281b_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i872e33708c2141e89f9454313166eec2_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i825445c1c6e445188055b16a6a682a2b_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i707e16708e554448a4bb2c44e9f69b40_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="iaba36a8be02c46d9bcf4b91147e9910d_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i61f3c1563a76427b8e6b9d432aa44d9a_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i132c5961f1cd4de1b11a825f82f2a62a_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i286eecc934a2497fbd8d1ec5b56d936f_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ibe9a3844ee4b41168f2d8f668b99a22a_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ia178f6d7fa8c4ab7a1bd2e8fd0b05f84_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i8436bb8cb5154f6db94f80cd2c2dd32f_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i7c971ca37f114e89bbfec6637ff4eec3_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i3ac93e97ac7648b1bb0460c9d9551edd_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ibc38b7b26e1547bf91f176fc1e65606d_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i48f9cc975cf6472593f2b9513fe3110e_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i14d567bc707548e88cc0cc3e66307316_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i0d45628d365d4f14a2de850269a85597_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ia44b3bee1f934650ad552005b5f83f05_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i16676806e932479e97a656c76df77112_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i0ddc26109e40483889e87ce66d92f8ec_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i3a6b9a20e4da4a9390822a15ead99b52_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i4f8822b909a74993b4e9610fa2d43554_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="if0ab2703906c47e7a74df08dece46aa5_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="icf5f552de5ed49bd835bb72a19a828a4_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i07aff75a11ce4da89c613ba6c483bb6d_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i6c6f814c29be4e629a0656476f899878_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i04a97e90464f4f5e8db3563629410f38_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RevisionOfPriorPeriodReclassificationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i9bcccabeefe04ca69c63b738147b9793_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RevisionOfPriorPeriodReclassificationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i7030ce37fae04cf69695a4b0ca65329b_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i3a074bd43fbe424181ccfa73e65a0d18_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i916add5659e9483187a23c436172af58_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="iac9bd348abd04098bc3566be7ec90b65_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i522dacc92fda49dca2761a231d5ffdf7_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i554c55111f144a58ad00025d79e13e9b_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i64d37377565942d7b62216f914464267_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ibb4eb8b80ae1409c879096369623731a_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i73dcc289e54247d5a9ee4500da7b929a_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="idcbfa766a726450d8033269af5072004_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i5119f1a3a77b4ab090de134cabf394ea_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="icd9e31da4b4f4f98bbdc2f789ded5c25_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i0e330197b8cc466a87fd325ae1726f87_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:VehiclesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ie678e6339f5846fb8e4681a3cc644073_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i2fc2877a408d43b0b604eda0b0ad28bf_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i45802eccf5284f33b5a37c51a3ab3e77_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="if32d292972dc421baf704f08cff66b78_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i3d1fba4dcc5e403ab2591ae7b2073a49_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ie9cf8ce2ee8c464086e5b3058b55476c_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ie4319ae880b543cbbcc6d05a87520cb6_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OrderOrProductionBacklogMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i8ab06223d33149249774cf08ad138b35_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OrderOrProductionBacklogMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i269869eef2b246658f7bc8df10e6a3a4_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ifbf801f2701b4b64a3a73f7d5f4ce37a_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i97e5361244a64090b001e8dfb2321e45_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i5ec1d9c191cb4a73b7803b756c514cbe_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ic3ce87d770614921b8e95c96cbaef621_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:GuaranteedInsuranceContractTypeOfGuaranteeAxis">us-gaap:WorkersCompensationInsuranceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ia8f02ef2a4ed497f84af0c7912d9023c_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:GuaranteedInsuranceContractTypeOfGuaranteeAxis">ibp:GeneralLiabilityInsuranceProgramMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i32b91c3b49e24b33a71b7c34db3b11fa_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:GuaranteedInsuranceContractTypeOfGuaranteeAxis">ibp:VehiclesInsuranceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="icc12c341ab264e4484bd54d854bbd417_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:SeniorSecuredCreditAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="id889bbe23ec44abf91d92688cfe07f1d_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:SeniorSecuredCreditAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i1342bf92766544b088ad18cf1e74bf7c_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:SeniorSecuredCreditAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i2a9e98edaba24b94abaf2f7ee50e6387_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:SeniorSecuredCreditAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i38b7d0939c754d40b80be6633db7bbf4_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:ResidentialNewConstructionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="iadb1e7802af343748059349466c2dffe_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:ResidentialNewConstructionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ie2e6621047f347e39d52e7402fb8d506_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:ResidentialNewConstructionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i16466f21bf074aa6bdb9dfd70ddd0297_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:ResidentialNewConstructionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ib6b83bc5b3a6460ab948f1bb1a8cbb8b_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:ResidentialNewConstructionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i9b153aa63d404cfea815107eb5ac75e6_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:ResidentialNewConstructionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="iec7dfdafca094c3db95bd4bf49a07932_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:RepairAndRemodelMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i5daa27ede578476da641f9475dee3b87_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:RepairAndRemodelMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="id99f114512224c5a83108f9a2fe6363d_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:RepairAndRemodelMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i315c96619d474657ba97e7ee8029d62c_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:RepairAndRemodelMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i631438c6f7e14c21b55fb772328773fa_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:RepairAndRemodelMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ifc7d9bf487234961aa107f17881d18f9_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:RepairAndRemodelMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i42851b36db8a48a592a794c5761827cf_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:CommercialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i26d5aef9667648568af196e8591e4691_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:CommercialMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ibc157f1ceb8c4ee3ab03127e0eaf33d1_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:CommercialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i42d681ceeb5247058153ca9683ae758e_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:CommercialMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ib6538b6b192c4428bd408a1ff5fdd0b0_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:CommercialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="idf631fca7b484f4dad2d1d1eac09fe71_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:CommercialMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i2dcec416818c48969db1a73c9648ef1f_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:CustomerInstallationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i8b010fa35ae74bc89d55a0084fd68f10_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:CustomerInstallationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="iae38b25c26eb4db4b17c45442076a1b1_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:CustomerInstallationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i27b503aaebe24456ae400a653d2c4b49_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:CustomerInstallationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i811d106b47bb480db96b87daa9a67986_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:CustomerInstallationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="iec5610518ace48b2ad4837afd8e5a92f_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:CustomerInstallationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i2077ad7500b6435b9595c4f5c24e513c_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:OtherCustomerInstallationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i24d2df75193d4762b56086bf5022fe89_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:OtherCustomerInstallationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i0685147c358f4206bdec20c4809180fa_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:OtherCustomerInstallationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ic887923852d94537a7a1c20e3622dda4_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:OtherCustomerInstallationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i540141988e7242719e133d5431fc5bb5_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:OtherCustomerInstallationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i89ee79f637414a849b44e06dfbe18717_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ibp:OtherCustomerInstallationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i19c676a390874ae4a24140482758dc15_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i5e211949b1a84d18bc32aed42b26a5ea_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ic087b4978606431f8e0c7a5794915904_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i3002f2ff2c6749afbf88a83ed53b632b_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:InsulationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i831b540d2f8e47f889a534adfa41a137_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:InsulationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i7f0f9c9c1cb148bc8ffc9b9c4d1cb3ae_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:InsulationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ia6d99bdfef2e4afe81b42420edbdb4ad_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:InsulationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="if0f0009cb4634f89adb4be8b61570156_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:InsulationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i00115601cc8c4042bd43ab8f01b73bb6_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:InsulationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ifb10bd8b8b764e0595f8e0ce3d7594fe_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:ShowerDoorsShelvingAndMirrorsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i721e4cbc587c48298ba896443a7d2a34_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:ShowerDoorsShelvingAndMirrorsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i33adb71f8ff94ca0a3af98c2736a7f6b_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:ShowerDoorsShelvingAndMirrorsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i0ac77e101efc491c8cb0cad3a11c7504_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:ShowerDoorsShelvingAndMirrorsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="idebff648b7b445a69becf52762761086_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:ShowerDoorsShelvingAndMirrorsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i362583cc4e704d399a6f6a1f64e23000_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:ShowerDoorsShelvingAndMirrorsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="iac222aed281f4d4fb765d77df79bd6f8_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:GarageDoorsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i8fa8b822eaf546ee8193ae6d06195bdc_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:GarageDoorsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="if0f0a117014f46709ebd632e068c8545_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:GarageDoorsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="idd9694b536cf4359b63849ececc1051a_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:GarageDoorsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i5afae2b77b494812a7c281cfa743c50b_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:GarageDoorsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ia6d0f6ced8d048a585748a46b9036043_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:GarageDoorsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i4af9336cf8644af4a2a54d63f458febd_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:WaterproofingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ie68dee1b238247c8bcda473545d08d3c_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:WaterproofingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i0b02a0e6e9304460bfa26721db27311e_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:WaterproofingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ic796520033134acfbb5cc92697ab0940_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:WaterproofingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ia5f935417e794e2687aa7772fa649538_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:WaterproofingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="iac456e4d85334d1fa785dc56bb25d8ef_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:WaterproofingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ifbd2bcfa5cfd4b1791de98dd0dd0434c_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:RainGuttersMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i0cad56f764494289bf4f2c006ba73045_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:RainGuttersMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i20ba381216004a9ab923d1069a5dfb1c_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:RainGuttersMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i539cb43050d34fc192acf5628e380dda_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:RainGuttersMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ibbe89c0040d246b0824189e23bb7c352_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:RainGuttersMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i2e43f1472ff149b8995b7e90c7664e3a_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:RainGuttersMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i7f31d5a0f769466eb8d01b8a18e6b3ec_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:FireproofingAndFirestoppingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ic6778f5307c143028eadf8e698c38873_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:FireproofingAndFirestoppingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i15b0e10fba8f416dab5e5dc5b6fc32b5_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:FireproofingAndFirestoppingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i9a158b469e8348eba5d70f3904827c6a_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:FireproofingAndFirestoppingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="icbc083716032440bb12d8c170a33e188_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:FireproofingAndFirestoppingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ie5c1bccd5ca74442b64b86677f204b31_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:FireproofingAndFirestoppingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i2387e609defe4bfbbd48129aacba1557_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:WindowBlindsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i6574fc1beb3b4269b75d343e412a7512_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:WindowBlindsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i0450661597cd47d6acad7b0b043854c7_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:WindowBlindsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i577c77750b47425c8f33cdb1acbffaa0_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:WindowBlindsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i579058115d854962852a0c0c020b848e_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:WindowBlindsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="iea170dfedd8342679726aaf6ee933209_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:WindowBlindsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i714c6a6e03a745a1960e415673ce94cc_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:OtherBuildingProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i553fae334b394ef9b1db3a9c8f3018c3_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:OtherBuildingProductsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i7137fa9dac194edd89398633df6c11ee_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:OtherBuildingProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ic5f159d9be6b4850bee5e384989093f6_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:OtherBuildingProductsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i9f4f7decae0a447485fdbda25b367517_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:OtherBuildingProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="iad72824efc0e468bbc47c1fbffa3bbdf_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:OtherBuildingProductsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i2d35d588ac814750960fa44ccd8924c7_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:ProductInstallationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i640203d72028498cb58a2aada4477c30_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:ProductInstallationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i058aee33e1ae4e7ea7c4e001acd0fe23_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:ProductInstallationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i12474e1f662f42fbbedc8f3efd6efafe_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:ProductInstallationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="id2d41c8d41384eeeaf9ee426845b2878_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:ProductInstallationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ia2a7cbed12734e45ae11bece11d00329_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:ProductInstallationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i154b4f910769468197d54dd62cf18926_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:OtherProductInstallationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i3199543710734f1ab38102916fc0efa3_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:OtherProductInstallationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i2a0513d7c7cf474f830f5ebc3dd23679_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:OtherProductInstallationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="icb1e06985f2c497e9edb6973274e806d_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:OtherProductInstallationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i7656c84a58b14f80b5f2e2b15f8f3885_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:OtherProductInstallationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ifeafca1fab0e4768bd944624db05cf9d_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">ibp:OtherProductInstallationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="iae4047cbe4fd44928d016f399247a6f8_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i36ae3d68230b48ceac0beacdffde9a61_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i046acb42ec684d8292fb6a29219493bf_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:ProductConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ib30aa65e28784187b4011d9ec85050da_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2023-01-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i3271f5b5175c4fc9a105b687f91568d7_I20200101">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate201613Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-01-01</instant>
        </period>
    </context>
    <context id="id8d95aa0fd3544948b8bd65b4bc2fce9_I20200101">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate201613Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-01-01</instant>
        </period>
    </context>
    <context id="i13c43fa46b9b49a2ac465da3f32b17f3_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CumulativeEffectPeriodOfAdoptionAxis">srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate201613Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="iacff88296ee841948f6f8833f5d738e3_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i4749b30589424316bd69b23b56a606fe_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ia0c4b431699c4f82bca0c162ff7d9a38_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i456d6630deea4c90975e809b465df5af_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i33e19fcedb144007af8657125cb0236b_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i26ccc3d3ad794632b64823eceb0d2ada_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i4679fc005b5e412a993a89dd24a90b64_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ibe00fb2189aa4840b83da6f5086b247d_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ifa3dd9bfe2f8438fb1c83033e00c2112_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">ibp:VehiclesAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i2d43472522df43d295c3388a45db824c_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">ibp:VehiclesAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i7a6eb5745a4144d2ab6e5aac808bcfc0_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i0a4200e47afe46c5b7d789f3f7974feb_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i0c7f2b33da3b468daa7598e99d5f9d12_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i27ed6a1bdefe43098a08d48f9a6aa198_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i8e9434eca1eb4912bd5cabf256b1ce98_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i0696558d634d43589761ef303baf8924_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ia6ae7ad5a2e645a4b11ebedc5bb8e766_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ibp:InstallationSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ibadf50e7a18740488f76ed7c7c099490_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ibp:OtherSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i7ee60c6c46b64377a7d9ef1866ddf1f4_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ibp:InstallationSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i57361177467942dca715f3205ca58976_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ibp:OtherSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i3aff0b2379704afda9dd0958ab04b016_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ibp:InstallationSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i6d1889ce16a04267a11cde2000035599_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ibp:OtherSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i063187198d8a4662a8e28042ad648f83_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:DenisonGlassAndMirrorMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i60423e26f6d04d42a31f9c74ec4957e6_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i4701e44d54f8416c94e658d31cdcbc11_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="iff0aa331a39e4a78810397ce09d6f176_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i2681812c248c4d1ea8f72b1c19f5bf44_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i2914866a0a3e48cab7cccecb0342c88a_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OrderOrProductionBacklogMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i6f440aaf2b304fe89450e360641debc9_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OrderOrProductionBacklogMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="if3685ad92b3748da94c030b96eb1db2c_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RestatementAdjustmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:DenisonGlassAndMirrorMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i34c4e4e26cd94add8200e3c231ad6e6f_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SeniorNotesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i13d232b775794fd09035702b88fc8efd_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SeniorNotesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i540d045957764edda6de786acb29f5ce_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:TermLoanAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:MediumTermNotesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i4a484ea7c8f345e0adf9c0b0c88da255_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:TermLoanAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:MediumTermNotesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i018182100c9b4faf8e0b0ca98b72dc09_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:VehicleAndEquipmentNotesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:NotesPayableOtherPayablesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i834063c3b1454e2f866fe8e743de57c7_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:VehicleAndEquipmentNotesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:NotesPayableOtherPayablesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i6a87d84186b04f3383be05898cb0dc9b_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:VehicleAndEquipmentNotesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:NotesPayableOtherPayablesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i737a44fc03054b2d8bc05385476ba2b7_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:VehicleAndEquipmentNotesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:NotesPayableOtherPayablesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i2beda86d04974e408bae431827dee988_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:NotesPayableOtherPayablesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i5936bc2238984dac8588a7283fd3bee5_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:NotesPayableOtherPayablesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="iee545d8b2e7b474d9f3df5bba463a629_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:NotesPayableOtherPayablesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="iffa4f907555945d5a29eed4b703ec3aa_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:NotesPayableOtherPayablesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="if0144e02c38f4ce7ac717e9cd6b2c470_I20190930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SeniorNotesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-09-30</instant>
        </period>
    </context>
    <context id="i3d558231c934484486d62133717c8d67_D20190901-20190930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SeniorNotesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-09-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="i7d6c36cf84a243a3bf41547086bb67bd_I20220228">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:TermLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-02-28</instant>
        </period>
    </context>
    <context id="ia189161bf80746ea964b0f8fe835b158_I20220227">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:AblCreditAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-02-27</instant>
        </period>
    </context>
    <context id="i86035a77f81d4b539b5f1ce46301da8c_I20220228">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:AblCreditAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-02-28</instant>
        </period>
    </context>
    <context id="i9f001a3bfedc4b5ea368fad69dfc0f58_D20220201-20220228">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:AblCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2022-02-28</endDate>
        </period>
    </context>
    <context id="i7a375fef08ab451da4952c1783e82102_D20220201-20220228">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:AblCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2022-02-28</endDate>
        </period>
    </context>
    <context id="i07c36a7930b34ab8a7ea6aad1a369ca5_D20220228-20220228">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:AblCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:EurodollarMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-28</startDate>
            <endDate>2022-02-28</endDate>
        </period>
    </context>
    <context id="ib08adbc384934c028f3648ab9e362f6a_D20220228-20220228">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:AblCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:EurodollarMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-28</startDate>
            <endDate>2022-02-28</endDate>
        </period>
    </context>
    <context id="ic9fa014a79fb43d9af456a0f7d86258b_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:AblCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ShortTermDebtTypeAxis">us-gaap:LetterOfCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ib76cd90aaa964f7e95f82ca5b9a26828_I20220228">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">ibp:IncrementalRevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:AblCreditAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-02-28</instant>
        </period>
    </context>
    <context id="i20d9bf47aa834d11bd9e0509d8abc5e6_I20220228">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:LetterOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:AblCreditAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-02-28</instant>
        </period>
    </context>
    <context id="ibdb3b0ff1645425b99b05dca86fabd3b_I20220228">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">ibp:SwingLineLoansMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:AblCreditAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-02-28</instant>
        </period>
    </context>
    <context id="i8e6d104c5e894a44972d31f3c2a54c03_D20220201-20220228">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:AblCreditAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2022-02-28</endDate>
        </period>
    </context>
    <context id="i3626fc639f194097808d6c94273ca71f_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:TermLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i348b56558ede44b8861dc95a4225ed0d_D20211201-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:TermLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-12-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i369ef29f670e409d93c3900ac15f872c_D20191217-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:TermLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-17</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="ibb2d42a7a0d04941bc3037db4d367073_D20191217-20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:LondonInterbankOfferedRateLIBORMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-17</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="i9da17e90d5044db980df1ac538041b4e_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">ibp:TermLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i1667b4619c3043ccb7ad8720ada33f65_D20211201-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:TermLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-12-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ie7fc98e4645a435190e6c9695d751b2f_D20211201-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:TermLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-12-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i05826b04b32d488fa2a32dad9066cdeb_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">ibp:MasterLoanAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ib3d0c7e33c2948d7b16474ce673bdc63_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">ibp:VehicleAndEquipmentNotesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i5cee4ffe61be49c6ae7aacfc5b5b9775_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">ibp:VehicleAndEquipmentNotesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i44030115f3dc47f394d19aada0ec45cc_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">ibp:OperatingLeaseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i9722915df0974c458f470a40cb51bcc3_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">ibp:OperatingLeaseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i23f641ea860741b4898eb88a1038ed66_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">ibp:OperatingLeaseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i08920745a8f5413683e3316127588e2a_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">ibp:FinanceLeaseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i25b223b5601449dca61b5ffe8caa493f_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis">ibp:RelatedPartyOperatingLeasesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i2a806add24c44945bfa06ae48dc2a5fb_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis">ibp:OtherPartyOperatingLeasesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i373c10e1730d46369af7a873abf1918a_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i7a34ba2de1b84650b248fe94476806f2_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ib5c4594d67d3429582152cf3aeab11e4_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="id8b7a65da01c466384496dc24aeb67db_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i71c3fa225acf48de82e4fa30f1967289_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i338142ec4a614695bfabab290899055c_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i1ecef401d2d54e20b0a5fd6493a9fdee_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementBasisAxis">us-gaap:CarryingReportedAmountFairValueDisclosureMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ib72425e5789e464eb55e91e39f29472a_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="iee04fb3fcd05431d9f4a24a96a9218c6_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementBasisAxis">us-gaap:CarryingReportedAmountFairValueDisclosureMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i3033586cc36f48f0b3220b9deb8b4ed2_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ibp:FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ie4442c3f4fa34930817b0baa33f7126e_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:AllOtherSegmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i2b3c149ccdaf411abf7c699fed56e802_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ibp:InstallationSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i25a7fdace7a84c2d9575a891f8027ac0_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:AllOtherSegmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i18b77c51bf3a4f958b8b0f2900724f08_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i8575354b2fbb4902ae0b5a815b512e19_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RestatementAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i0a90c295d4394ee39a429acf25490e2c_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ibp:InstallationSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i553d5969138e460a9bf309e11f5f8a26_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:AllOtherSegmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ia59f114338e14376874dfbd1aaebd2a7_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ie5905ba0719040438b112fb99f9b953c_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RestatementAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ic7e64d94fc2142a586ef4f2fe8cabba2_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ibp:InstallationSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i83b10d3c03c148f6843d6898a799af1b_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:AllOtherSegmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i2a61f156f4a841368d04ac31fb199848_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:IntersegmentEliminationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ie274fecd3dfd42dfbef01a03d192c162_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RestatementAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ibee1a74171604fea9600eff85349f6c6_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">ibp:InterestRateSwapOneEffectiveJuly202021Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ifabecb9e61e345918b677899e47caab9_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">ibp:InterestRateSwapTwoEffectiveDecember312021Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i3770042c69554337aa145a020b149bcd_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">ibp:InterestRateSwapThreeEffectiveDecember312021Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i1672765a5f964c51ab755b498631ad23_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">ibp:InterestRateSwapFourEffectiveDecember312025Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="idf0befe7ce8a45db81c1e364433b2346_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">ibp:InterestRateSwapFiveEffectiveDecember312025Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ic2cf2e52ccd646ef9a9d36906001e517_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">ibp:InterestRateSwapOneEffectiveJuly202021Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i1301eb6a5fc549069945be411b5afa6b_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">ibp:InterestRateSwapTwoEffectiveDecember312021Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i553a93f70bb8496aa0ff5b74f2f9ea55_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">ibp:InterestRateSwapThreeEffectiveDecember312021Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="iab01235b40dd45c6927bbad026dd9938_I20220708">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-08</instant>
        </period>
    </context>
    <context id="i442df108481d486093e987ae0ab7f3de_D20220708-20220708">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-08</startDate>
            <endDate>2022-07-08</endDate>
        </period>
    </context>
    <context id="ib89a7646ef1240b0a5ab77c7f353f692_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i56181c5a7f2d4a8391dd92fea36879d4_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i3dc49179ed7c4a1baba5f2c76bfe1f2d_I20220728">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-07-28</instant>
        </period>
    </context>
    <context id="i0d2108f549d34ce5bfda96eeaa0b81bf_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="if1142baf02ff4a46880be63e5f3a091c_I20200831">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
        </entity>
        <period>
            <instant>2020-08-31</instant>
        </period>
    </context>
    <context id="ia81262dad5e84fed93f6a279d84424fe_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ic91a6a4159b341b193c39b699641e966_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="iefd77e98cbe14c7a925d42dfe158f974_D20210801-20210831">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-08-01</startDate>
            <endDate>2021-08-31</endDate>
        </period>
    </context>
    <context id="i0a10819a03884112b683b41306168549_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i22b861620ef3464eb72be526ade264aa_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="iff2e5d359b374823988dd0110d4470cf_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="if24349dd43b048f68bf4cc030d2889da_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ic7d96b76684448ca8dc8d5eb2af2aa51_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="iddedffc4e5144507a507008593a6873b_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ib6ac4b7d2a984343a2a2675dcd2e6938_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i8f1fc2a7afff401a89603047426d6933_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i181ad4bd7adf4caa9f759ca2b9c63e8b_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ib71212c1449342498cafafbd95744e94_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i7333bb6e9aa345eaae9049c458a08bcb_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i100c14fc5dac409cbdb1dacc3ea4f5a3_I20220224">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
        </entity>
        <period>
            <instant>2022-02-24</instant>
        </period>
    </context>
    <context id="iaf7f2985f94c4c49bd394258ac3e1c59_I20230222">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-02-22</instant>
        </period>
    </context>
    <context id="ibad6e2952377482580495fbdda46fff0_D20220224-20220224">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DividendsAxis">ibp:DividendsDeclaredAndPaid1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-24</startDate>
            <endDate>2022-02-24</endDate>
        </period>
    </context>
    <context id="i91f16aadcc6b49d0b234caa9ff3ae064_D20220331-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DividendsAxis">ibp:DividendsDeclaredAndPaid1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-03-31</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="i7d1abcbaf16c4b7491e7966bcb70758b_D20220224-20220224">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DividendsAxis">ibp:DividendsDeclaredAndPaid2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-24</startDate>
            <endDate>2022-02-24</endDate>
        </period>
    </context>
    <context id="i8c4cbfe2e6e5412389b32c2d875dbef1_D20220331-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DividendsAxis">ibp:DividendsDeclaredAndPaid2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-03-31</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="iaf611f307b9f4c12a8b97cc19c405d84_D20220505-20220505">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
        </entity>
        <period>
            <startDate>2022-05-05</startDate>
            <endDate>2022-05-05</endDate>
        </period>
    </context>
    <context id="i3f9b1494308e4b9c86f4c790c4f4979e_D20220630-20220630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
        </entity>
        <period>
            <startDate>2022-06-30</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="i807ff5d59f0d4cfeaaf38ac7f266c7f2_D20220804-20220804">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
        </entity>
        <period>
            <startDate>2022-08-04</startDate>
            <endDate>2022-08-04</endDate>
        </period>
    </context>
    <context id="i646b446c5cb0405f89d818e82b8c2c31_D20220930-20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
        </entity>
        <period>
            <startDate>2022-09-30</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i4d70c0967219428891e9b6845905a960_D20221103-20221103">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
        </entity>
        <period>
            <startDate>2022-11-03</startDate>
            <endDate>2022-11-03</endDate>
        </period>
    </context>
    <context id="i045defb974cc4bd585a4fe22efdd9936_D20221231-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
        </entity>
        <period>
            <startDate>2022-12-31</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="id5dd847f8b58461a84949fa4421e07fb_D20210223-20210223">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
        </entity>
        <period>
            <startDate>2021-02-23</startDate>
            <endDate>2021-02-23</endDate>
        </period>
    </context>
    <context id="i5b9da0853c824ac59047f949e36385ca_D20210331-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
        </entity>
        <period>
            <startDate>2021-03-31</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="i991fdb41c8934ebfac0241c7e461a7f8_D20210505-20210505">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
        </entity>
        <period>
            <startDate>2021-05-05</startDate>
            <endDate>2021-05-05</endDate>
        </period>
    </context>
    <context id="i29115886eaa9444a96a996b8cd9e65c0_D20210630-20210630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
        </entity>
        <period>
            <startDate>2021-06-30</startDate>
            <endDate>2021-06-30</endDate>
        </period>
    </context>
    <context id="ifff31870d771421ea1aa10e55657fe72_D20210805-20210805">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
        </entity>
        <period>
            <startDate>2021-08-05</startDate>
            <endDate>2021-08-05</endDate>
        </period>
    </context>
    <context id="i56fc48d2ef2843d6a309770db2666814_D20210930-20210930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
        </entity>
        <period>
            <startDate>2021-09-30</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="i1dc79196e8854f7ab0466692c93a3e7c_D20211104-20211104">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
        </entity>
        <period>
            <startDate>2021-11-04</startDate>
            <endDate>2021-11-04</endDate>
        </period>
    </context>
    <context id="i21088968d2e44ef7b27c7fb852ac6ae3_D20211231-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
        </entity>
        <period>
            <startDate>2021-12-31</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i33d015c2b9c5400cb809209f62f9398e_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i37aa17ee923446b1bfe336a10f721ba8_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:DefinedBenefitPostretirementHealthCoverageMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i8668cb4ddb8b4ece9852cd75fc2a112d_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:DefinedBenefitPostretirementHealthCoverageMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i84d46d07e8fc436e811a36c787935fce_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ib14c282b4f2f48aebb9e830c414e6b39_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i16ed968772804a798c3c3d83320afabe_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i34caeff1771e4360b540831f5a821888_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:DefinedBenefitPostretirementHealthCoverageMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="iff062208e3f64e0f991049b0d03b5a0e_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:DefinedBenefitPostretirementHealthCoverageMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i7b2c037eb25246e2991f1d1397390f87_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:DefinedBenefitPostretirementHealthCoverageMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ie7bd015f778946acae59540104706b42_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:DirectorMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i757eef749bac4f2293e773f93a167e4f_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:DirectorMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ib9ef86a33c5c43bdbac9dadc13b78f6f_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:DirectorMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i964a800227db4746b75656990ba9877b_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:OfficerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedAwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i7fd8869fa57b44ef89607df7096ea515_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedRestrictedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i311beb28dee1454fa46dacf81c0daab9_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:CommonStockAwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i1d20a8c5c0044c2b905ac0fd361ed035_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedAwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ib959d9a931e74a09bbfb204ed6489cb4_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i7b1daf5c317949f8b45bc9e3692eccda_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:CommonStockAwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i8336d9bd9d7e4ca8a36e5d674412d2ba_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedAwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ic417962ed93249ada8257fa6ee36342e_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ic83e19ff3ed8464b82cff42a06460329_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:CommonStockAwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i742f1074f99d44938c1adea16c83563d_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedAwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i4b661dbcee504056ab5f33633cd24870_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i649b9d4497df46ed9b1a6f3021b6d668_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:CommonStockAwardsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i2ce667884711486896711601e0d7744e_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:CommonStockAwardsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i4304e324a56f4de0b1d80453e03b2437_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:CommonStockAwardsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i70a43a7f84554c1fada56f420f4a3692_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:CommonStockAwardsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:GranteeStatusAxis">us-gaap:ShareBasedPaymentArrangementNonemployeeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i5538cc20e3be4bb29b233ad59bf792e4_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:CommonStockAwardsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:GranteeStatusAxis">us-gaap:ShareBasedPaymentArrangementNonemployeeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i5a8f51ff7034417b959f2c0ac1fb3778_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:CommonStockAwardsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:GranteeStatusAxis">us-gaap:ShareBasedPaymentArrangementNonemployeeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i0684e2d242a048a7b3b272be57da339c_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedAwardsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i1d61284a7ad44ff2b803dfe09bd346aa_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedAwardsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="iec022876581b4c4a929322821ee287ad_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedAwardsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i9a21ad0b0a5347f2a0a96a450c9cb43b_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:LiabilityPerformanceBasedStockAwardsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ida28457a08b6472d93cc3ef911e3aabf_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:LiabilityPerformanceBasedStockAwardsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i949037a6d9844183b5ee9656da9438a8_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:LiabilityPerformanceBasedStockAwardsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i26413bdd4d944498a9cb24385ea2bba5_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedRestrictedStockUnitsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i8bffe94a0d174cf0895d36c924b78e11_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedRestrictedStockUnitsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i0d80387483384372a7b55be16104656a_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedRestrictedStockUnitsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i3f1013f46e884aa88d94776dc7259876_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ib1c3019a8253424588b74711b0099a7d_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i2043d7b952f344cab1ed7372bd7e3966_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ia919de0e1499476e871a395c2d14d460_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i5ab90870455340b398aee4bfaaea2615_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i3e0e0ad83f304043a202a9a47bb9391e_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i9b1b1e6dc9f04cbebf0af1df1e3336ee_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ie81373567f534c27a073ed483e7064c4_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i9f6e77b454314e42a56975bd433a11b0_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i10f2addff94d4415b05d34bb939ab3b5_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedRestrictedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i7b47a8b9fe314f3ea1319317721195b0_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="iae21facea61a423ca07b8cb5fe20ed53_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:LiabilityPerformanceBasedStockAwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i767a26947aae42d3a84a17877e69d97a_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i9c21c6f57bad4d83b34ec31f123eb288_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheThreeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i96806cead05c4c1889c943be9ba62ad6_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheTwoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i6ad62bc7e19c4730a8d4b536ad2b8723_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:OfficerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedAwardsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i6f3fbcfa9cd94da4b243e391387ab369_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:OfficerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedAwardsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheTwoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i609df2d8a2f9497db040a73897c11531_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">ibp:CertainEmployeesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedAwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ib99cdb720a78462288090d3e4f2f3fdf_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">ibp:CertainEmployeesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedAwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i9efde658f2894b0eb085151d7f9a1867_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">ibp:CertainEmployeesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedAwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i4a03692444e142a0ba3374540a9914ce_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedRestrictedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ic814b05a7ffa4520acd88aea1d50ac8f_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ibp:PerformanceBasedRestrictedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i5fc8eaf38d8c4adcbf4acbfb0bca794c_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">ibp:DeferredIncomeTaxLiabilitiesNetMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="id9c60ffd7a984d989effbfdbf1ab8bef_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">ibp:DeferredIncomeTaxLiabilitiesNetMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ic1c6c2e6226b4b8f9eb0dd8fbad9d4f4_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:AffiliatedEntityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ie33db4efa4914592a1448b3059cd6744_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:AffiliatedEntityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="id44a6b0dd5ec43d28543683a24ec6e10_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:AffiliatedEntityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i058b6ccaa07643c7a3b721296a456c74_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:AffiliatedEntityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i8dfa63c25f1641888218961240b7361e_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:AffiliatedEntityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i740af50718654e1aab1a54a820f2469b_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:TrustForBenefitOfEmployeesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i1f0f486b895040c1b1d766df54348319_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ScheduleOfMalpracticeInsuranceTypeAndTierIdentifierAxis">us-gaap:GeneralLiabilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="if6323e71637b49a185b9d3f6a1940c53_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ScheduleOfMalpracticeInsuranceTypeAndTierIdentifierAxis">us-gaap:GeneralLiabilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ie6eb768e720b4c85b65f110f827cc1c4_D20220411-20220411">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:CentralAluminumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-04-11</startDate>
            <endDate>2022-04-11</endDate>
        </period>
    </context>
    <context id="i1892b348668840409ac2b29a9b4efe0a_D20221219-20221219">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:ABSMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-12-19</startDate>
            <endDate>2022-12-19</endDate>
        </period>
    </context>
    <context id="iea7705e474d24beea8cfced5133c968c_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:OtherAcquisitionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i06c08f43586341e0919a0d465259db64_D20210301-20210301">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:IWMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-03-01</startDate>
            <endDate>2021-03-01</endDate>
        </period>
    </context>
    <context id="ie5deb12bfd9740e49eff8493415dce66_D20210913-20210913">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:FiveStarMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-09-13</startDate>
            <endDate>2021-09-13</endDate>
        </period>
    </context>
    <context id="i48c7fbbb47c54999a359c177c6085728_D20211212-20211212">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:AMDMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-12-12</startDate>
            <endDate>2021-12-12</endDate>
        </period>
    </context>
    <context id="i19488ffc40d7436687f44b5b09748ede_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:OtherAcquisitionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i02c2ac93900744dfabba50ee8183f826_D20201013-20201013">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:NorkoteMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-10-13</startDate>
            <endDate>2020-10-13</endDate>
        </period>
    </context>
    <context id="i5a1d37cf66e64283aea0cb97c7d46f4a_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:OtherAcquisitionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i4ea0b889e5434d22b1941f98869bcd38_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:CentralAluminumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i6799a626e2724e80b54d415eebad9174_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:ABSMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ic3c81c2eb9544b3892643cc586b11a5b_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:OtherAcquisitionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i1b1456749c4141e8935d5eff49c409fb_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:TwoThousandTwentyTwoAcquisitionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i17e40893dd0a4213a1a40822606dfbc2_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:CentralAluminumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i1b396f3cac964335a636f6f33458525c_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:ABSMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i276eed2b955047a5a439cf9a1c6de1cd_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:TwoThousandTwentyTwoAcquisitionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i37461516afa443f88fce8a7675608fdd_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:IWMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i3f72dbb0d5fd4dcb9005c5f0671dda91_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:FiveStarMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ief0682dd5a7e47179c4aa045d07dca78_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:AMDMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i1fea681f0af84e9cb42e995810f12b15_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:OtherAcquisitionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i54c7aecd583b422db1836ea36b1df9ac_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:TwoThousandTwentyOneAcquisitionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i446e65df412f490680b00003d7cc2e37_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:IWMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ia4cc34e117bf4229a839843df1c735d9_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:FiveStarMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i14747cce30c4466097ad2e71ba78d40d_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:AMDMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i924b337b12024dc6bb6ab4744d528582_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:TwoThousandTwentyOneAcquisitionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i37b53970c4384c8d8b5815957a2a9908_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:NorkoteMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="if857301956214edda788d832c3f07c01_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:OtherAcquisitionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ia387d8d0753347c3b9d9976f60eb571f_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:TwoThousandTwentyAcquisitionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i84a0099b25b7437fa82470d966b55b3f_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:NorkoteMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i00fded2e14994d2da83d37845bb5950c_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:TwoThousandTwentyAcquisitionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i43ab2840190646a9a29f626d4ea9f201_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RestatementAdjustmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ibp:DenisonGlassAndMirrorMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="iae67bb7820424a05bb9980c0a54a1be7_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ib8eafb787d87447f819d6c22e636a252_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i29b07b75dec34c58bfd17b6c91f7699f_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i4666e95abc2946b4bcffd2713db1b4eb_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i655e00359db74a0498a6260a1e2b37b2_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i225a38d9cb004a13806bd49986908185_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="id3522748cf874adaa26e4fb5a429c9a7_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i92ce7e4cb80b43d4a197299a3a96c2db_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="id8808320f1eb4843a0b744cc1b5d15a8_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ic32ff90b2ecd4ade9ebb1b86f0d45e7b_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OrderOrProductionBacklogMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ib0e8ef84dde647a1a1daba7531646eaa_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OrderOrProductionBacklogMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i2ad67bbb20fb45b2bb2af956fbc5b0f9_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OrderOrProductionBacklogMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="id0be1243c38b48029fee5ea0f354d284_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i50702d9644604ef6b8e4664d366e408c_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i31829ad5db3b4aaaa72e5507f7df28a5_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ida4bc7c180464dc792325f41bd379c82_I20230222">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ScenarioForecastMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-02-22</instant>
        </period>
    </context>
    <context id="i9a33ed4e39e141a1ae28eae3d8b26778_I20230315">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001580905</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ScenarioForecastMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-15</instant>
        </period>
    </context>
    <unit id="usd">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="shares">
        <measure>shares</measure>
    </unit>
    <unit id="usdPerShare">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <unit id="location">
        <measure>ibp:location</measure>
    </unit>
    <unit id="segment">
        <measure>ibp:segment</measure>
    </unit>
    <unit id="number">
        <measure>pure</measure>
    </unit>
    <unit id="reporting_unit">
        <measure>ibp:reporting_unit</measure>
    </unit>
    <unit id="instrument">
        <measure>ibp:instrument</measure>
    </unit>
    <unit id="swap">
        <measure>ibp:swap</measure>
    </unit>
    <unit id="installment">
        <measure>ibp:installment</measure>
    </unit>
    <unit id="business">
        <measure>ibp:business</measure>
    </unit>
    <dei:AmendmentFlag
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF80L2ZyYWc6MTVlNWY1OTc3YmUyNGM5NDlmYWUxYzBiZThiOTM4ZTUvdGFibGU6MDc4NjNhZDY2ZTc5NGU3Nzg4NTZjZjRjNGE0MjJmMzMvdGFibGVyYW5nZTowNzg2M2FkNjZlNzk0ZTc3ODg1NmNmNGM0YTQyMmYzM18zLTEtMS0xLTEwMDAwMg_00d0b8b3-5b28-40e2-a0d3-c005ebb4a763">false</dei:AmendmentFlag>
    <dei:DocumentFiscalYearFocus
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF80L2ZyYWc6MTVlNWY1OTc3YmUyNGM5NDlmYWUxYzBiZThiOTM4ZTUvdGFibGU6MDc4NjNhZDY2ZTc5NGU3Nzg4NTZjZjRjNGE0MjJmMzMvdGFibGVyYW5nZTowNzg2M2FkNjZlNzk0ZTc3ODg1NmNmNGM0YTQyMmYzM181LTEtMS0xLTEwMDAwMg_91b5727a-2cce-4061-98a0-ee5b6fbc0f05">2022</dei:DocumentFiscalYearFocus>
    <dei:DocumentFiscalPeriodFocus
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF80L2ZyYWc6MTVlNWY1OTc3YmUyNGM5NDlmYWUxYzBiZThiOTM4ZTUvdGFibGU6MDc4NjNhZDY2ZTc5NGU3Nzg4NTZjZjRjNGE0MjJmMzMvdGFibGVyYW5nZTowNzg2M2FkNjZlNzk0ZTc3ODg1NmNmNGM0YTQyMmYzM182LTEtMS0xLTEwMDAwMg_f1e89636-76b3-4785-9270-378a4d3871b1">FY</dei:DocumentFiscalPeriodFocus>
    <dei:EntityCentralIndexKey
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF80L2ZyYWc6MTVlNWY1OTc3YmUyNGM5NDlmYWUxYzBiZThiOTM4ZTUvdGFibGU6MDc4NjNhZDY2ZTc5NGU3Nzg4NTZjZjRjNGE0MjJmMzMvdGFibGVyYW5nZTowNzg2M2FkNjZlNzk0ZTc3ODg1NmNmNGM0YTQyMmYzM183LTEtMS0xLTEwMDAwMg_f2fd6a7d-8da9-49aa-a452-e14558eb758a">0001580905</dei:EntityCentralIndexKey>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i2fc2877a408d43b0b604eda0b0ad28bf_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTE2NTc_a977f052-cdfa-4287-b1c2-2c13ccbb2ec3">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="i3d1fba4dcc5e403ab2591ae7b2073a49_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTM1NTU_ef0ebe6a-c7b3-48eb-8f8b-5ddf39ff0efb">P8Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="i269869eef2b246658f7bc8df10e6a3a4_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTM2MTQ_9876c3d1-52c9-4958-8348-18d296904de3">P1Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="i97e5361244a64090b001e8dfb2321e45_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTM2NjU_f0c11354-8793-4523-b059-4ab1963f4cfb">P2Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzUtMi0xLTEtMTAwMDAy_3f08309b-5457-499e-ae82-f8cdea3899fd">http://fasb.org/us-gaap/2022#PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization</us-gaap:FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList>
    <us-gaap:FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzUtMi0xLTEtMTAwMDAy_b356578e-0cdd-4b5a-928c-9d4814d3c5ab">http://fasb.org/us-gaap/2022#PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization</us-gaap:FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList>
    <us-gaap:DerivativeAssetStatementOfFinancialPositionExtensibleEnumeration
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzUtMC0xLTEtMTAwMDAy_2f118e6b-355c-4162-8970-b998a5ae5450">http://fasb.org/us-gaap/2022#OtherAssetsNoncurrent</us-gaap:DerivativeAssetStatementOfFinancialPositionExtensibleEnumeration>
    <us-gaap:DerivativeAssetStatementOfFinancialPositionExtensibleEnumeration
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzUtMC0xLTEtMTAwMDAy_70c840c6-6a79-4f97-a58a-b08f6f1bdbef">http://fasb.org/us-gaap/2022#OtherAssetsNoncurrent</us-gaap:DerivativeAssetStatementOfFinancialPositionExtensibleEnumeration>
    <us-gaap:DerivativeLiabilityStatementOfFinancialPositionExtensibleEnumeration
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzktMC0xLTEtMTAwMDAy_18ae74f0-19f1-4416-a30d-86ea73bdfe06">http://fasb.org/us-gaap/2022#OtherLiabilitiesCurrent</us-gaap:DerivativeLiabilityStatementOfFinancialPositionExtensibleEnumeration>
    <us-gaap:DerivativeLiabilityStatementOfFinancialPositionExtensibleEnumeration
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzktMC0xLTEtMTAwMDAy_c8d93f89-6621-4092-8404-217ee2466660">http://fasb.org/us-gaap/2022#OtherLiabilitiesCurrent</us-gaap:DerivativeLiabilityStatementOfFinancialPositionExtensibleEnumeration>
    <us-gaap:FairValueRecurringBasisUnobservableInputReconciliationLiabilityGainLossStatementOfIncomeExtensibleList
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90ZXh0cmVnaW9uOjcyYjQzMjQzZGRkOTQzNjM5MmNkZjNkYWE4NmRiMDQxXzE2NDkyNjc0NTIzMDk_23ad3ebf-7c72-49be-a046-37d9cc2eb568">http://fasb.org/us-gaap/2022#BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1</us-gaap:FairValueRecurringBasisUnobservableInputReconciliationLiabilityGainLossStatementOfIncomeExtensibleList>
    <us-gaap:FairValueRecurringBasisUnobservableInputReconciliationLiabilityGainLossStatementOfIncomeExtensibleList
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90ZXh0cmVnaW9uOjcyYjQzMjQzZGRkOTQzNjM5MmNkZjNkYWE4NmRiMDQxXzE2NDkyNjc0NTIzMDk_639b19f3-3770-44c4-883d-81cef8dd0039">http://fasb.org/us-gaap/2022#BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1</us-gaap:FairValueRecurringBasisUnobservableInputReconciliationLiabilityGainLossStatementOfIncomeExtensibleList>
    <us-gaap:OciCashFlowHedgeReclassificationForDiscontinuanceStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDUx_3580f4e1-9b51-444e-9a35-60d80703421b">http://fasb.org/us-gaap/2022#InterestExpense</us-gaap:OciCashFlowHedgeReclassificationForDiscontinuanceStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration>
    <us-gaap:OciCashFlowHedgeReclassificationForDiscontinuanceStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDUx_b0d386bd-7d5d-4b4d-b157-231830ca5700">http://fasb.org/us-gaap/2022#InterestExpense</us-gaap:OciCashFlowHedgeReclassificationForDiscontinuanceStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration>
    <us-gaap:OciCashFlowHedgeReclassificationForDiscontinuanceStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDUx_f2565731-dcbc-4849-afbc-408fac97be5e">http://fasb.org/us-gaap/2022#InterestExpense</us-gaap:OciCashFlowHedgeReclassificationForDiscontinuanceStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="iae21facea61a423ca07b8cb5fe20ed53_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjQvZnJhZzowMDZlNTNjMmZhOTQ0YzhmODEzNjRjZjQ2ZGRjYTRlZS90ZXh0cmVnaW9uOjAwNmU1M2MyZmE5NDRjOGY4MTM2NGNmNDZkZGNhNGVlXzU2_bdadb99d-74e5-497b-801f-47d291af7fc2"
      unitRef="shares">7000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="i767a26947aae42d3a84a17877e69d97a_D20220101-20221231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjQvZnJhZzowMDZlNTNjMmZhOTQ0YzhmODEzNjRjZjQ2ZGRjYTRlZS90ZXh0cmVnaW9uOjAwNmU1M2MyZmE5NDRjOGY4MTM2NGNmNDZkZGNhNGVlXzE1Ng_4bc6fce9-e0b7-4d6b-ba2b-95cdd686ef49"
      unitRef="number">0.3333</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="i9c21c6f57bad4d83b34ec31f123eb288_D20220101-20221231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjQvZnJhZzowMDZlNTNjMmZhOTQ0YzhmODEzNjRjZjQ2ZGRjYTRlZS90ZXh0cmVnaW9uOjAwNmU1M2MyZmE5NDRjOGY4MTM2NGNmNDZkZGNhNGVlXzE1Ng_ca5af2bc-2ec4-429b-811a-4f723fd59b95"
      unitRef="number">0.3333</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="i96806cead05c4c1889c943be9ba62ad6_D20220101-20221231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjQvZnJhZzowMDZlNTNjMmZhOTQ0YzhmODEzNjRjZjQ2ZGRjYTRlZS90ZXh0cmVnaW9uOjAwNmU1M2MyZmE5NDRjOGY4MTM2NGNmNDZkZGNhNGVlXzE1Ng_d01c4cec-e7c4-48e4-aeb7-5c9ee0980c64"
      unitRef="number">0.3333</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="i6ad62bc7e19c4730a8d4b536ad2b8723_D20220101-20221231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjQvZnJhZzowMDZlNTNjMmZhOTQ0YzhmODEzNjRjZjQ2ZGRjYTRlZS90ZXh0cmVnaW9uOjAwNmU1M2MyZmE5NDRjOGY4MTM2NGNmNDZkZGNhNGVlXzM2Nw_8b2c4f70-98c0-4345-a10f-462974a275f9"
      unitRef="number">0.50</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="i6f3fbcfa9cd94da4b243e391387ab369_D20220101-20221231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjQvZnJhZzowMDZlNTNjMmZhOTQ0YzhmODEzNjRjZjQ2ZGRjYTRlZS90ZXh0cmVnaW9uOjAwNmU1M2MyZmE5NDRjOGY4MTM2NGNmNDZkZGNhNGVlXzM2Nw_cdf9b01d-8f5f-4378-ab30-a0860777eff0"
      unitRef="number">0.50</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i609df2d8a2f9497db040a73897c11531_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjQvZnJhZzowMDZlNTNjMmZhOTQ0YzhmODEzNjRjZjQ2ZGRjYTRlZS90ZXh0cmVnaW9uOjAwNmU1M2MyZmE5NDRjOGY4MTM2NGNmNDZkZGNhNGVlXzE2NDkyNjc0NDI0MjI_3d554a67-d4be-4e1c-bfa7-f3f603c26908"
      unitRef="shares">39000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="ib99cdb720a78462288090d3e4f2f3fdf_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjQvZnJhZzowMDZlNTNjMmZhOTQ0YzhmODEzNjRjZjQ2ZGRjYTRlZS90ZXh0cmVnaW9uOjAwNmU1M2MyZmE5NDRjOGY4MTM2NGNmNDZkZGNhNGVlXzQ5OA_7310b8ef-e68b-4de7-a0bb-49cd5a2ae971"
      unitRef="shares">5000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i9efde658f2894b0eb085151d7f9a1867_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjQvZnJhZzowMDZlNTNjMmZhOTQ0YzhmODEzNjRjZjQ2ZGRjYTRlZS90ZXh0cmVnaW9uOjAwNmU1M2MyZmE5NDRjOGY4MTM2NGNmNDZkZGNhNGVlXzUwNA_20ed9430-77e1-4d21-912a-1ae9654466c8"
      unitRef="shares">7000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i7fd8869fa57b44ef89607df7096ea515_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjQvZnJhZzowMDZlNTNjMmZhOTQ0YzhmODEzNjRjZjQ2ZGRjYTRlZS90ZXh0cmVnaW9uOjAwNmU1M2MyZmE5NDRjOGY4MTM2NGNmNDZkZGNhNGVlXzE2NDkyNjc0NDI0Mzk_af868e12-0fc5-4e0e-a06b-b186dfc3d7de"
      unitRef="shares">17000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i4a03692444e142a0ba3374540a9914ce_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjQvZnJhZzowMDZlNTNjMmZhOTQ0YzhmODEzNjRjZjQ2ZGRjYTRlZS90ZXh0cmVnaW9uOjAwNmU1M2MyZmE5NDRjOGY4MTM2NGNmNDZkZGNhNGVlXzY1Nw_15986b16-e70f-490a-b8d8-34f94198cfad"
      unitRef="shares">8000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="ic814b05a7ffa4520acd88aea1d50ac8f_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjQvZnJhZzowMDZlNTNjMmZhOTQ0YzhmODEzNjRjZjQ2ZGRjYTRlZS90ZXh0cmVnaW9uOjAwNmU1M2MyZmE5NDRjOGY4MTM2NGNmNDZkZGNhNGVlXzY2Mw_334d8a96-432c-4b97-965c-e1276114e5ad"
      unitRef="shares">14000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNDUvZnJhZzozZmM2Zjg5MGI0Y2M0ZDA0YjAxZWE2YmYyNjM5YjZmMy90ZXh0cmVnaW9uOjNmYzZmODkwYjRjYzRkMDRiMDFlYTZiZjI2MzliNmYzXzMz_c7e00001-96be-46c8-a208-221aa0cd6876"
      unitRef="shares">2000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <dei:DocumentType
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGV4dHJlZ2lvbjo5ZTJmMDg2N2Y3YTk0MWFkOGYzY2MzNDZhN2VkYTBiNl8zMzQ2_ee84641e-2010-453f-8587-8b82404524a1">10-K</dei:DocumentType>
    <dei:DocumentAnnualReport
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGFibGU6NjY0NzI5ZjcyOGNkNDFlZmIwZjA2NTgxNGU5MWY5ZmQvdGFibGVyYW5nZTo2NjQ3MjlmNzI4Y2Q0MWVmYjBmMDY1ODE0ZTkxZjlmZF8wLTAtMS0xLTEwMDAwMg_4da599a0-6cb4-4f03-bd00-e3676b753d86">true</dei:DocumentAnnualReport>
    <dei:DocumentPeriodEndDate
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGV4dHJlZ2lvbjo5ZTJmMDg2N2Y3YTk0MWFkOGYzY2MzNDZhN2VkYTBiNl8xNzU_ae010b3c-b1be-426a-a771-6353ab409b08">2022-12-31</dei:DocumentPeriodEndDate>
    <dei:CurrentFiscalYearEndDate
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGV4dHJlZ2lvbjo5ZTJmMDg2N2Y3YTk0MWFkOGYzY2MzNDZhN2VkYTBiNl8xNzU_d14d7b0c-31c1-4763-9a2e-df74b4fd4a1c">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentTransitionReport
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGFibGU6OWFlZDQ2ODNmZDlhNDg2M2EzNzM4ZGE3OGU3N2FlODQvdGFibGVyYW5nZTo5YWVkNDY4M2ZkOWE0ODYzYTM3MzhkYTc4ZTc3YWU4NF8wLTAtMS0xLTEwMDAwMg_974f02bb-4c76-44bd-b11b-4f2b8e7392a9">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGV4dHJlZ2lvbjo5ZTJmMDg2N2Y3YTk0MWFkOGYzY2MzNDZhN2VkYTBiNl8zMzQ0_3c073784-3b00-44fb-bd51-e3947dceeb26">001-36307</dei:EntityFileNumber>
    <dei:EntityRegistrantName
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGV4dHJlZ2lvbjo5ZTJmMDg2N2Y3YTk0MWFkOGYzY2MzNDZhN2VkYTBiNl8zMzQ1_ea6d8a67-2246-44a7-8774-d5838898617f">Installed Building Products, Inc.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGFibGU6NDUxMWVjNDI3ODQzNDk4NDhmOGM4ODg1MTZhY2I0OGYvdGFibGVyYW5nZTo0NTExZWM0Mjc4NDM0OTg0OGY4Yzg4ODUxNmFjYjQ4Zl8wLTAtMS0xLTEwMDAwMg_34718ada-0e36-4849-8155-d501d7ac4dad">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGFibGU6NDUxMWVjNDI3ODQzNDk4NDhmOGM4ODg1MTZhY2I0OGYvdGFibGVyYW5nZTo0NTExZWM0Mjc4NDM0OTg0OGY4Yzg4ODUxNmFjYjQ4Zl8wLTMtMS0xLTEwMDAwMg_4262d240-a4b3-46d6-9d62-7dbfe115fcb9">45-3707650</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGFibGU6NDUxMWVjNDI3ODQzNDk4NDhmOGM4ODg1MTZhY2I0OGYvdGFibGVyYW5nZTo0NTExZWM0Mjc4NDM0OTg0OGY4Yzg4ODUxNmFjYjQ4Zl8zLTAtMS0xLTEwMDAwMi90ZXh0cmVnaW9uOmZhZDczM2UxNGMyNDQ4NGZiZmU1YjA0M2VjNDM3NmEyXzQ_12676de6-4dab-41ff-822a-3ed1aa1ec5a2">495 South High Street</dei:EntityAddressAddressLine1>
    <dei:EntityAddressAddressLine2
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGFibGU6NDUxMWVjNDI3ODQzNDk4NDhmOGM4ODg1MTZhY2I0OGYvdGFibGVyYW5nZTo0NTExZWM0Mjc4NDM0OTg0OGY4Yzg4ODUxNmFjYjQ4Zl8zLTAtMS0xLTEwMDAwMi90ZXh0cmVnaW9uOmZhZDczM2UxNGMyNDQ4NGZiZmU1YjA0M2VjNDM3NmEyXzg_1f6fbe63-a7f1-407d-9257-8d4d45c86530">Suite 50</dei:EntityAddressAddressLine2>
    <dei:EntityAddressCityOrTown
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGFibGU6NDUxMWVjNDI3ODQzNDk4NDhmOGM4ODg1MTZhY2I0OGYvdGFibGVyYW5nZTo0NTExZWM0Mjc4NDM0OTg0OGY4Yzg4ODUxNmFjYjQ4Zl80LTAtMS0xLTEwMDAwMi90ZXh0cmVnaW9uOjJhY2Y3ZTE1ZjQ5YjQ2NWJiY2ZmMzdhNDQ5OTVlMjBmXzQ_f62d3039-de01-45ad-8987-3bee16c88123">Columbus</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGFibGU6NDUxMWVjNDI3ODQzNDk4NDhmOGM4ODg1MTZhY2I0OGYvdGFibGVyYW5nZTo0NTExZWM0Mjc4NDM0OTg0OGY4Yzg4ODUxNmFjYjQ4Zl80LTAtMS0xLTEwMDAwMi90ZXh0cmVnaW9uOjJhY2Y3ZTE1ZjQ5YjQ2NWJiY2ZmMzdhNDQ5OTVlMjBmXzg_9efe23ae-31ec-400a-8241-74542c505677">OH</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGFibGU6NDUxMWVjNDI3ODQzNDk4NDhmOGM4ODg1MTZhY2I0OGYvdGFibGVyYW5nZTo0NTExZWM0Mjc4NDM0OTg0OGY4Yzg4ODUxNmFjYjQ4Zl80LTMtMS0xLTEwMDAwMg_dc4db70d-ab13-43fe-86f7-ddef4f689e1a">43215</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGV4dHJlZ2lvbjo5ZTJmMDg2N2Y3YTk0MWFkOGYzY2MzNDZhN2VkYTBiNl8zMzM1_841e3659-d90a-4fff-bc97-164d4f8a3502">(614)</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGV4dHJlZ2lvbjo5ZTJmMDg2N2Y3YTk0MWFkOGYzY2MzNDZhN2VkYTBiNl8zMzM2_cb61cf9e-b667-44f0-806a-c272b9e4cd52">221-3399</dei:LocalPhoneNumber>
    <dei:Security12bTitle
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGFibGU6NWY4NWUxYjhmZjU5NDlkOWI3M2I4ZjljMmVmNTc0MWUvdGFibGVyYW5nZTo1Zjg1ZTFiOGZmNTk0OWQ5YjczYjhmOWMyZWY1NzQxZV8xLTAtMS0xLTEwMDAwMg_cb66652e-0b37-413e-b8b0-0ed088295ef9">Common Stock,</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGFibGU6NWY4NWUxYjhmZjU5NDlkOWI3M2I4ZjljMmVmNTc0MWUvdGFibGVyYW5nZTo1Zjg1ZTFiOGZmNTk0OWQ5YjczYjhmOWMyZWY1NzQxZV8xLTMtMS0xLTEwMDAwMg_0230959e-6a9b-43ea-b61d-f2a927253cc4">IBP</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGFibGU6NWY4NWUxYjhmZjU5NDlkOWI3M2I4ZjljMmVmNTc0MWUvdGFibGVyYW5nZTo1Zjg1ZTFiOGZmNTk0OWQ5YjczYjhmOWMyZWY1NzQxZV8xLTUtMS0xLTEwMDAwMg_7ada87ea-0390-49fb-9208-63a556ada47a">NYSE</dei:SecurityExchangeName>
    <dei:EntityWellKnownSeasonedIssuer
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGV4dHJlZ2lvbjo5ZTJmMDg2N2Y3YTk0MWFkOGYzY2MzNDZhN2VkYTBiNl8zMzM3_ca734a91-60c0-4c3e-ac93-1c2b49af5176">Yes</dei:EntityWellKnownSeasonedIssuer>
    <dei:EntityVoluntaryFilers
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGV4dHJlZ2lvbjo5ZTJmMDg2N2Y3YTk0MWFkOGYzY2MzNDZhN2VkYTBiNl8zMzM5_0abfabf5-83a3-4caa-b26f-82bb85254b89">No</dei:EntityVoluntaryFilers>
    <dei:EntityCurrentReportingStatus
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGV4dHJlZ2lvbjo5ZTJmMDg2N2Y3YTk0MWFkOGYzY2MzNDZhN2VkYTBiNl8zMzQw_160e5063-d57a-4407-b5d3-53b95da95246">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGV4dHJlZ2lvbjo5ZTJmMDg2N2Y3YTk0MWFkOGYzY2MzNDZhN2VkYTBiNl8zMzQx_474ae7bd-9a0b-4cd3-8474-f974cff4d145">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGFibGU6NTRjYWY4NGFjMGVmNDE4NWE5ZGY0MjRlM2NjMWJiNDgvdGFibGVyYW5nZTo1NGNhZjg0YWMwZWY0MTg1YTlkZjQyNGUzY2MxYmI0OF8wLTAtMS0xLTEwMDAwMg_0a86e38c-5f43-47b3-a738-a9e0a3e09e99">Large Accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGFibGU6NTRjYWY4NGFjMGVmNDE4NWE5ZGY0MjRlM2NjMWJiNDgvdGFibGVyYW5nZTo1NGNhZjg0YWMwZWY0MTg1YTlkZjQyNGUzY2MxYmI0OF8xLTMtMS0xLTEwMDAwMg_95083c36-c12f-4bde-a1b4-77dc2305eae5">false</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGFibGU6NTRjYWY4NGFjMGVmNDE4NWE5ZGY0MjRlM2NjMWJiNDgvdGFibGVyYW5nZTo1NGNhZjg0YWMwZWY0MTg1YTlkZjQyNGUzY2MxYmI0OF8yLTMtMS0xLTEwMDAwMg_77abb1b1-cf35-4d0e-afde-ab84a3998e91">false</dei:EntityEmergingGrowthCompany>
    <dei:IcfrAuditorAttestationFlag
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGV4dHJlZ2lvbjo5ZTJmMDg2N2Y3YTk0MWFkOGYzY2MzNDZhN2VkYTBiNl8zMzQy_794c0ed3-1d88-4dc2-a9a5-bc4837110b81">true</dei:IcfrAuditorAttestationFlag>
    <dei:EntityShellCompany
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGV4dHJlZ2lvbjo5ZTJmMDg2N2Y3YTk0MWFkOGYzY2MzNDZhN2VkYTBiNl8zMzQ3_81c30324-b89f-46a7-8e17-7661c95df79e">false</dei:EntityShellCompany>
    <dei:EntityPublicFloat
      contextRef="id9acdefd9f1a43fba69c41bb102d5560_I20220630"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGV4dHJlZ2lvbjo5ZTJmMDg2N2Y3YTk0MWFkOGYzY2MzNDZhN2VkYTBiNl8zMzQ4_4b2a6a09-8a85-47f3-8b2f-5f1122a7e09c"
      unitRef="usd">1955334261</dei:EntityPublicFloat>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="id2233e562f8d428397263474bb294e17_I20230215"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGV4dHJlZ2lvbjo5ZTJmMDg2N2Y3YTk0MWFkOGYzY2MzNDZhN2VkYTBiNl8yODcw_cf4b0cdd-bc2e-4cc2-b53e-4fc329fc4be1"
      unitRef="shares">28306393</dei:EntityCommonStockSharesOutstanding>
    <dei:DocumentsIncorporatedByReferenceTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xL2ZyYWc6OWUyZjA4NjdmN2E5NDFhZDhmM2NjMzQ2YTdlZGEwYjYvdGV4dHJlZ2lvbjo5ZTJmMDg2N2Y3YTk0MWFkOGYzY2MzNDZhN2VkYTBiNl8zMzM4_2d4cafa9-ec74-431b-88a2-1091282f34ea">Portions of the registrant&#x2019;s Definitive Proxy Statement relating to the 2023 Annual Meeting of Stockholders are incorporated by reference into Part III of this Annual Report on Form 10-K where indicated. Such Definitive Proxy Statement will be filed with the Securities and Exchange Commission within 120 days after the end of the registrant&#x2019;s fiscal year ended December&#160;31, 2022.</dei:DocumentsIncorporatedByReferenceTextBlock>
    <dei:AuditorName
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF82Ny9mcmFnOjFjNjU5YmEyMWVlZDQxMDBiYzRhZTU3NDc5MWRlNjExL3RleHRyZWdpb246MWM2NTliYTIxZWVkNDEwMGJjNGFlNTc0NzkxZGU2MTFfNzE1OA_426a4901-f6b7-4415-95ae-58973aefeca3">Deloitte &amp; Touche LLP</dei:AuditorName>
    <dei:AuditorLocation
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF82Ny9mcmFnOjFjNjU5YmEyMWVlZDQxMDBiYzRhZTU3NDc5MWRlNjExL3RleHRyZWdpb246MWM2NTliYTIxZWVkNDEwMGJjNGFlNTc0NzkxZGU2MTFfNzE2MA_8ec4d279-2a68-44c8-86b5-400339bfba86">Columbus, Ohio</dei:AuditorLocation>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfNC0xLTEtMS0xMDAwMDI_f9226537-c90f-46ee-862f-0580e4707ff2"
      unitRef="usd">229627000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfNC0zLTEtMS0xMDAwMDI_82702adc-b6e2-4604-b7a3-73a70845b7e0"
      unitRef="usd">333485000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfNi0wLTEtMS0xMDAwMDIvdGV4dHJlZ2lvbjo4NWMxNzQ5NmY2NzM0MTM2Yjg3YTE3MDQwNDFhNjNiYV82MQ_a2e896c2-5a46-4699-97fa-552d37febb2b"
      unitRef="usd">9549000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfNi0wLTEtMS0xMDAwMDIvdGV4dHJlZ2lvbjo4NWMxNzQ5NmY2NzM0MTM2Yjg3YTE3MDQwNDFhNjNiYV82OA_e0c76761-9999-4ea8-857b-fcbe241c2670"
      unitRef="usd">8717000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfNi0xLTEtMS0xMDAwMDI_68291f7b-2364-4d95-a4d2-86d1ce4b2762"
      unitRef="usd">397222000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfNi0zLTEtMS0xMDAwMDI_da7da7a3-81bf-4259-a66f-bdcf6a4de2ca"
      unitRef="usd">312767000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryNet
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfNy0xLTEtMS0xMDAwMDI_7cadc210-f595-4612-a486-ece12fd484fd"
      unitRef="usd">176629000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfNy0zLTEtMS0xMDAwMDI_e7f903cb-f907-4ba3-9329-aed88b81b12b"
      unitRef="usd">143039000</us-gaap:InventoryNet>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfOC0xLTEtMS0xMDAwMDI_2f57182a-8314-42c3-b3e6-18ccf3dff697"
      unitRef="usd">80933000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfOC0zLTEtMS0xMDAwMDI_7229d19d-74cd-434b-83c5-2aaa6634a216"
      unitRef="usd">70025000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfOS0xLTEtMS0xMDAwMDI_30106ed4-853b-4813-a6ac-0ccf806b5e23"
      unitRef="usd">884411000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfOS0zLTEtMS0xMDAwMDI_5b02fdbb-762a-4aff-a540-d21eaf33afed"
      unitRef="usd">859316000</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMTAtMS0xLTEtMTAwMDAy_d03e0363-7605-4064-87c7-9740c8e8dd9d"
      unitRef="usd">118774000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMTAtMy0xLTEtMTAwMDAy_73ffc652-7ca3-48bd-9efd-7b436daaa2be"
      unitRef="usd">105933000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMTEtMS0xLTEtMTAwMDAy_917a60e3-0cde-4da0-9fb7-8b4851d95516"
      unitRef="usd">76174000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMTEtMy0xLTEtMTAwMDAy_90db2cbc-e51f-4a54-b303-a563964c7d2c"
      unitRef="usd">69871000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:Goodwill
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMTItMS0xLTEtMTAwMDAy_c965645a-c1c8-4376-bcd3-c47215cb11e7"
      unitRef="usd">373555000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMTItMy0xLTEtMTAwMDAy_b3eed07f-06ba-4b1a-a29a-7e6637b8de8b"
      unitRef="usd">322517000</us-gaap:Goodwill>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i9aea8d337c2a4a158061feaff30010e0_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMTMtMS0xLTEtMTAwMDAy_52a3e2be-7b0e-4e80-ba1f-3d01bc675bcc"
      unitRef="usd">192328000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="ibcda928914984dab908ead68148bca5e_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMTMtMy0xLTEtMTAwMDAy_6528553f-17e9-4020-8841-9a70f9834039"
      unitRef="usd">178264000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i2872a34b72cc428096e4c33cb0a3178f_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMTQtMS0xLTEtMTAwMDAy_67b63afa-f81a-49fc-b89a-66e770269cf6"
      unitRef="usd">91145000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="ic0d83bb8e2c1438bb57812b147ed1ed9_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMTQtMy0xLTEtMTAwMDAy_d7893395-5592-4ff9-a652-23140395bf49"
      unitRef="usd">86157000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMTUtMS0xLTEtMTAwMDAy_05ef9d2c-9d89-4e2e-961d-0d99fcb0f526"
      unitRef="usd">42545000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMTUtMy0xLTEtMTAwMDAy_3dd2e9fd-468d-496e-b48c-b925afea7add"
      unitRef="usd">31144000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:Assets
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMTYtMS0xLTEtMTAwMDAy_28175fa5-9b4a-441a-a905-c7a4182864f7"
      unitRef="usd">1778932000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMTYtMy0xLTEtMTAwMDAy_1f566f8c-6355-415e-8925-06cba0a5283e"
      unitRef="usd">1653202000</us-gaap:Assets>
    <us-gaap:LongTermDebtCurrent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMTktMS0xLTEtMTAwMDAy_ff66dd06-cdb2-4577-80d0-30e859be762c"
      unitRef="usd">30983000</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtCurrent
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMTktMy0xLTEtMTAwMDAy_a8885e4f-6bda-467c-b047-d3619dba0c7f"
      unitRef="usd">30839000</us-gaap:LongTermDebtCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjAtMS0xLTEtMTAwMDAy_60abfb49-2d50-45f4-8b9c-78fba26fa60a"
      unitRef="usd">26145000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjAtMy0xLTEtMTAwMDAy_8a7e38bc-538c-4d42-accc-b2fd805ad018"
      unitRef="usd">23224000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:FinanceLeaseLiabilityCurrent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjEtMS0xLTEtMTAwMDAy_074e4924-0512-466b-b5bb-c88cef4f7022"
      unitRef="usd">2508000</us-gaap:FinanceLeaseLiabilityCurrent>
    <us-gaap:FinanceLeaseLiabilityCurrent
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjEtMy0xLTEtMTAwMDAy_89c396a1-8b62-4beb-b51f-5fc6ceeba766"
      unitRef="usd">1747000</us-gaap:FinanceLeaseLiabilityCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjItMS0xLTEtMTAwMDAy_f68c5e0e-66ab-4069-8ec3-bba96efe7c02"
      unitRef="usd">149186000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjItMy0xLTEtMTAwMDAy_ec70814c-a938-4567-a628-9ed0da09bbe7"
      unitRef="usd">132705000</us-gaap:AccountsPayableCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjMtMS0xLTEtMTAwMDAy_d8f637c0-e15d-419a-b803-c67d1ede5bee"
      unitRef="usd">51608000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjMtMy0xLTEtMTAwMDAy_7419e4db-90ee-471c-9e33-7aa05a0b66f8"
      unitRef="usd">50964000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:OtherLiabilitiesCurrent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjQtMS0xLTEtMTAwMDAy_0742bd4b-e755-4c4b-b8e6-6b9e1b0b8b89"
      unitRef="usd">67631000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:OtherLiabilitiesCurrent
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjQtMy0xLTEtMTAwMDAy_4bfdf3cb-1737-40e0-9102-db9e4ac36b4e"
      unitRef="usd">68090000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjUtMS0xLTEtMTAwMDAy_5f0fd8e0-6782-4a2a-b9e5-a012f2727d6c"
      unitRef="usd">328061000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjUtMy0xLTEtMTAwMDAy_818d896e-da32-4785-baad-50baa7fd03ab"
      unitRef="usd">307569000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjYtMS0xLTEtMTAwMDAy_410dfd06-a9fa-4a58-9eb8-bb4250755431"
      unitRef="usd">830171000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjYtMy0xLTEtMTAwMDAy_e990aa08-11a1-4bb5-a7f3-eb7c8163f669"
      unitRef="usd">832193000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjctMS0xLTEtMTAwMDAy_cf86e875-b837-4d91-8558-058bd1cebd2e"
      unitRef="usd">49789000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjctMy0xLTEtMTAwMDAy_34b8f07d-935d-4715-b97c-69784a0e536f"
      unitRef="usd">46075000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:FinanceLeaseLiabilityNoncurrent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjgtMS0xLTEtMTAwMDAy_d0f19352-537e-41f5-a13e-ed63f14e97a0"
      unitRef="usd">6397000</us-gaap:FinanceLeaseLiabilityNoncurrent>
    <us-gaap:FinanceLeaseLiabilityNoncurrent
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjgtMy0xLTEtMTAwMDAy_d0976b16-a0bf-4f5a-857c-8a56d64fc4a3"
      unitRef="usd">3297000</us-gaap:FinanceLeaseLiabilityNoncurrent>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjktMS0xLTEtMTAwMDAy_738cf531-9a77-468a-b03b-bc7b157572c8"
      unitRef="usd">28458000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMjktMy0xLTEtMTAwMDAy_735c8364-6724-4b74-b184-11af33b822cc"
      unitRef="usd">4819000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzAtMS0xLTEtMTAwMDAy_8fd3d506-0fad-47bb-beec-acee5fcda6dc"
      unitRef="usd">42557000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzAtMy0xLTEtMTAwMDAy_579926ed-103b-4da3-97af-06934c7f83c4"
      unitRef="usd">42409000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:Liabilities
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzEtMS0xLTEtMTAwMDAy_2abf9516-7ad5-456f-bc57-fe9ac9fbfba2"
      unitRef="usd">1285433000</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzEtMy0xLTEtMTAwMDAy_c8dec303-3074-4ebb-b815-7468f67bd786"
      unitRef="usd">1236362000</us-gaap:Liabilities>
    <us-gaap:CommitmentsAndContingencies
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzItMS0xLTEtMTAwMDAy_18233438-2ea7-4f53-8ead-bbd75b7bd23f"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:CommitmentsAndContingencies
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzItMy0xLTEtMTAwMDAy_bf135d8a-c201-4288-905f-e8db29659397"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzQtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246NzU4MTRiYWUyNDJlNDcxNmFhZGE1MTFmODZkMTBmZDFfMjE_2babde19-bbf7-406a-9d9f-455e1ef9d42e"
      unitRef="usdPerShare">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzQtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246NzU4MTRiYWUyNDJlNDcxNmFhZGE1MTFmODZkMTBmZDFfMjE_94021d79-fe23-4dbd-b188-641bd415cead"
      unitRef="usdPerShare">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzQtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246NzU4MTRiYWUyNDJlNDcxNmFhZGE1MTFmODZkMTBmZDFfMzU_2a86871b-221c-4d44-8eb8-518945093222"
      unitRef="shares">5000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzQtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246NzU4MTRiYWUyNDJlNDcxNmFhZGE1MTFmODZkMTBmZDFfMzU_ffb797cd-dcf4-453e-af96-f225f0cf5986"
      unitRef="shares">5000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesIssued
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzQtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246NzU4MTRiYWUyNDJlNDcxNmFhZGE1MTFmODZkMTBmZDFfNTM_1850d026-a048-4426-988a-c1838e0df6f0"
      unitRef="shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesIssued
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzQtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246NzU4MTRiYWUyNDJlNDcxNmFhZGE1MTFmODZkMTBmZDFfNTM_1894d53c-d799-4cd2-ab84-e32aab5f52a3"
      unitRef="shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzQtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246NzU4MTRiYWUyNDJlNDcxNmFhZGE1MTFmODZkMTBmZDFfNTM_22ce41c0-1118-44a6-9caa-2919e33066b5"
      unitRef="shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzQtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246NzU4MTRiYWUyNDJlNDcxNmFhZGE1MTFmODZkMTBmZDFfNTM_998cb84f-cb5c-40a1-aa32-2f74fbbc62ff"
      unitRef="shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockValue
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzQtMS0xLTEtMTAwMDAy_e3297d72-11b6-4e38-9d71-4a86044889e7"
      unitRef="usd">0</us-gaap:PreferredStockValue>
    <us-gaap:PreferredStockValue
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzQtMy0xLTEtMTAwMDAy_38156393-c638-49f6-b6dd-a0ec4b1f411e"
      unitRef="usd">0</us-gaap:PreferredStockValue>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzUtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246MjAyNjU4NjIxMGYyNDE0M2JmZjdlNmU2MWNiMjhhNjBfMTg_1a40b437-879b-4ca9-8a9a-47f42a281611"
      unitRef="usdPerShare">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzUtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246MjAyNjU4NjIxMGYyNDE0M2JmZjdlNmU2MWNiMjhhNjBfMTg_c9c2e4cd-9ce9-478f-8f0f-940f6039ed76"
      unitRef="usdPerShare">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzUtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246MjAyNjU4NjIxMGYyNDE0M2JmZjdlNmU2MWNiMjhhNjBfMzI_9f011b68-4fa1-4e3b-8db6-c6813851ea29"
      unitRef="shares">100000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzUtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246MjAyNjU4NjIxMGYyNDE0M2JmZjdlNmU2MWNiMjhhNjBfMzI_ce02062e-1fe8-4412-a2c4-c82d441905ff"
      unitRef="shares">100000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzUtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246MjAyNjU4NjIxMGYyNDE0M2JmZjdlNmU2MWNiMjhhNjBfNDc_9b2f2b45-364e-458c-857b-caca957cbf28"
      unitRef="shares">33429557</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzUtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246MjAyNjU4NjIxMGYyNDE0M2JmZjdlNmU2MWNiMjhhNjBfNTQ_9d43ea88-bb71-4fe8-8fd6-f8d4499df42d"
      unitRef="shares">33271659</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzUtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246MjAyNjU4NjIxMGYyNDE0M2JmZjdlNmU2MWNiMjhhNjBfNjg_6bb98057-a75c-429c-9871-18dea172d91a"
      unitRef="shares">28306482</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzUtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246MjAyNjU4NjIxMGYyNDE0M2JmZjdlNmU2MWNiMjhhNjBfNzU_fef62fc1-54c5-45c5-ba3f-3e3983777978"
      unitRef="shares">29706401</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockValue
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzUtMS0xLTEtMTAwMDAy_93cd8989-3114-40a3-994a-be3819b90025"
      unitRef="usd">334000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzUtMy0xLTEtMTAwMDAy_2445f4a6-55a7-43cb-9120-1a58347a7122"
      unitRef="usd">333000</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzYtMS0xLTEtMTAwMDAy_6b50841d-a7b9-4067-8cc3-193be95cd7ae"
      unitRef="usd">228827000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzYtMy0xLTEtMTAwMDAy_1d076381-5f7b-450e-a10a-403590c1cac2"
      unitRef="usd">211430000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzctMS0xLTEtMTAwMDAy_d4550a26-ba67-415a-83d9-871c1b6c6b89"
      unitRef="usd">513095000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzctMy0xLTEtMTAwMDAy_f9d06964-aeee-4c60-b806-5e17a7a4c1bb"
      unitRef="usd">352543000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:TreasuryStockCommonShares
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzgtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246NTgxZmMyOWUzZmNhNGEwZGFkYWY2M2Y0ZjVkYTRlZTBfMjk_25769f58-84f9-462c-982f-31b2a398c630"
      unitRef="shares">5123075</us-gaap:TreasuryStockCommonShares>
    <us-gaap:TreasuryStockCommonShares
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzgtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246NTgxZmMyOWUzZmNhNGEwZGFkYWY2M2Y0ZjVkYTRlZTBfMzY_6ac77506-36c1-418f-ae25-63b2709135fe"
      unitRef="shares">3565258</us-gaap:TreasuryStockCommonShares>
    <us-gaap:TreasuryStockCommonValue
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzgtMS0xLTEtMTAwMDAy_ac6eeb72-b664-4716-84c9-001a3ead72d3"
      unitRef="usd">289317000</us-gaap:TreasuryStockCommonValue>
    <us-gaap:TreasuryStockCommonValue
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzgtMy0xLTEtMTAwMDAy_b7b09b79-6e00-49b7-9c45-63070f946aa7"
      unitRef="usd">147239000</us-gaap:TreasuryStockCommonValue>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzktMS0xLTEtMTAwMDAy_35f34427-3cd2-41a5-be55-8dc9f600426b"
      unitRef="usd">40560000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfMzktMy0xLTEtMTAwMDAy_e52d49da-7ec7-403e-b4bd-ab0a27f1cf0a"
      unitRef="usd">-227000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:StockholdersEquity
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfNDAtMS0xLTEtMTAwMDAy_e1d52a80-c97d-44a3-a9c2-354d86cce03f"
      unitRef="usd">493499000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfNDAtMy0xLTEtMTAwMDAy_8ffff262-76e9-47da-b23a-0d25589b78a3"
      unitRef="usd">416840000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfNDEtMS0xLTEtMTAwMDAy_1b73642b-7e39-48fa-95c6-c6229454dbd2"
      unitRef="usd">1778932000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83MC9mcmFnOmM1YTZkY2ZjMmZlZjQ2MmNiYTVkODBmYmE1Mzk1M2Y0L3RhYmxlOmZiMDQ3OTlhMGZjZTQ1Mzg5NmVlZDJiM2ViMDEzZjFmL3RhYmxlcmFuZ2U6ZmIwNDc5OWEwZmNlNDUzODk2ZWVkMmIzZWIwMTNmMWZfNDEtMy0xLTEtMTAwMDAy_e4a89978-aeb8-473b-b04c-1b060613bb2c"
      unitRef="usd">1653202000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMi0xLTEtMS0xMDAwMDI_ef5b2d7f-f2b6-49a4-824a-400be9315a6f"
      unitRef="usd">2669844000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMi0zLTEtMS0xMDAwMDI_fda0bdce-ee54-42a1-9da4-df40a10e7f68"
      unitRef="usd">1968650000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMi01LTEtMS0xMDAwMDI_e1eba2a1-2c22-423e-825d-76e829db9de8"
      unitRef="usd">1653225000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMy0xLTEtMS0xMDAwMDI_352f31c5-32dd-4b9e-bb16-58621a1d8749"
      unitRef="usd">1842060000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMy0zLTEtMS0xMDAwMDI_9625f203-1f1a-4818-931d-67d7c1f93393"
      unitRef="usd">1379131000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMy01LTEtMS0xMDAwMDI_ca8c616e-7f80-4a42-b550-aa416fa31f3d"
      unitRef="usd">1143251000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfNC0xLTEtMS0xMDAwMDI_db93ce5a-4d76-4b50-8201-c8a9e2156ba6"
      unitRef="usd">827784000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfNC0zLTEtMS0xMDAwMDI_388dbd27-a065-4ce8-b82f-99f74249565a"
      unitRef="usd">589519000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfNC01LTEtMS0xMDAwMDI_bccea284-73bb-4904-bcb1-14340b890deb"
      unitRef="usd">509974000</us-gaap:GrossProfit>
    <us-gaap:SellingExpense
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfNi0xLTEtMS0xMDAwMDI_8f54829f-459c-4217-a2f1-af062952dd74"
      unitRef="usd">119031000</us-gaap:SellingExpense>
    <us-gaap:SellingExpense
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfNi0zLTEtMS0xMDAwMDI_bfc2fb6d-62ec-469f-ba5b-d60f20270b8c"
      unitRef="usd">93204000</us-gaap:SellingExpense>
    <us-gaap:SellingExpense
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfNi01LTEtMS0xMDAwMDI_33a5c672-75d5-49a5-bfbc-59169e9513b8"
      unitRef="usd">81613000</us-gaap:SellingExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfNy0xLTEtMS0xMDAwMDI_ff5d3038-7b1a-4fd7-923b-1ffcf4b75d18"
      unitRef="usd">335688000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfNy0zLTEtMS0xMDAwMDI_187d0cdd-653f-4ec9-830a-bbc446263d78"
      unitRef="usd">272391000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfNy01LTEtMS0xMDAwMDI_12d99513-3889-4cd3-a733-ec69cf3fc70b"
      unitRef="usd">238147000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfOC0xLTEtMS0xMDg5MDA_0d4765ad-505f-43aa-abfa-fdf073fbe867"
      unitRef="usd">-16109000</us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1>
    <us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfOC0zLTEtMS0xMDg5MDA_acf54529-51c6-4528-9b80-1b67ddf1f964"
      unitRef="usd">-1035000</us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1>
    <us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfOC01LTEtMS0xMDg5MDA_93751c12-b167-44f9-a58d-2588dea97311"
      unitRef="usd">-188000</us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfOC0xLTEtMS0xMDAwMDI_8776d061-798b-4a2e-ae16-4c7b969627c9"
      unitRef="usd">43763000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfOC0zLTEtMS0xMDAwMDI_62829463-d75b-4d16-b4e4-9e247c667736"
      unitRef="usd">37079000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfOC01LTEtMS0xMDAwMDI_7752b465-e021-43f5-a73b-0f2470524071"
      unitRef="usd">28535000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:OperatingIncomeLoss
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfOS0xLTEtMS0xMDAwMDI_99ce4fda-7079-4be8-ab31-26addddeabeb"
      unitRef="usd">345411000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfOS0zLTEtMS0xMDAwMDI_ce374773-111d-4547-ae30-9ed2ad95a194"
      unitRef="usd">187880000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfOS01LTEtMS0xMDAwMDI_189363a6-b455-4572-a9bd-672aa1ce4a20"
      unitRef="usd">161867000</us-gaap:OperatingIncomeLoss>
    <us-gaap:InterestExpense
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTEtMS0xLTEtMTAwMDAy_b6800bda-3de3-48e3-811f-e85b0948bf40"
      unitRef="usd">41574000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTEtMy0xLTEtMTAwMDAy_e3cbaf8b-aa99-4fd8-aea2-edd636dafe4f"
      unitRef="usd">32842000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTEtNS0xLTEtMTAwMDAy_9e90564d-59b7-4128-9fa7-ff1cf108d7fd"
      unitRef="usd">30291000</us-gaap:InterestExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTItMS0xLTEtMTAwMDAy_9e7f5682-bd10-4b52-80fd-771ad4383491"
      unitRef="usd">-530000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTItMy0xLTEtMTAwMDAy_009abee2-aff9-4b65-86ef-50e357dc1eaf"
      unitRef="usd">437000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTItNS0xLTEtMTAwMDAy_74060d2e-e83d-46c1-9f79-12145a3e8001"
      unitRef="usd">-399000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTMtMS0xLTEtMTAwMDAy_2f739a0d-e107-4d79-b093-c2eb0dd1f317"
      unitRef="usd">303307000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTMtMy0xLTEtMTAwMDAy_e447a222-a604-422f-adfb-e4fd0fd63042"
      unitRef="usd">155475000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTMtNS0xLTEtMTAwMDAy_c1033d58-6985-4e00-a44b-36f3dbee5d5f"
      unitRef="usd">131177000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTQtMS0xLTEtMTAwMDAy_887ac403-e346-4efc-afa8-7e7479a43da2"
      unitRef="usd">79879000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTQtMy0xLTEtMTAwMDAy_e72517ad-e4be-4c23-a947-2d2bf0c27ae3"
      unitRef="usd">36712000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTQtNS0xLTEtMTAwMDAy_ffc1c554-695f-4236-a9ca-ce84c851abf3"
      unitRef="usd">33938000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTUtMS0xLTEtMTAwMDAy_89aef76b-9c68-4048-b339-1462b54acaf1"
      unitRef="usd">223428000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTUtMy0xLTEtMTAwMDAy_4ec7960c-e6d7-407a-8cdb-1af7ad912a71"
      unitRef="usd">118763000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTUtNS0xLTEtMTAwMDAy_4d192422-5b19-4a4d-8b3b-e842d2249d52"
      unitRef="usd">97239000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTctMC0xLTEtMTAwMDAyL3RleHRyZWdpb246ZDM0NTBjNDkzMTdkNDVhNmI4ODllMjA3NGI3ZTkxN2FfNzA_c06613b6-1f9b-4660-bdeb-9917ec485121"
      unitRef="usd">14381000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTctMC0xLTEtMTAwMDAyL3RleHRyZWdpb246ZDM0NTBjNDkzMTdkNDVhNmI4ODllMjA3NGI3ZTkxN2FfNzQ_76f1d502-8a6f-4f65-860f-511e6d42c676"
      unitRef="usd">2773000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTctMC0xLTEtMTAwMDAyL3RleHRyZWdpb246ZDM0NTBjNDkzMTdkNDVhNmI4ODllMjA3NGI3ZTkxN2FfODE_3429b74c-8145-4347-af50-e1a793baf86b"
      unitRef="usd">-550000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTctMS0xLTEtMTAwMDAy_d319b1e3-0930-4777-a6bf-4088cc90b4e7"
      unitRef="usd">40787000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTctMy0xLTEtMTAwMDAy_ab708cdc-c78b-40ae-a68c-cd565ee8ef47"
      unitRef="usd">8536000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTctNS0xLTEtMTAwMDAy_0f475cee-95cf-4416-ab36-e3043b307a25"
      unitRef="usd">-1620000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTgtMS0xLTEtMTAwMDAy_1fa3c402-09ce-4daf-bdd9-91f5872306af"
      unitRef="usd">264215000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTgtMy0xLTEtMTAwMDAy_b6dab15b-a60f-4215-a2cc-935533bdcc89"
      unitRef="usd">127299000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMTgtNS0xLTEtMTAwMDAy_8484ec84-f502-4810-9865-143e5c6c59fd"
      unitRef="usd">95619000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:EarningsPerShareBasic
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMjAtMS0xLTEtMTAwMDAy_294a4abf-eb37-4c80-bcec-49c4e12a3dfe"
      unitRef="usdPerShare">7.78</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMjAtMy0xLTEtMTAwMDAy_cf8adf04-f04e-442e-b1fb-079e88ffba8b"
      unitRef="usdPerShare">4.04</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMjAtNS0xLTEtMTAwMDAy_a5821bdd-7461-4ed3-8d44-db26dd0e9c84"
      unitRef="usdPerShare">3.30</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMjEtMS0xLTEtMTAwMDAy_6bf758b8-8855-49a4-9a0f-c1ad1d812176"
      unitRef="usdPerShare">7.74</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMjEtMy0xLTEtMTAwMDAy_681fac61-ed9b-4fae-8eec-0f7d4f2b4cf3"
      unitRef="usdPerShare">4.01</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMjEtNS0xLTEtMTAwMDAy_20858fab-fc7b-4455-8faf-cc778f7748cd"
      unitRef="usdPerShare">3.27</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMjMtMS0xLTEtMTAwMDAy_00208d0b-4053-494e-9f5d-7d54b8012ee5"
      unitRef="shares">28708166</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMjMtMy0xLTEtMTAwMDAy_b5750178-7209-4220-aad7-502af9856bb1"
      unitRef="shares">29367676</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMjMtNS0xLTEtMTAwMDAy_45aba330-b59d-40b2-9bee-54dfaaadf220"
      unitRef="shares">29504115</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMjQtMS0xLTEtMTAwMDAy_775b5551-8b29-4413-8676-7f92133a25fd"
      unitRef="shares">28869501</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMjQtMy0xLTEtMTAwMDAy_58f83310-e685-46a4-8272-c8be3ffc5170"
      unitRef="shares">29628527</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMjQtNS0xLTEtMTAwMDAy_40823134-1d2c-4db1-af6d-0230da8f4179"
      unitRef="shares">29717609</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMjYtMS0xLTEtMTAwMDAy_75174e06-a18c-4416-9ea3-b311757846ed"
      unitRef="usdPerShare">2.16</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMjYtMy0xLTEtMTAwMDAy_33031662-bf67-41f7-985a-ccd86fc4e600"
      unitRef="usdPerShare">1.20</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83My9mcmFnOjlkYzkzNTU2OGQ0ODQzMWU4NTAwYzQ4YmEyMTQ4NjcwL3RhYmxlOjRhMjVhNGZmODU4MjQ4ZDdhNzY0YzllMzhmZTBiNTI3L3RhYmxlcmFuZ2U6NGEyNWE0ZmY4NTgyNDhkN2E3NjRjOWUzOGZlMGI1MjdfMjYtNS0xLTEtMTAwMDAy_dd022a77-a9d7-4871-8564-d7fe316ccd5b"
      unitRef="usdPerShare">0</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:CommonStockSharesIssued
      contextRef="icda2001dc0514113b0f97d8b8892f98e_I20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMi0xLTEtMS0xMDAwMDI_a1b1b55d-5563-4f9d-90e9-fafe1db94d18"
      unitRef="shares">32871504</us-gaap:CommonStockSharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="icda2001dc0514113b0f97d8b8892f98e_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMi0zLTEtMS0xMDAwMDI_5b07ed74-649e-4142-848b-dd91f7b12a1c"
      unitRef="usd">329000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i7b992fbf285b4c508e644ecd8ace6054_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMi01LTEtMS0xMDAwMDI_c760252e-310d-45c1-b290-48520f0bf3aa"
      unitRef="usd">190230000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i9e6e275488144ae5aa9f04480329ba6e_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMi03LTEtMS0xMDAwMDI_97c1de90-5fa4-4a8b-9317-4fedb7cced50"
      unitRef="usd">173371000</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockCommonShares
      contextRef="i060a31c733a24e318b6082e3ad2430c3_I20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMi05LTEtMS0xMDAwMDI_40389566-936e-4371-b61a-cb37925c19d4"
      unitRef="shares">2855164</us-gaap:TreasuryStockCommonShares>
    <us-gaap:TreasuryStockCommonValue
      contextRef="i060a31c733a24e318b6082e3ad2430c3_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMi0xMS0xLTEtMTAwMDAy_3705733e-dbc0-4cdd-b755-f89aab07c23f"
      unitRef="usd">106756000</us-gaap:TreasuryStockCommonValue>
    <us-gaap:StockholdersEquity
      contextRef="i14b4ffb871e4403fb52831afe7cc8ee1_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMi0xMy0xLTEtMTAwMDAy_d45d1790-0a9c-4ad0-b04c-9633e149816b"
      unitRef="usd">-7143000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="iff4d4f6f690d4bce8ad0aafed6fdedd3_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMi0xNS0xLTEtMTAwMDAy_84ad6c7d-cb79-45da-98bf-8bd9765e9d5b"
      unitRef="usd">250031000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="ifaeaa8ace0d84dad85c82ae885b51ffc_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMy03LTEtMS0xMDAwMDI_ba3731fd-3f9b-47c8-9fb7-44fe74251702"
      unitRef="usd">97239000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMy0xNS0xLTEtMTAwMDAy_1ef4cf7c-3475-4353-a09e-3ab72254d10a"
      unitRef="usd">97239000</us-gaap:NetIncomeLoss>
    <us-gaap:StockholdersEquity
      contextRef="i958803dddf2c4619bdd48c5de25d23dd_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfNC03LTEtMS0xMDMxMDc_a8901adc-966a-4f3f-a436-501ad4334840"
      unitRef="usd">-1190000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i4dbcfeb87c1740e4b4eb9f7c6741ec30_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfNC0xNS0xLTEtMTAzMTI1_c06bfa07-0ed0-4f35-84d4-536707b9becd"
      unitRef="usd">-1190000</us-gaap:StockholdersEquity>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationGross
      contextRef="i5f4eac237bf84dcbb0b113c245834860_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfNC0xLTEtMS0xMDAwMDI_a4257ab4-cc3c-4e86-8105-2cf049c10f08"
      unitRef="shares">264004</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationGross>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross
      contextRef="i5f4eac237bf84dcbb0b113c245834860_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfNC0zLTEtMS0xMDAwMDI_32311a6a-7c7c-48dc-b6d1-6e57b88bc2ce"
      unitRef="usd">2000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross
      contextRef="i7fe08b3b47644acb83d3c2ab80777dc8_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfNC01LTEtMS0xMDAwMDI_11968054-28f8-4854-b435-f4b3b60ca46b"
      unitRef="usd">-2000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfNC0xNS0xLTEtMTAwMDAy_2ec77dd2-0ff4-4f88-9b65-1be8670d7324"
      unitRef="usd">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationForfeited
      contextRef="i53839f2bf7bb48d5ae89fba9e9a5a697_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfNS05LTEtMS0xMDAwMDI_24144459-3acc-4c51-85d6-d9820689d9ab"
      unitRef="shares">30223</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationForfeited>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationForfeited
      contextRef="i53839f2bf7bb48d5ae89fba9e9a5a697_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfNS0xMS0xLTEtMTAwMDAy_d03f44d6-b19d-456f-8802-af80018b3623"
      unitRef="usd">973000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationForfeited>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationForfeited
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfNS0xNS0xLTEtMTAwMDAy_105f6a8c-f778-4641-87e6-d0ca0421ed44"
      unitRef="usd">973000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationForfeited>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i7fe08b3b47644acb83d3c2ab80777dc8_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfNi01LTEtMS0xMDAwMDI_677cc2ca-e572-49cf-a132-f7a4bfdde9a5"
      unitRef="usd">9286000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfNi0xNS0xLTEtMTAwMDAy_2ae1dcb6-249b-483f-97fd-ff0b26472f75"
      unitRef="usd">9286000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="i5f4eac237bf84dcbb0b113c245834860_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfNy0xLTEtMS0xMDAwMDI_920c5769-f5e8-47c1-804e-ea0aa5356382"
      unitRef="shares">6371</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="i7fe08b3b47644acb83d3c2ab80777dc8_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfNy01LTEtMS0xMDAwMDI_8cbe225a-03c1-4f32-b995-71d662f33b0c"
      unitRef="usd">333000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfNy0xNS0xLTEtMTAwMDAy_16331d6e-1433-4032-8565-a7e54ec7ce6a"
      unitRef="usd">333000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfOS05LTEtMS0xMDMxMzU_eb5d422f-d699-4e23-ad9d-3237f6b40e53"
      unitRef="shares">633220</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfOS0xMS0xLTEtMTAzMTM1_992fc5f3-89e2-477d-99ab-59ade58fe92a"
      unitRef="usd">33924000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfOS0xNS0xLTEtMTAzMTM1_29511e7b-0353-49ad-b0f6-34013a564a8a"
      unitRef="usd">33924000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
      contextRef="i2f8775c2218e4ae5bc2f4a117bb88c76_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfOC0xMy0xLTEtMTAwMDAy_bd421908-7f24-4c34-9e23-22dc652a7cdc"
      unitRef="usd">-1620000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfOC0xNS0xLTEtMTAwMDAy_b545fd17-35ed-45aa-bd62-54b79ccc1174"
      unitRef="usd">-1620000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax>
    <us-gaap:CommonStockSharesIssued
      contextRef="i4103608b5e134096893c20315b3e281b_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfOS0xLTEtMS0xMDAwMDI_ecc81a4f-a28c-4b3f-9f8d-36ff152a96b6"
      unitRef="shares">33141879</us-gaap:CommonStockSharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="i4103608b5e134096893c20315b3e281b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfOS0zLTEtMS0xMDAwMDI_3f16a298-a203-404f-b968-8d154c64faae"
      unitRef="usd">331000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i872e33708c2141e89f9454313166eec2_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfOS01LTEtMS0xMDAwMDI_2ce57dfe-9728-4c9a-902f-8c95fd255cf9"
      unitRef="usd">199847000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i825445c1c6e445188055b16a6a682a2b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfOS03LTEtMS0xMDAwMDI_1ae33753-463b-4ca9-a0d0-e65eab3e0792"
      unitRef="usd">269420000</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockCommonShares
      contextRef="i707e16708e554448a4bb2c44e9f69b40_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfOS05LTEtMS0xMDAwMDI_12cf9ab0-5cb8-42eb-93c0-20d1b2282aa0"
      unitRef="shares">3518607</us-gaap:TreasuryStockCommonShares>
    <us-gaap:TreasuryStockCommonValue
      contextRef="i707e16708e554448a4bb2c44e9f69b40_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfOS0xMS0xLTEtMTAwMDAy_773909e2-1327-4cd6-85a2-1ab389629bdb"
      unitRef="usd">141653000</us-gaap:TreasuryStockCommonValue>
    <us-gaap:StockholdersEquity
      contextRef="iaba36a8be02c46d9bcf4b91147e9910d_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfOS0xMy0xLTEtMTAwMDAy_2bb5585c-265c-4444-abc6-df869f08a26f"
      unitRef="usd">-8763000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i61f3c1563a76427b8e6b9d432aa44d9a_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfOS0xNS0xLTEtMTAwMDAy_fb2da20e-45f5-4768-aa96-82c44953eafe"
      unitRef="usd">319182000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="i132c5961f1cd4de1b11a825f82f2a62a_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTAtNy0xLTEtMTAwMDAy_30462493-46c7-4968-8443-852344ef6ab6"
      unitRef="usd">118763000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTAtMTUtMS0xLTEwMDAwMg_e706af55-be37-4339-afb2-fa29138c2e64"
      unitRef="usd">118763000</us-gaap:NetIncomeLoss>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationGross
      contextRef="i286eecc934a2497fbd8d1ec5b56d936f_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTItMS0xLTEtMTAwMDAy_01163ef0-5109-40c9-90a5-9c5e4107f853"
      unitRef="shares">125550</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationGross>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross
      contextRef="i286eecc934a2497fbd8d1ec5b56d936f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTItMy0xLTEtMTAwMDAy_1c5514dd-ae5f-4657-988c-685c78b37e3e"
      unitRef="usd">2000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross
      contextRef="ibe9a3844ee4b41168f2d8f668b99a22a_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTItNS0xLTEtMTAwMDAy_29e4d3bf-0661-40fa-bc12-69660b873297"
      unitRef="usd">-2000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTItMTUtMS0xLTEwMDAwMg_44d58e94-3cef-4c7c-98f0-7a1e1184a1f7"
      unitRef="usd">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationForfeited
      contextRef="ia178f6d7fa8c4ab7a1bd2e8fd0b05f84_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTMtOS0xLTEtMTAwMDAy_8297a505-2383-49e5-b04e-6d132f2dd3f5"
      unitRef="shares">46651</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationForfeited>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationForfeited
      contextRef="ia178f6d7fa8c4ab7a1bd2e8fd0b05f84_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTMtMTEtMS0xLTEwMDAwMg_d1706461-371a-489b-a389-9ee4722a9525"
      unitRef="usd">5586000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationForfeited>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationForfeited
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTMtMTUtMS0xLTEwMDAwMg_e038b188-0f5e-4631-8eb0-a6eee76a57b2"
      unitRef="usd">5586000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationForfeited>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="ibe9a3844ee4b41168f2d8f668b99a22a_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTQtNS0xLTEtMTAwMDAy_fe446c3c-9310-4027-9bc4-f122ce15a04f"
      unitRef="usd">11118000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTQtMTUtMS0xLTEwMDAwMg_f876654d-f17f-473c-9126-2aaf1ef98840"
      unitRef="usd">11118000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="i286eecc934a2497fbd8d1ec5b56d936f_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTUtMS0xLTEtMTAwMDAy_1ac3850a-d7e0-4cd7-8c2a-db57afd0f82f"
      unitRef="shares">4230</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="ibe9a3844ee4b41168f2d8f668b99a22a_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTUtNS0xLTEtMTAwMDAy_a409d39f-abc4-4043-a944-dc7d988433a5"
      unitRef="usd">467000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTUtMTUtMS0xLTEwMDAwMg_99d4661a-dd66-4574-9274-49c731c0b47b"
      unitRef="usd">467000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTYtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246ZmEyOTc4NTljM2M3NGMwYjhlNjk0MDNlOTE3NmZmMzdfNTQ5NzU1ODEzOTIz_2f7ccd2e-f10a-4531-9d18-a99beac453d8"
      unitRef="usdPerShare">1.20</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:DividendsCommonStockCash
      contextRef="i132c5961f1cd4de1b11a825f82f2a62a_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTYtNy0xLTEtMTAwMDAy_e5e7e40b-90cb-491b-8c30-9b286db4697f"
      unitRef="usd">35640000</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTYtMTUtMS0xLTEwMDAwMg_fdf23af7-d7cd-43d6-aa25-22847fe9667d"
      unitRef="usd">35640000</us-gaap:DividendsCommonStockCash>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
      contextRef="i8436bb8cb5154f6db94f80cd2c2dd32f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTgtMTMtMS0xLTEwMzA5OA_6403eb85-c47e-460a-a78c-4ae7927104f2"
      unitRef="usd">8536000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTgtMTUtMS0xLTEwMzA5OA_002fee60-e57e-4c38-96d3-4b5ed8ef20bf"
      unitRef="usd">8536000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax>
    <us-gaap:CommonStockSharesIssued
      contextRef="i7c971ca37f114e89bbfec6637ff4eec3_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTgtMS0xLTEtMTAwMDAy_0b26caf7-7374-4158-894e-1e020afb78ea"
      unitRef="shares">33271659</us-gaap:CommonStockSharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="i7c971ca37f114e89bbfec6637ff4eec3_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTgtMy0xLTEtMTAwMDAy_51f4fedd-fd90-4cac-bd78-f78a09ecbbdb"
      unitRef="usd">333000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i3ac93e97ac7648b1bb0460c9d9551edd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTgtNS0xLTEtMTAwMDAy_b3ebb6cf-8561-4a10-8c18-78cf23adde6f"
      unitRef="usd">211430000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ibc38b7b26e1547bf91f176fc1e65606d_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTgtNy0xLTEtMTAwMDAy_12b2e74b-e68a-4be0-a75e-0a1eb37cac68"
      unitRef="usd">352543000</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockCommonShares
      contextRef="i48f9cc975cf6472593f2b9513fe3110e_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTgtOS0xLTEtMTAwMDAy_b759f1fc-a3f9-4e55-b58f-887847db7f95"
      unitRef="shares">3565258</us-gaap:TreasuryStockCommonShares>
    <us-gaap:TreasuryStockCommonValue
      contextRef="i48f9cc975cf6472593f2b9513fe3110e_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTgtMTEtMS0xLTEwMDAwMg_cfb511e4-4ba6-4021-9e79-8aac78de6f5e"
      unitRef="usd">147239000</us-gaap:TreasuryStockCommonValue>
    <us-gaap:StockholdersEquity
      contextRef="i14d567bc707548e88cc0cc3e66307316_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTgtMTMtMS0xLTEwMDAwMg_ad3bef5a-38b7-442b-a152-2532965fa1a9"
      unitRef="usd">-227000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTgtMTUtMS0xLTEwMDAwMg_d60c49cb-9fc3-4274-ba96-7863983029a7"
      unitRef="usd">416840000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="i0d45628d365d4f14a2de850269a85597_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTktNy0xLTEtMTAwMDAy_f85814ab-2fa2-4866-bf16-f4083882ed04"
      unitRef="usd">223428000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMTktMTUtMS0xLTEwMDAwMg_2c94d5af-ac3b-4bed-a803-5332fa2ad4dd"
      unitRef="usd">223428000</us-gaap:NetIncomeLoss>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationGross
      contextRef="ia44b3bee1f934650ad552005b5f83f05_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjEtMS0xLTEtMTAwMDAy_c0d91dbf-b170-4668-97a5-6786ef344691"
      unitRef="shares">112389</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationGross>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross
      contextRef="ia44b3bee1f934650ad552005b5f83f05_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjEtMy0xLTEtMTAwMDAy_944d755d-34ec-4ae5-853c-e57e5b0d81fd"
      unitRef="usd">1000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross
      contextRef="i16676806e932479e97a656c76df77112_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjEtNS0xLTEtMTAwMDAy_7794f575-2020-43d1-a635-61bff262cf85"
      unitRef="usd">-1000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjEtMTUtMS0xLTEwMDAwMg_0889ddd7-12b3-4c11-acb8-6b89c7c9a443"
      unitRef="usd">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationForfeited
      contextRef="i0ddc26109e40483889e87ce66d92f8ec_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjItOS0xLTEtMTAwMDAy_7353af3d-1587-47a4-882a-0c9b0b6203d1"
      unitRef="shares">55183</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationForfeited>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationForfeited
      contextRef="i0ddc26109e40483889e87ce66d92f8ec_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjItMTEtMS0xLTEwMDAwMg_47442efb-b9aa-49a5-9c95-4bb3888b698d"
      unitRef="usd">4522000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationForfeited>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationForfeited
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjItMTUtMS0xLTEwMDAwMg_ef77bf62-693f-4933-a031-13ef7a73b3e0"
      unitRef="usd">4522000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationForfeited>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i16676806e932479e97a656c76df77112_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjMtNS0xLTEtMTAwMDAy_dc9ac385-00e5-4bbb-a5c8-e0aef9824c25"
      unitRef="usd">12851000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjMtMTUtMS0xLTEwMDAwMg_faa06a5b-0fe1-4901-97f0-a34fcc3c4d68"
      unitRef="usd">12851000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="ia44b3bee1f934650ad552005b5f83f05_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjQtMS0xLTEtMTAwMDAy_a4b502c8-cdb3-4689-8d96-f4fe69da41c8"
      unitRef="shares">6305</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="i16676806e932479e97a656c76df77112_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjQtNS0xLTEtMTAwMDAy_32901b7f-5a05-49b8-b588-0806ca932a72"
      unitRef="usd">547000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjQtMTUtMS0xLTEwMDAwMg_9ed22f2f-0492-4927-976f-c299a5ad5370"
      unitRef="usd">547000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures
      contextRef="ia44b3bee1f934650ad552005b5f83f05_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjgtMS0xLTEtMTEwNDM1_32c41de0-a3ec-47c1-a0a0-c58f7c4ef89b"
      unitRef="shares">39204</us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
      contextRef="i16676806e932479e97a656c76df77112_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjgtNS0xLTEtMTEwNDM1_bf2c6bac-4130-473a-96be-eeace1ab58fc"
      unitRef="usd">4000000</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjgtMTUtMS0xLTExMDQzNQ_8445760d-0557-4dd1-bce3-2ab143497fb2"
      unitRef="usd">4000000</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjUtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246OTAwNTg4MzY3ZDgzNDk5MmI0MTg4ZjQzOGEzZGRhMzRfMjQ_31c01864-5624-4a7d-97eb-e5d2d3bc21a6"
      unitRef="usdPerShare">2.16</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:DividendsCommonStockCash
      contextRef="i0d45628d365d4f14a2de850269a85597_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjUtNy0xLTEtMTAwMDAy_d497332a-e100-463e-b587-160c295fa1ba"
      unitRef="usd">62876000</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjUtMTUtMS0xLTEwMDAwMg_b600e807-be79-416a-83f9-79e6d5eb97a2"
      unitRef="usd">62876000</us-gaap:DividendsCommonStockCash>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="i0ddc26109e40483889e87ce66d92f8ec_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjYtOS0xLTEtMTAwMDAy_0f94d9f7-a402-4602-800b-00ef6b219d63"
      unitRef="shares">1502634</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="i0ddc26109e40483889e87ce66d92f8ec_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjYtMTEtMS0xLTEwMDAwMg_f7972d5a-3865-4dcd-b532-06863173deab"
      unitRef="usd">137556000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjYtMTUtMS0xLTEwMDAwMg_aea27a81-a151-4176-97ca-83424045f938"
      unitRef="usd">137556000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
      contextRef="i3a6b9a20e4da4a9390822a15ead99b52_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjctMTMtMS0xLTEwMDAwMg_d93db7a3-1f5f-4b08-a7dc-e8c6e1c8a72a"
      unitRef="usd">40787000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjctMTUtMS0xLTEwMDAwMg_83d01ef1-6e72-40cf-a2f2-e64df5a79ea9"
      unitRef="usd">40787000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax>
    <us-gaap:CommonStockSharesIssued
      contextRef="i4f8822b909a74993b4e9610fa2d43554_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjgtMS0xLTEtMTAwMDAy_011db0c8-d741-4a38-bf30-425fafb4088b"
      unitRef="shares">33429557</us-gaap:CommonStockSharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="i4f8822b909a74993b4e9610fa2d43554_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjgtMy0xLTEtMTAwMDAy_b0a2df4e-987a-4e6c-b8d0-41ebaf97e5b0"
      unitRef="usd">334000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="if0ab2703906c47e7a74df08dece46aa5_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjgtNS0xLTEtMTAwMDAy_e7c4434b-1c5e-4bfb-953b-f8cbcdbce896"
      unitRef="usd">228827000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="icf5f552de5ed49bd835bb72a19a828a4_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjgtNy0xLTEtMTAwMDAy_1d7cd69d-9f71-42ce-9b2e-9329b7da246d"
      unitRef="usd">513095000</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockCommonShares
      contextRef="i07aff75a11ce4da89c613ba6c483bb6d_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjgtOS0xLTEtMTAwMDAy_2d30e249-dadd-46cd-9bce-c6aad71bf290"
      unitRef="shares">5123075</us-gaap:TreasuryStockCommonShares>
    <us-gaap:TreasuryStockCommonValue
      contextRef="i07aff75a11ce4da89c613ba6c483bb6d_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjgtMTEtMS0xLTEwMDAwMg_c81c0bc5-84ae-448b-b625-8d4c220b6666"
      unitRef="usd">289317000</us-gaap:TreasuryStockCommonValue>
    <us-gaap:StockholdersEquity
      contextRef="i6c6f814c29be4e629a0656476f899878_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjgtMTMtMS0xLTEwMDAwMg_cb7fe1b8-5bd7-4573-90d8-ce2f09ee57d2"
      unitRef="usd">40560000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83Ni9mcmFnOmZiMDg1MDU2OTU1YjQxNGJhNzM0NDIwOGFmNDIzZjA3L3RhYmxlOmFjYTZmZjViMDk1ZDQzMThiYTdiNzhkM2E3YjY5NzI5L3RhYmxlcmFuZ2U6YWNhNmZmNWIwOTVkNDMxOGJhN2I3OGQzYTdiNjk3MjlfMjgtMTUtMS0xLTEwMDAwMg_294804db-63b2-4733-a0a7-f27981e8be25"
      unitRef="usd">493499000</us-gaap:StockholdersEquity>
    <us-gaap:ProfitLoss
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMy0xLTEtMS0xMDAwMDI_ec26baa6-1e74-4404-b422-5da7c9bdb26b"
      unitRef="usd">223428000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMy0zLTEtMS0xMDAwMDI_fb13144f-6c72-4f63-8e6b-91b4c9bf5db7"
      unitRef="usd">118763000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMy01LTEtMS0xMDAwMDI_fe6b8b8a-44f7-4d43-bcc1-f07fb34fcff5"
      unitRef="usd">97239000</us-gaap:ProfitLoss>
    <us-gaap:DepreciationAndAmortization
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNS0xLTEtMS0xMDAwMDI_e214054d-21bc-4cd9-ac86-038e9079563e"
      unitRef="usd">47283000</us-gaap:DepreciationAndAmortization>
    <us-gaap:DepreciationAndAmortization
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNS0zLTEtMS0xMDAwMDI_c23709a4-29ec-4b10-be5e-f58009029606"
      unitRef="usd">43562000</us-gaap:DepreciationAndAmortization>
    <us-gaap:DepreciationAndAmortization
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNS01LTEtMS0xMDAwMDI_1c1aec74-ade9-4dea-893b-55ccc10b246a"
      unitRef="usd">41339000</us-gaap:DepreciationAndAmortization>
    <us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNi0xLTEtMS0xMDAwMDI_76f526eb-9b3f-4cf0-becd-f20f971eb474"
      unitRef="usd">26631000</us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense>
    <us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNi0zLTEtMS0xMDAwMDI_c90e2c12-a796-47fd-9966-856c244d77c2"
      unitRef="usd">22258000</us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense>
    <us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNi01LTEtMS0xMDAwMDI_dbf6cd1c-de48-4a48-926c-017a37a1b604"
      unitRef="usd">18122000</us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNy0xLTEtMS0xMDAwMDI_58d0a8cb-0f74-47cd-bf60-3e782320c5a4"
      unitRef="usd">43763000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNy0zLTEtMS0xMDAwMDI_16751384-9751-41af-96ee-0578bff3e662"
      unitRef="usd">37079000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNy01LTEtMS0xMDAwMDI_112da20f-c291-4606-a1a1-ae6f041ce160"
      unitRef="usd">28535000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfFinancingCostsAndDiscounts
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfOC0xLTEtMS0xMDAwMDI_76ff985a-88f6-420d-a160-9f078683ca5b"
      unitRef="usd">1912000</us-gaap:AmortizationOfFinancingCostsAndDiscounts>
    <us-gaap:AmortizationOfFinancingCostsAndDiscounts
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfOC0zLTEtMS0xMDAwMDI_4d590de8-2009-4a6b-a593-0aa895e44df7"
      unitRef="usd">1354000</us-gaap:AmortizationOfFinancingCostsAndDiscounts>
    <us-gaap:AmortizationOfFinancingCostsAndDiscounts
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfOC01LTEtMS0xMDAwMDI_a41220d9-47db-4fe4-beea-4e7c706b23fb"
      unitRef="usd">1332000</us-gaap:AmortizationOfFinancingCostsAndDiscounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfOS0xLTEtMS0xMDAwMDI_12be6d2a-4a59-4b3b-9495-0da0a36593a0"
      unitRef="usd">4129000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfOS0zLTEtMS0xMDAwMDI_b241414b-0fc6-4afd-aaa4-a0f2b2335e71"
      unitRef="usd">2227000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfOS01LTEtMS0xMDAwMDI_e8cdb109-0ae8-4650-986f-6c407dd10fd9"
      unitRef="usd">4444000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:WriteOffOfDeferredDebtIssuanceCost
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTAtMS0xLTEtMTAwMDAy_604f5408-7404-415a-82f4-11e4d81884b9"
      unitRef="usd">0</us-gaap:WriteOffOfDeferredDebtIssuanceCost>
    <us-gaap:WriteOffOfDeferredDebtIssuanceCost
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTAtMy0xLTEtMTAwMDAy_9ed8eda1-88fd-4269-a38d-58a8512f8fd6"
      unitRef="usd">1767000</us-gaap:WriteOffOfDeferredDebtIssuanceCost>
    <us-gaap:WriteOffOfDeferredDebtIssuanceCost
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTAtNS0xLTEtMTAwMDAy_d7c2efa6-23ff-4229-b8b6-731e3901814c"
      unitRef="usd">0</us-gaap:WriteOffOfDeferredDebtIssuanceCost>
    <us-gaap:GainLossOnDispositionOfAssets
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTEtMS0xLTEtMTAwMDAy_c4fffc1a-ea23-48eb-97b9-6172d4372423"
      unitRef="usd">1419000</us-gaap:GainLossOnDispositionOfAssets>
    <us-gaap:GainLossOnDispositionOfAssets
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTEtMy0xLTEtMTAwMDAy_e6f30257-0d8a-45d6-968a-9691de792347"
      unitRef="usd">1840000</us-gaap:GainLossOnDispositionOfAssets>
    <us-gaap:GainLossOnDispositionOfAssets
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTEtNS0xLTEtMTAwMDAy_4c78ba4d-b070-4588-9242-f3fd5f2abcbe"
      unitRef="usd">786000</us-gaap:GainLossOnDispositionOfAssets>
    <us-gaap:ShareBasedCompensation
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTItMS0xLTEtMTAwMDAy_4eb9d60b-cec3-4516-8d16-2609e6815f8b"
      unitRef="usd">13816000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTItMy0xLTEtMTAwMDAy_6172ada7-d0c2-40e3-96fd-c0765c4f4ba2"
      unitRef="usd">13752000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTItNS0xLTEtMTAwMDAy_082dff87-b852-4786-9f10-b09848ed9161"
      unitRef="usd">10826000</us-gaap:ShareBasedCompensation>
    <us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTMtMS0xLTEtMTA4OTQw_0f1d59e5-42fc-43e6-bfb8-0c09a92be584"
      unitRef="usd">-16109000</us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1>
    <us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTMtMy0xLTEtMTA4OTQw_9b30864f-b1fc-4ab1-ab13-abd3284c7352"
      unitRef="usd">-1035000</us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1>
    <us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTMtNS0xLTEtMTA4OTQw_b1be06d4-5d4f-42ab-9694-37ec8e34a70e"
      unitRef="usd">-188000</us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1>
    <us-gaap:DeferredIncomeTaxesAndTaxCredits
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTMtMS0xLTEtMTAwMDAy_a0821350-5f08-405d-a492-911bf78424d4"
      unitRef="usd">7066000</us-gaap:DeferredIncomeTaxesAndTaxCredits>
    <us-gaap:DeferredIncomeTaxesAndTaxCredits
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTMtMy0xLTEtMTAwMDAy_1aa80bc5-9eaf-412a-8107-7cb6bc35a8b8"
      unitRef="usd">-438000</us-gaap:DeferredIncomeTaxesAndTaxCredits>
    <us-gaap:DeferredIncomeTaxesAndTaxCredits
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTMtNS0xLTEtMTAwMDAy_088521db-7ee9-4c49-9a01-97bd4f5c3ca7"
      unitRef="usd">-8475000</us-gaap:DeferredIncomeTaxesAndTaxCredits>
    <us-gaap:OtherNoncashIncomeExpense
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTQtMS0xLTEtMTAwMDAy_825f69e3-1f31-4cfb-8e93-c9c5850ad89d"
      unitRef="usd">91000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:OtherNoncashIncomeExpense
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTQtMy0xLTEtMTAwMDAy_ff20f5a3-f579-4c9f-ae4c-a924b3725817"
      unitRef="usd">-3223000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:OtherNoncashIncomeExpense
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTQtNS0xLTEtMTAwMDAy_612df85c-c039-450d-aa97-38d847774ac0"
      unitRef="usd">-1326000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTYtMS0xLTEtMTAwMDAy_56f43858-2d30-464d-8ca2-3f740d9202d5"
      unitRef="usd">76486000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTYtMy0xLTEtMTAwMDAy_20e93914-4516-4173-a3db-9b9a712ac31f"
      unitRef="usd">16775000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTYtNS0xLTEtMTAwMDAy_aff3a257-ea7e-423a-9423-a96af579f855"
      unitRef="usd">10489000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTctMS0xLTEtMTAwMDAy_80dd0d14-bc47-45ac-b345-dafbee355c04"
      unitRef="usd">16495000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTctMy0xLTEtMTAwMDAy_b7e0d666-66e8-40f9-880b-7ea3edde64b1"
      unitRef="usd">54003000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTctNS0xLTEtMTAwMDAy_f0ba2f7d-b9f8-428b-96b2-93f9b72e7598"
      unitRef="usd">-187000</us-gaap:IncreaseDecreaseInInventories>
    <ibp:ProceedsFromTerminationOfDerivativeInstruments
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTgtMS0xLTEtMTA3NTc4_f1388154-1ccb-4ac7-aaf2-28dcc397fb76"
      unitRef="usd">25462000</ibp:ProceedsFromTerminationOfDerivativeInstruments>
    <ibp:ProceedsFromTerminationOfDerivativeInstruments
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTgtMy0xLTEtMTA3NTc4_523c1f0e-18d4-4290-9c2a-2c5e917f2180"
      unitRef="usd">0</ibp:ProceedsFromTerminationOfDerivativeInstruments>
    <ibp:ProceedsFromTerminationOfDerivativeInstruments
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTgtNS0xLTEtMTA3NTc4_f7dab058-4c80-4887-a7a0-1e0afa5bf4f9"
      unitRef="usd">0</ibp:ProceedsFromTerminationOfDerivativeInstruments>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTgtMS0xLTEtMTAwMDAy_e30f2cbb-2e56-4793-8b63-85fe9e95037e"
      unitRef="usd">2586000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTgtMy0xLTEtMTAwMDAy_afaf9b21-60b1-468f-abff-28bbd97fec7a"
      unitRef="usd">19885000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTgtNS0xLTEtMTAwMDAy_f2ed0e43-7482-4661-b429-1ae0cd2685a5"
      unitRef="usd">870000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTktMS0xLTEtMTAwMDAy_9a6362bf-4731-49b5-8002-612710857e01"
      unitRef="usd">9623000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTktMy0xLTEtMTAwMDAy_f0a39ece-8623-4965-8ec1-7756d09074b6"
      unitRef="usd">26424000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMTktNS0xLTEtMTAwMDAy_8e152f24-a202-413a-ba8f-504d71905c19"
      unitRef="usd">-203000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInIncomeTaxes
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjAtMS0xLTEtMTAwMDAy_7d8a0608-314e-4a4a-9995-b4dd6aba17b2"
      unitRef="usd">3207000</us-gaap:IncreaseDecreaseInIncomeTaxes>
    <us-gaap:IncreaseDecreaseInIncomeTaxes
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjAtMy0xLTEtMTAwMDAy_82185f44-2609-4fa4-95f7-0971a2494e3b"
      unitRef="usd">-4403000</us-gaap:IncreaseDecreaseInIncomeTaxes>
    <us-gaap:IncreaseDecreaseInIncomeTaxes
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjAtNS0xLTEtMTAwMDAy_c4c70a47-7eb9-41d7-887d-18991d517bec"
      unitRef="usd">4296000</us-gaap:IncreaseDecreaseInIncomeTaxes>
    <us-gaap:IncreaseDecreaseInOtherOperatingLiabilities
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjEtMS0xLTEtMTAwMDAy_41d35bce-f82f-4556-bc86-1a78ec5ec79a"
      unitRef="usd">-15230000</us-gaap:IncreaseDecreaseInOtherOperatingLiabilities>
    <us-gaap:IncreaseDecreaseInOtherOperatingLiabilities
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjEtMy0xLTEtMTAwMDAy_361ba489-c32f-4dc2-a80f-8bd20c0fb124"
      unitRef="usd">-33716000</us-gaap:IncreaseDecreaseInOtherOperatingLiabilities>
    <us-gaap:IncreaseDecreaseInOtherOperatingLiabilities
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjEtNS0xLTEtMTAwMDAy_83030aea-b673-4b40-b835-b8fabe33fdd5"
      unitRef="usd">-5846000</us-gaap:IncreaseDecreaseInOtherOperatingLiabilities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjItMS0xLTEtMTAwMDAy_6515d98e-0fae-4cd1-a72a-d94fccd5a4da"
      unitRef="usd">277904000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjItMy0xLTEtMTAwMDAy_80208deb-63bf-4856-8914-a2934cddbc0d"
      unitRef="usd">138314000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjItNS0xLTEtMTAwMDAy_2be81f38-603f-4a1b-87fc-922a2644b0ce"
      unitRef="usd">180789000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquireInvestments
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjQtMS0xLTEtMTAwMDAy_d13cc88a-813a-4d26-8377-61158ade3952"
      unitRef="usd">344388000</us-gaap:PaymentsToAcquireInvestments>
    <us-gaap:PaymentsToAcquireInvestments
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjQtMy0xLTEtMTAwMDAy_b11c55b3-ff76-4033-8db7-366e9fedb77c"
      unitRef="usd">0</us-gaap:PaymentsToAcquireInvestments>
    <us-gaap:PaymentsToAcquireInvestments
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjQtNS0xLTEtMTAwMDAy_1dd75599-34f7-4303-b3f5-ee0061e18cd3"
      unitRef="usd">776000</us-gaap:PaymentsToAcquireInvestments>
    <us-gaap:ProceedsFromSaleOfShortTermInvestments
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjUtMS0xLTEtMTAwMDAy_44c02844-6a96-4c4e-af49-cbcc868e8f90"
      unitRef="usd">345000000</us-gaap:ProceedsFromSaleOfShortTermInvestments>
    <us-gaap:ProceedsFromSaleOfShortTermInvestments
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjUtMy0xLTEtMTAwMDAy_47bd7e4d-bf22-4767-87f2-c8fa7d8e093a"
      unitRef="usd">0</us-gaap:ProceedsFromSaleOfShortTermInvestments>
    <us-gaap:ProceedsFromSaleOfShortTermInvestments
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjUtNS0xLTEtMTAwMDAy_75389ef3-34a1-4152-bc58-c6d5cbcfaa06"
      unitRef="usd">38693000</us-gaap:ProceedsFromSaleOfShortTermInvestments>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjYtMS0xLTEtMTAwMDAy_07c92a7b-c142-41e5-a95c-47a06ab1aa5f"
      unitRef="usd">45646000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjYtMy0xLTEtMTAwMDAy_6445be80-76fd-4bc9-91ea-270c9f03ffc4"
      unitRef="usd">36979000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjYtNS0xLTEtMTAwMDAy_0163bdd7-463b-44c2-b49f-793641b0d6a6"
      unitRef="usd">33587000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:CashAcquiredFromAcquisition
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjctMC0xLTEtMTAwMDAyL3RleHRyZWdpb246ODM2NzAyNDVjYzRjNDE3ZjhiZWM2NmM5NWJkMmYzY2NfNTY_c1463fdf-38c7-461c-9dc8-71c617dfef50"
      unitRef="usd">523000</us-gaap:CashAcquiredFromAcquisition>
    <us-gaap:CashAcquiredFromAcquisition
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjctMC0xLTEtMTAwMDAyL3RleHRyZWdpb246ODM2NzAyNDVjYzRjNDE3ZjhiZWM2NmM5NWJkMmYzY2NfNjA_39872c3d-7da3-4e0d-857a-442b47bbcb3e"
      unitRef="usd">1707000</us-gaap:CashAcquiredFromAcquisition>
    <us-gaap:CashAcquiredFromAcquisition
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjctMC0xLTEtMTAwMDAyL3RleHRyZWdpb246ODM2NzAyNDVjYzRjNDE3ZjhiZWM2NmM5NWJkMmYzY2NfNjc_d8fc9795-fdc6-401b-8927-bb039ce4693b"
      unitRef="usd">0</us-gaap:CashAcquiredFromAcquisition>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjctMS0xLTEtMTAwMDAy_6bff067f-4bc3-4302-8e3d-f7f462091558"
      unitRef="usd">113536000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjctMy0xLTEtMTAwMDAy_5ccb4bb1-f4f3-4581-a2d6-dedd77c2bc1c"
      unitRef="usd">241308000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjctNS0xLTEtMTAwMDAy_e5d5a996-b7b0-4e4f-a9f0-8d21d7189a9b"
      unitRef="usd">76446000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjgtMS0xLTEtMTAwMDAy_c4fcee47-e313-44bc-aae3-deeb3288dc29"
      unitRef="usd">1958000</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjgtMy0xLTEtMTAwMDAy_76b0fb24-12ab-4000-adc6-aa8256dd8e49"
      unitRef="usd">2694000</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjgtNS0xLTEtMTAwMDAy_9e9fed0f-6864-4fa9-b2a5-e627dcd74e2e"
      unitRef="usd">1187000</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
    <us-gaap:PaymentsForProceedsFromOtherInvestingActivities
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjktMS0xLTEtMTAwMDAy_0981dbe0-33c3-45ff-a8f8-3add147acf64"
      unitRef="usd">2057000</us-gaap:PaymentsForProceedsFromOtherInvestingActivities>
    <us-gaap:PaymentsForProceedsFromOtherInvestingActivities
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjktMy0xLTEtMTAwMDAy_58f9892b-d263-4127-91d1-92044bc9a412"
      unitRef="usd">2846000</us-gaap:PaymentsForProceedsFromOtherInvestingActivities>
    <us-gaap:PaymentsForProceedsFromOtherInvestingActivities
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMjktNS0xLTEtMTAwMDAy_03c854f7-4914-4c72-9a16-697bec5fa54c"
      unitRef="usd">6865000</us-gaap:PaymentsForProceedsFromOtherInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzAtMS0xLTEtMTAwMDAy_1ed28bcb-d8f2-42b3-b458-fbb5b7a64056"
      unitRef="usd">-158669000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzAtMy0xLTEtMTAwMDAy_7eb72ddb-77f6-47d0-98b6-e93f4ba9706a"
      unitRef="usd">-278439000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzAtNS0xLTEtMTAwMDAy_8b0a4067-4482-480f-a9c3-bc3d1fb667d3"
      unitRef="usd">-77794000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:ProceedsFromIssuanceOfMediumTermNotes
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzMtMS0xLTEtMTAwMDAy_2571aae8-e623-42de-9a01-b5ea1b51d488"
      unitRef="usd">0</us-gaap:ProceedsFromIssuanceOfMediumTermNotes>
    <us-gaap:ProceedsFromIssuanceOfMediumTermNotes
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzMtMy0xLTEtMTAwMDAy_61b00b19-fffe-4a5e-a340-d1185d731281"
      unitRef="usd">500000000</us-gaap:ProceedsFromIssuanceOfMediumTermNotes>
    <us-gaap:ProceedsFromIssuanceOfMediumTermNotes
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzMtNS0xLTEtMTAwMDAy_417012be-077c-4924-bd9c-d268fed64d83"
      unitRef="usd">0</us-gaap:ProceedsFromIssuanceOfMediumTermNotes>
    <us-gaap:RepaymentsOfMediumTermNotes
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzQtMS0xLTEtMTAwMDAy_26c2e10d-eb3f-489f-9c2c-ce5769ea03c5"
      unitRef="usd">5000000</us-gaap:RepaymentsOfMediumTermNotes>
    <us-gaap:RepaymentsOfMediumTermNotes
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzQtMy0xLTEtMTAwMDAy_4ef2a101-c00e-46b8-879d-9a2e3a22ab81"
      unitRef="usd">200000000</us-gaap:RepaymentsOfMediumTermNotes>
    <us-gaap:RepaymentsOfMediumTermNotes
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzQtNS0xLTEtMTAwMDAy_6475006f-d1d2-437d-8b09-06c99b185686"
      unitRef="usd">0</us-gaap:RepaymentsOfMediumTermNotes>
    <us-gaap:ProceedsFromNotesPayable
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzUtMS0xLTEtMTAwMDAy_30324378-a5d3-498c-9e64-855466436c8f"
      unitRef="usd">30940000</us-gaap:ProceedsFromNotesPayable>
    <us-gaap:ProceedsFromNotesPayable
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzUtMy0xLTEtMTAwMDAy_737c8ac1-99b9-4ae0-a9f9-ad8c66cb024d"
      unitRef="usd">27834000</us-gaap:ProceedsFromNotesPayable>
    <us-gaap:ProceedsFromNotesPayable
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzUtNS0xLTEtMTAwMDAy_44accd08-5b03-44f3-960d-3ff77c98cf04"
      unitRef="usd">21290000</us-gaap:ProceedsFromNotesPayable>
    <us-gaap:PaymentsOfDebtIssuanceCosts
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzYtMS0xLTEtMTAwMDAy_f7e7f48c-1218-498c-8f44-01f61ed0ee8f"
      unitRef="usd">655000</us-gaap:PaymentsOfDebtIssuanceCosts>
    <us-gaap:PaymentsOfDebtIssuanceCosts
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzYtMy0xLTEtMTAwMDAy_884055d3-0e92-487f-995c-0b7b150d3d3d"
      unitRef="usd">7520000</us-gaap:PaymentsOfDebtIssuanceCosts>
    <us-gaap:PaymentsOfDebtIssuanceCosts
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzYtNS0xLTEtMTAwMDAy_5817f533-49b6-41be-88fa-b6b3d058d126"
      unitRef="usd">157000</us-gaap:PaymentsOfDebtIssuanceCosts>
    <us-gaap:RepaymentsOfOtherLongTermDebt
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzctMS0xLTEtMTAwMDAy_39058c8b-7be3-4aaa-bfcd-8e230e30b150"
      unitRef="usd">30173000</us-gaap:RepaymentsOfOtherLongTermDebt>
    <us-gaap:RepaymentsOfOtherLongTermDebt
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzctMy0xLTEtMTAwMDAy_4bb8ee94-fddb-4559-9c6d-c2aa1a6f1d57"
      unitRef="usd">26301000</us-gaap:RepaymentsOfOtherLongTermDebt>
    <us-gaap:RepaymentsOfOtherLongTermDebt
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzctNS0xLTEtMTAwMDAy_03243d5d-461c-4dd7-9602-95a0977f228f"
      unitRef="usd">26685000</us-gaap:RepaymentsOfOtherLongTermDebt>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzktMS0xLTEtMTAwMDAy_9f9966da-72b4-49fc-99d8-5f7278b9b356"
      unitRef="usd">2306000</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzktMy0xLTEtMTAwMDAy_708d596a-0a2d-4f8b-b52e-cd3a04affdb0"
      unitRef="usd">2125000</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfMzktNS0xLTEtMTAwMDAy_45d511fd-64ef-4296-81e1-029812c4b63b"
      unitRef="usd">2632000</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:PaymentsOfMergerRelatedCostsFinancingActivities
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDAtMS0xLTEtMTAwMDAy_3d31fc2f-a155-4f02-ae54-d742f5608f0c"
      unitRef="usd">11150000</us-gaap:PaymentsOfMergerRelatedCostsFinancingActivities>
    <us-gaap:PaymentsOfMergerRelatedCostsFinancingActivities
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDAtMy0xLTEtMTAwMDAy_c1721d12-ff1e-4987-bf97-041ed27dd63f"
      unitRef="usd">8918000</us-gaap:PaymentsOfMergerRelatedCostsFinancingActivities>
    <us-gaap:PaymentsOfMergerRelatedCostsFinancingActivities
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDAtNS0xLTEtMTAwMDAy_420ecec2-58fe-4428-9ba3-7722ea856bb0"
      unitRef="usd">6283000</us-gaap:PaymentsOfMergerRelatedCostsFinancingActivities>
    <us-gaap:PaymentsOfDividends
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDEtMS0xLTEtMTAwMDAy_8a9b3fe0-d729-4ec5-9d02-80d20b36d530"
      unitRef="usd">62671000</us-gaap:PaymentsOfDividends>
    <us-gaap:PaymentsOfDividends
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDEtMy0xLTEtMTAwMDAy_e91b5b42-b5e0-47b0-ad3c-c47a60470169"
      unitRef="usd">35294000</us-gaap:PaymentsOfDividends>
    <us-gaap:PaymentsOfDividends
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDEtNS0xLTEtMTAwMDAy_cf801065-7e1b-4c3f-adf4-5f39d9f68963"
      unitRef="usd">0</us-gaap:PaymentsOfDividends>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDItMS0xLTEtMTAwMDAy_8889f9e3-3512-4e21-ac31-832d9dca0f96"
      unitRef="usd">137556000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDItMy0xLTEtMTAwMDAy_cf08270a-804c-4940-8927-8fd4f433add8"
      unitRef="usd">0</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDItNS0xLTEtMTAwMDAy_331a476d-51b7-4edd-b960-14eb1e91b786"
      unitRef="usd">33924000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <ibp:SurrenderOfCommonStockAwardsByEmployees
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDMtMS0xLTEtMTAwMDAy_55618df9-2dd3-4a8e-8849-b9e2734bacda"
      unitRef="usd">4522000</ibp:SurrenderOfCommonStockAwardsByEmployees>
    <ibp:SurrenderOfCommonStockAwardsByEmployees
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDMtMy0xLTEtMTAwMDAy_bda58933-a41f-42d9-a6aa-6cfdc68fd5c2"
      unitRef="usd">5586000</ibp:SurrenderOfCommonStockAwardsByEmployees>
    <ibp:SurrenderOfCommonStockAwardsByEmployees
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDMtNS0xLTEtMTAwMDAy_647a7437-4072-43b0-bcb2-5b617a752799"
      unitRef="usd">973000</ibp:SurrenderOfCommonStockAwardsByEmployees>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDQtMS0xLTEtMTAwMDAy_f9a8bc16-0d57-43ed-8132-feff790444a7"
      unitRef="usd">-223093000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDQtMy0xLTEtMTAwMDAy_cb3e2990-82a5-41fa-a607-a1487cfbb168"
      unitRef="usd">242090000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDQtNS0xLTEtMTAwMDAy_3c71ceff-f4b8-49f9-acd7-645277379ee1"
      unitRef="usd">-49364000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDUtMS0xLTEtMTAwMDAy_fb1e8b0c-b666-414f-b464-a66c9c6398e4"
      unitRef="usd">-103858000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDUtMy0xLTEtMTAwMDAy_cdfaf513-9c8e-4bce-8249-5218dd94970e"
      unitRef="usd">101965000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDUtNS0xLTEtMTAwMDAy_bed91685-e301-44a6-b7fc-c9b3435cae0a"
      unitRef="usd">53631000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDYtMS0xLTEtMTAwMDAy_f75b7c8e-da7d-48f5-8ea7-d4d5ddd47364"
      unitRef="usd">333485000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i61f3c1563a76427b8e6b9d432aa44d9a_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDYtMy0xLTEtMTAwMDAy_66c8e451-7d26-4a9b-af12-d665332d3f03"
      unitRef="usd">231520000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="iff4d4f6f690d4bce8ad0aafed6fdedd3_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDYtNS0xLTEtMTAwMDAy_17224540-692c-4f9e-a852-3e445ad8a1bc"
      unitRef="usd">177889000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDctMS0xLTEtMTAwMDAy_b8579a60-1082-4dfd-ad78-76b7497917c9"
      unitRef="usd">229627000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDctMy0xLTEtMTAwMDAy_124e4e2f-3281-4dfe-8f25-c0d7556bc751"
      unitRef="usd">333485000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i61f3c1563a76427b8e6b9d432aa44d9a_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNDctNS0xLTEtMTAwMDAy_e4891163-9caa-49a8-b15b-f28971ceb820"
      unitRef="usd">231520000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:InterestPaidNet
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTAtMS0xLTEtMTAwMDAy_51ba0f3a-34df-41ae-9d40-6d3c9b242f9e"
      unitRef="usd">40278000</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTAtMy0xLTEtMTAwMDAy_532afb57-23e5-4186-a6c7-9bdc5aa4ea7c"
      unitRef="usd">25976000</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTAtNS0xLTEtMTAwMDAy_05d0fb33-bf47-41ef-9986-afee85da3262"
      unitRef="usd">26324000</us-gaap:InterestPaidNet>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTEtMS0xLTEtMTAwMDAy_587252e0-6d87-4f30-b34e-228f217f4934"
      unitRef="usd">69076000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTEtMy0xLTEtMTAwMDAy_629195b1-eb2e-4d42-8fe7-9aec3a8cdf05"
      unitRef="usd">39241000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTEtNS0xLTEtMTAwMDAy_eb263a4d-4dd1-4b25-b898-b323a9c3d42f"
      unitRef="usd">37072000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTMtMS0xLTEtMTAwMDAy_55b86f5c-6e91-49c0-87ef-cc6c94836055"
      unitRef="usd">32677000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTMtMy0xLTEtMTAwMDAy_255ec433-b8a2-4473-96d6-c54514bb5c45"
      unitRef="usd">38084000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTMtNS0xLTEtMTAwMDAy_3854ebb5-fd5e-4a75-baac-f36edf5630ac"
      unitRef="usd">26001000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <ibp:NoncashActivitiesReleaseOfIndemnificationOfAcquisitionRelatedDebt
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTQtMS0xLTEtMTAwMDAy_ff21a849-dcf3-4e1a-960d-4ed9bf1c6384"
      unitRef="usd">980000</ibp:NoncashActivitiesReleaseOfIndemnificationOfAcquisitionRelatedDebt>
    <ibp:NoncashActivitiesReleaseOfIndemnificationOfAcquisitionRelatedDebt
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTQtMy0xLTEtMTAwMDAy_e1e17974-3589-41e1-abd7-e4041d432da0"
      unitRef="usd">2036000</ibp:NoncashActivitiesReleaseOfIndemnificationOfAcquisitionRelatedDebt>
    <ibp:NoncashActivitiesReleaseOfIndemnificationOfAcquisitionRelatedDebt
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTQtNS0xLTEtMTAwMDAy_27e39a1f-85e8-4e18-83d8-83925db4cbba"
      unitRef="usd">0</ibp:NoncashActivitiesReleaseOfIndemnificationOfAcquisitionRelatedDebt>
    <ibp:FinanceLeaseObligationsIncurred
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTYtMS0xLTEtMTAwMDAy_f2384afb-5a48-4956-8125-1d8b9fc15db2"
      unitRef="usd">6241000</ibp:FinanceLeaseObligationsIncurred>
    <ibp:FinanceLeaseObligationsIncurred
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTYtMy0xLTEtMTAwMDAy_6e7e5900-da27-43b0-9b3b-d82f0267644d"
      unitRef="usd">2735000</ibp:FinanceLeaseObligationsIncurred>
    <ibp:FinanceLeaseObligationsIncurred
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTYtNS0xLTEtMTAwMDAy_2b5892dd-3c65-46e5-bfe4-c224b6835340"
      unitRef="usd">1000000</ibp:FinanceLeaseObligationsIncurred>
    <us-gaap:BusinessCombinationConsiderationTransferredLiabilitiesIncurred
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTctMS0xLTEtMTAwMDAy_f8e51e0d-73cd-4fc1-81a2-03924017a560"
      unitRef="usd">26978000</us-gaap:BusinessCombinationConsiderationTransferredLiabilitiesIncurred>
    <us-gaap:BusinessCombinationConsiderationTransferredLiabilitiesIncurred
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTctMy0xLTEtMTAwMDAy_e811db30-b2b2-4bf8-841c-031cb9d13df9"
      unitRef="usd">29169000</us-gaap:BusinessCombinationConsiderationTransferredLiabilitiesIncurred>
    <us-gaap:BusinessCombinationConsiderationTransferredLiabilitiesIncurred
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTctNS0xLTEtMTAwMDAy_a78060e4-f696-40df-bfba-6e6548459a5f"
      unitRef="usd">14086000</us-gaap:BusinessCombinationConsiderationTransferredLiabilitiesIncurred>
    <us-gaap:CapitalExpendituresIncurredButNotYetPaid
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTgtMS0xLTEtMTAwMDAy_73c80661-a561-423f-b4dc-f5a84f9be927"
      unitRef="usd">935000</us-gaap:CapitalExpendituresIncurredButNotYetPaid>
    <us-gaap:CapitalExpendituresIncurredButNotYetPaid
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTgtMy0xLTEtMTAwMDAy_e34fbbdb-46cb-4ab9-874e-172725a8d05e"
      unitRef="usd">441000</us-gaap:CapitalExpendituresIncurredButNotYetPaid>
    <us-gaap:CapitalExpendituresIncurredButNotYetPaid
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF83OS9mcmFnOmUyMTI4N2M0ZDcwYjQzZjZiYzM1MmJlOTg1NGI0MDUyL3RhYmxlOjQ1N2QzNDQ5Y2NmMjQ0Yzg5MjIyMDQ1OWRmYjZiYjdhL3RhYmxlcmFuZ2U6NDU3ZDM0NDljY2YyNDRjODkyMjIwNDU5ZGZiNmJiN2FfNTgtNS0xLTEtMTAwMDAy_b464952b-34d3-42e8-be83-f6f2fe6c8cca"
      unitRef="usd">1013000</us-gaap:CapitalExpendituresIncurredButNotYetPaid>
    <us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84NS9mcmFnOjVlM2Y4OGE1YWUwOTRmOWFhMWQxM2VmZDJhM2NkZDBlL3RleHRyZWdpb246NWUzZjg4YTVhZTA5NGY5YWExZDEzZWZkMmEzY2RkMGVfMTk2NA_550093c2-f001-4b64-8a19-52981791e677">ORGANIZATION&lt;div style="margin-top:7pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Installed Building Products (&#x201c;IBP&#x201d;), a Delaware corporation formed on October 28, 2011, and its wholly-owned subsidiaries (collectively referred to as the &#x201c;Company,&#x201d; and &#x201c;we,&#x201d; &#x201c;us&#x201d; and &#x201c;our&#x201d;) primarily install insulation, waterproofing, fire-stopping, fireproofing, garage doors, rain gutters, window blinds, shower doors, closet shelving and mirrors and other products for residential and commercial builders located in the continental United States. The Company operates in over 230 locations and its corporate office is located in Columbus, Ohio.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:7pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In the first quarter of 2022, we realigned our operating segments to reflect recent changes in our business. We have three operating segments consisting of our Installation, Manufacturing and Distribution operations. See Note 11, Information on Segments, for further information.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The vast majority of our sales originate from our one reportable segment, Installation. Substantially all of our Installation segment sales are derived from the service-based installation of various products in the residential new construction, repair and remodel and commercial construction end markets from our national network of branch locations. Each of our installation branches has the capacity to serve all of our end markets. See Note 3, Revenue Recognition, for information on our revenues by product and end market.&lt;/span&gt;&lt;/div&gt;</us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock>
    <ibp:NumberOfLocationsInOperation
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84NS9mcmFnOjVlM2Y4OGE1YWUwOTRmOWFhMWQxM2VmZDJhM2NkZDBlL3RleHRyZWdpb246NWUzZjg4YTVhZTA5NGY5YWExZDEzZWZkMmEzY2RkMGVfNTA4_bb2bd52f-9938-4241-be85-b7c1ef10356a"
      unitRef="location">230</ibp:NumberOfLocationsInOperation>
    <us-gaap:NumberOfOperatingSegments
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84NS9mcmFnOjVlM2Y4OGE1YWUwOTRmOWFhMWQxM2VmZDJhM2NkZDBlL3RleHRyZWdpb246NWUzZjg4YTVhZTA5NGY5YWExZDEzZWZkMmEzY2RkMGVfNDM5ODA0NjUxNTYyOA_d2018e3f-38f3-407d-a54e-2bf6f621ed5c"
      unitRef="segment">3</us-gaap:NumberOfOperatingSegments>
    <us-gaap:NumberOfReportableSegments
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84NS9mcmFnOjVlM2Y4OGE1YWUwOTRmOWFhMWQxM2VmZDJhM2NkZDBlL3RleHRyZWdpb246NWUzZjg4YTVhZTA5NGY5YWExZDEzZWZkMmEzY2RkMGVfMTY0OTI2NzQ0NjMyNw_46a3ce8d-edbc-4a5c-aff8-cf3d7c441290"
      unitRef="segment">1</us-gaap:NumberOfReportableSegments>
    <us-gaap:SignificantAccountingPoliciesTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMjM_585d8342-f9ae-4865-9182-01c68bc25b9f">SIGNIFICANT ACCOUNTING POLICIES&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Basis of Presentation and Principles of Consolidation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We prepare our consolidated financial statements in accordance with accounting principles generally accepted in the United States of America (&#x201c;U.S. GAAP&#x201d;). The accompanying consolidated financial statements include all of our wholly-owned subsidiaries. All intercompany accounts and transactions have been eliminated.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Reclassifications&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The change in reportable segments described in Note 1, Organization and Note 11, Information on Segments, requires certain prior year disclosures in Note 3, Revenue Recognition and Note 7, Goodwill and Intangibles to be recast to conform to the current year presentation. We expanded the presentation of our administrative operating expenses to separately present our gains on acquisition earnouts in the Consolidated Statements of Operation and Comprehensive Income in this Form 10-K. This expansion resulted in the presentation of $1.0&#160;million and $0.2&#160;million of gains on acquisition earnouts for the years ended December 31, 2021 and 2020, respectively, and a corresponding increase in administrative operating expenses as compared to the Form 10-K for the previous two years.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Use of Estimates&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Preparation of the consolidated financial statements in conformity with U.S. GAAP requires management to make estimates, judgements and assumptions that affect the reported amounts in the consolidated financial statements and accompanying notes. Management believes the accounting estimates are appropriate and reasonably determined; however, due to the inherent uncertainties in making these estimates, actual amounts could differ from such estimates.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Cash and Cash Equivalents&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:7pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We consider all highly-liquid investments purchased with original term to maturity of three months or less to be cash equivalents. Substantially all cash is held in banks providing FDIC coverage of $0.25 million per depositor.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Revenue and Cost Recognition&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our revenues are disaggregated between our Installation reportable segment and our Other category which includes our Manufacturing and Distribution operating segments. The reconciliation of the disaggregation of revenue is included in Note 11, Information on Segments. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Revenues for our Installation operating segment are derived primarily through contracts with customers whereby we install insulation and other complementary building products and are recognized when control of the promised goods or services is transferred to our customers, in an amount that reflects the consideration we expect to be entitled to in exchange for those goods or services. We account for a contract when it has approval and commitment from both parties, the rights of the parties are identified, payment terms are identified, the contract has commercial substance and collectability of consideration is probable. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We offer assurance-type warranties on certain of our installed products and services that do not represent a separate performance obligation and, as such, do not impact the timing or extent of revenue recognition.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;For contracts that are not complete at the reporting date, we recognize revenue over time utilizing a cost-to-cost input method as we believe this represents the best measure of when goods and services are transferred to the customer. When this method is used, we estimate the costs to complete individual contracts and record as revenue that portion of the total contract price that is considered complete based on the relationship of costs incurred to date to total anticipated costs. Under the cost-to-cost method, the use of estimated costs to complete each contract is a significant variable in the process of determining recognized revenue, requires judgment and can change throughout the duration of a contract due to contract modifications and other factors impacting job completion. The costs of earned revenue include all direct material and labor costs and those indirect costs related to contract performance, such as indirect labor, supplies, tools and repairs. Provisions for estimated losses on uncompleted contracts are made in the period in which such losses are determined.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our long-term contracts can be subject to modification to account for changes in contract specifications and requirements. We consider contract modifications to exist when the modification either creates new, or changes the existing, enforceable rights and obligations. Most of our contract modifications are for goods or services that are not distinct from the existing contract due to the significant integration service provided in the context of the contract and are accounted for as if they were part of that existing contract. The effect of a contract modification on the transaction price and our measure of progress for the performance obligation to which it relates, is recognized as an adjustment to revenue (either as an increase in or a reduction of revenue) on a cumulative catch-up basis.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Payment terms typically do not exceed 30 days for short-term contracts and typically do not exceed 60 days for long-term contracts with customers. All contracts are billed either contractually or as work is performed. Billing on our long-term contracts occurs primarily on a monthly basis throughout the contract period whereby we submit invoices for customer payment based on actual or estimated costs incurred during the billing period. On certain of our long-term contracts the customer may withhold payment on an invoice equal to a percentage of the invoice amount, which will be subsequently paid after satisfactory completion of each installation project. This amount is referred to as retainage and is common practice in the construction industry, as it allows for customers to ensure the quality of the service performed prior to full payment. Retainage receivables are classified as current or long-term assets based on the expected time to project completion. See "Accounts Receivable" below for further discussion of our retainage receivables.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Revenues for our Distribution and Manufacturing operating segments included in the Other category are accounted for on a point-in-time basis when the sale occurs, adjusted accordingly for any return provisions. Sales taxes are not included in revenue as we act as a conduit for collecting and remitting sales taxes to the appropriate government authorities. The point-in-time recognition is when we transfer the promised products to the customer and the customer obtains control of the products depending upon the agreed upon terms in the contract. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We generally expense all sales commissions and other incremental costs of obtaining a contract when incurred because the amortization period is usually one year or less. Sales commissions are recorded within selling expenses on the Consolidated Statements of Operations and Comprehensive Income.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We do not disclose the value of unsatisfied performance obligations for contracts with an original expected length of one year or less.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Derivative Instruments and Hedging Activities&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We record all derivatives on the balance sheet at fair value. The accounting for changes in the fair value of derivatives depends on the intended use of the derivative, whether we have elected to designate a derivative in a hedging relationship and apply hedge accounting and whether the hedging relationship has satisfied the criteria necessary to apply hedge accounting. Derivatives designated and qualifying as a hedge of the exposure to variability in expected future cash flows, or other types of forecasted transactions, are considered cash flow hedges. Hedge accounting generally provides for the matching of the timing of gain or loss recognition on the hedging instrument with the recognition of the earnings effect of the hedged forecasted transactions in a cash flow hedge. We may enter into derivative contracts that are intended to economically hedge certain of our risks, even though hedge accounting does not apply or we elect not to apply hedge accounting. See Note 12, Derivatives and Hedging Activities, for additional information on our accounting policy for derivative instruments and hedging activities.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Business Combinations&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The purchase price for business combinations is allocated to the estimated fair values of acquired tangible and intangible assets, including goodwill and assumed liabilities, where applicable. Additionally, we recognize customer relationships, trademarks and trade names, backlog and non-competition agreements as identifiable intangible assets. These assets are recorded at fair value as of the transaction date. The fair value of these intangibles is determined using either the income approach or the market approach using current industry information which involves significant unobservable inputs (Level 3 inputs). These inputs include projected sales, margin and tax rate. Contingent consideration is recorded at fair value at the acquisition date and any subsequent adjustments to these fair values would be recorded in earnings.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;At times, the total purchase price for a business combination could be less than the estimated fair values of acquired tangible and intangible assets. In these cases, we record a gain on bargain purchase within other expenses in the Consolidated Statements of Operations and Comprehensive Income rather than goodwill in accordance with U.S. GAAP.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Accounts Receivable&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We account for trade receivables based on amounts billed to customers. Past due receivables are determined based on contractual terms. We do not accrue interest on any of our trade receivables.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Retainage receivables represent the amount retained by our customers to ensure the quality of the installation and is received after satisfactory completion of each installation project. Management regularly reviews aging of retainage receivables and changes in payment trends and records an allowance when collection of amounts due are considered at risk. Amounts retained by project owners under construction contracts and included in accounts receivable were $49.8 million and $40.5 million as of December&#160;31, 2022 and 2021, respectively. In addition, as of December&#160;31, 2022 and 2021, $1.0 million and $0.5 million of long-term retainage receivables were recorded in other non-current assets, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accounts receivable are presented net of our allowance for credit losses. Credit losses are measured according to ASC 326, &#x201c;Financial Instruments &#x2013; Credit Losses: Measurement of Credit Losses on Financial Instruments.&#x201d; We consider multiple factors to estimate expected credit losses for financial instruments, including trade receivables, retainage receivables and contract assets (unbilled receivables). &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our expected loss allowance methodology for accounts receivable is developed using historical losses, current economic conditions and current credit quality. We perform ongoing evaluations of our existing and potential customer&#x2019;s creditworthiness. See Note 4, Credit Losses, for additional information.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Concentration of Credit Risk&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Credit risk is our risk of financial loss from the non-performance of a contractual obligation on the part of our counterparty. Such risk arises principally from our receivables from customers and cash and bank balances. Substantially all of our trade accounts receivable are from entities engaged in residential and commercial construction. We perform periodic credit evaluations of our customers&#x2019; financial condition. The general credit risk of our counterparties is not considered to be significant. In addition, no individual customer made up more than 3% of accounts receivable or 5% of net revenue for the years ended December&#160;31, 2022, 2021 and 2020.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Inventories&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Inventories consist of insulation, waterproofing materials, fireproofing and fire-stopping materials, garage doors, rain gutters, window blinds, shower doors, mirrors, closet shelving and other products. We value inventory at each balance sheet date to ensure that it is carried at the lower of cost or net realizable value with cost determined using the first-in, first-out (&#x201c;FIFO&#x201d;) method. Net realizable value is the estimated selling price in the ordinary course of business, less reasonably predictable cost of completion, disposal and transportation. As of December&#160;31, 2022 and 2021, substantially all inventory was finished goods. Inventory provisions are recorded to reduce inventory to the lower of cost or net realizable value for obsolete or slow moving inventory based on assumptions about future demand and marketability of products, the impact of new product introductions, inventory levels and turns, product spoilage, and specific identification of items such as product discontinuance, engineering/material changes, or regulatory-related changes.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Property and Equipment&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Property and equipment are stated at cost, less accumulated depreciation. We provide for depreciation and amortization of property and equipment using the straight-line method over the expected useful lives of the assets. Expected useful lives of property and equipment vary but generally are the shorter of lease life or five years for vehicles and leasehold improvements, &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTE2NTc_a977f052-cdfa-4287-b1c2-2c13ccbb2ec3"&gt;three&lt;/span&gt; to five years for furniture, fixtures and equipment and 30 years for buildings.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Major renewals and improvements are capitalized. Maintenance, repairs and minor renewals are expensed as incurred. When assets are retired or otherwise disposed of, the related cost and accumulated depreciation are removed from the accounts and any resulting gain or loss is recorded. These assets are regularly review for possible impairment if there are indicators that their carrying amounts are not recoverable.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Goodwill&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Goodwill results from business combinations and represents the excess of the purchase price over the fair value of acquired tangible assets and liabilities and identifiable intangible assets. Annually, on October 1, or if conditions indicate an earlier review is necessary, we perform our goodwill impairment testing to determine if it is more likely than not that the fair value of a reporting unit is less than its carrying amount. As described in Note 1, Organization and Note 11, Information on Segments, we realigned our operating segments in 2022 to reflect recent changes in our business. We have determined that our reporting units are at the operating segment level.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The estimate of a reporting unit&#x2019;s fair value is determined by weighting a discounted cash flow model and a market-related model using current industry information that involve significant unobservable inputs (Level 3 inputs). In determining the estimated future cash flow, we consider and apply certain estimates and judgments using our historical knowledge, external valuation experts, current market trends and other information. These estimates and judgements include current and projected future levels of income based on management&#x2019;s plans, business trends, prospects, market and economic conditions and market-participant considerations. An impairment charge is recognized for the amount by which the carrying value exceeds the reporting unit's fair value, not to exceed the total amount of goodwill allocated to each reporting unit. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Impairment of Other Intangible and Long-Lived Assets&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Other intangible assets consist of customer relationships, backlog, non-competition agreements and business trademarks and trade names. Amortization of finite lived intangible assets is recorded to reflect the pattern of economic benefits based on projected revenues over their respective estimated useful lives (customer relationships &#x2013; &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTM1NTU_ef0ebe6a-c7b3-48eb-8f8b-5ddf39ff0efb"&gt;eight&lt;/span&gt; to 15 years, backlog &#x2013; 12 to 36 months, non-competition agreements &#x2013; &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTM2MTQ_9876c3d1-52c9-4958-8348-18d296904de3"&gt;one&lt;/span&gt; to five years and business trademarks and trade names &#x2013; &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTM2NjU_f0c11354-8793-4523-b059-4ab1963f4cfb"&gt;two&lt;/span&gt; to 15 years). We do not have any indefinite-lived intangible assets other than goodwill.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We review long-lived assets and intangible assets whenever events or changes in circumstances indicate that the carrying value of an asset may not be recoverable. An impairment loss is recognized when estimated future cash flows expected to result from the use of an asset and its eventual disposition are less than its carrying amount. When impairment is identified, the carrying amount of the asset is reduced to its estimated fair value. Assets to be disposed of are recorded at the lower of net book value or fair net realizable value less cost to sell at the date management commits to a plan of disposal. There was no impairment loss for the years ended December&#160;31, 2022, 2021, and 2020.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Other Liabilities&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our workers&#x2019; compensation insurance program, for a significant portion of our business, is considered a high deductible program whereby we are responsible for the cost of claims under approximately $0.8 million. Our general liability insurance program is considered a high retention program whereby we are responsible for the cost of claims up to approximately $5.0 million, subject to an aggregate cap of $10.0 million. Our vehicle liability insurance program is considered a high deductible program whereby we are responsible for the cost of claims under approximately $1.0 million. In each case, if we do not pay these claims, our insurance carriers are required to make these payments to the claimants on our behalf. The liabilities represent our best estimate of our costs, using generally accepted actuarial reserving methods, of the ultimate obligations for reported claims plus those incurred but not reported for all claims incurred through December&#160;31, 2022 and 2021. We establish case reserves for reported claims using case-basis evaluation of the underlying claims data and we update as information becomes known. We regularly monitor the potential for changes in estimates, evaluate our insurance accruals and adjust our recorded provisions.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The assumptions underlying the ultimate costs of existing claim losses are subject to a high degree of unpredictability, which can affect the liability recorded for such claims. For example, variability in inflation rates of health care costs inherent in workers&#x2019; compensation claims can affect the ultimate costs. Similarly, changes in legal trends and interpretations, as well as a change in the nature and method of how claims are settled, can affect ultimate costs. Our estimates of liabilities incurred do not anticipate significant changes in historical trends for these variables and any changes could have a considerable effect on future claim costs and currently recorded liabilities.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We carry insurance for a number of risks, including, but not limited to, workers&#x2019; compensation, general liability, vehicle liability, property and our obligation for employee-related health care benefits. Liabilities relating to claims associated with these risks are estimated by considering historical claims experience, including frequency, severity, demographic factors and other actuarial assumptions. In estimating our liability for such claims, we periodically analyze our historical trends, including loss development, and apply appropriate loss development factors to the incurred costs associated with the claims with the assistance of external actuarial consultants. While we do not expect the amounts ultimately paid to differ significantly from our estimates, our reserves and corresponding expenses could be affected if future claim experience differs significantly from historical trends and actuarial assumptions.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Treasury Stock&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Repurchases of our common stock are recorded at cost and classified as Treasury Stock on our Consolidated Balance Sheets. As of December&#160;31, 2022, we have not re-issued any of our treasury stock, but may do so periodically. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Advertising Costs&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Advertising costs are generally expensed as incurred. Advertising expense was approximately $4.9 million, $4.6 million, and $3.9 million for the years ended December&#160;31, 2022 2021 and 2020, respectively. These costs are included in selling expense on the Consolidated Statements of Operations and Comprehensive Income.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Deferred Financing Costs&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Deferred financing costs and debt issuance costs combined, totaling $10.2 million and $11.4 million, net of accumulated amortization as of December&#160;31, 2022 and 2021, respectively, are amortized over the term of the related debt on a straight-line basis which approximates the effective interest method. The deferred financing costs are included in other non-current assets while the debt issuance costs are included in long-term debt on the Consolidated Balance Sheets as of December&#160;31, 2022 and 2021, respectively. The related amortization expense of these costs combined was $1.9 million, $1.4 million and $1.3 million and is included in interest expense, net on the Consolidated Statements of Operations and Comprehensive Income for the years ended December&#160;31, 2022, 2021 and 2020, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We wrote off $0.2 million in previously capitalized loan costs during the year ended December&#160;31, 2021. In addition, we expensed loan costs of approximately $1.6 million for the year ended December&#160;31, 2021 associated with our credit facilities because they did not meet the requirements for capitalization. We had no such write offs or expenses during the years ended December&#160;31, 2022 or 2020. These amounts are included in interest expense, net on the Consolidated Statements of Operations and Comprehensive Income. We also had $0.7 million and $7.5 million in new costs associated with the debt-related financing transactions incurred during the years ended December&#160;31, 2022 and 2021. The deferred financing costs are included in other non-current assets while the debt issuance costs are included in long-term debt on the Consolidated Balance Sheets. These costs are amortized over the term of the related debt on a straight-line basis which approximates the effective interest method.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;For additional information on our debt instruments, see Note 8, Long-Term Debt.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Leases&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Leases are measured according to ASC 842, &#x201c;Leases,&#x201d; which requires substantially all leases, with the exception of leases with a term of one year or less, to be recorded as a lease liability measured as the present value of the future lease payments with a corresponding right-of-use asset. ASC 842 also requires disclosures designed to give financial statement users information on the amount, timing and uncertainty of cash flows. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We determine if an arrangement is a lease at inception. Most of our operating leases do not provide an implicit rate so we use our incremental borrowing rate based on the information available at the commencement date to determine the present value of future payments. Leases with an initial term of 12 months or less are not recorded on the balance sheet as we recognize lease expense for these leases on a straight-line basis over the lease term. We elect to not separate lease components from non-lease &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;components for all fixed payments, and we exclude variable lease payments in the measurement of right-of-use assets and lease obligations.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Most lease agreements include one or more renewal options, all of which are at our sole discretion. Generally, future renewal options that have not been executed as of the balance sheet date are excluded from right-of-use assets and related lease liabilities. Certain leases also include options to purchase the leased property. The depreciable life of assets and leasehold improvements are limited by the expected lease term, unless there is a transfer of title or purchase option reasonably certain of exercise. Some of our vehicle lease agreements include provisions for residual value guarantees and any expected payment is included in our lease liability. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Share-Based Compensation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our share-based compensation program is designed to attract and retain employees while also aligning employees&#x2019; interests with the interests of our stockholders. Restricted stock awards are periodically granted to certain employees, officers and non-employee members of our board of directors under the stockholder-approved 2014 Omnibus Incentive Plan.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Certain of our stock awards are deemed to be equity-based with a service condition and do not contain a market or performance condition with the exception of performance-based awards granted to certain officers and performance-based stock units. Fair value of the non-performance-based awards to employees and officers is measured at the grant date and amortized to expense over the vesting period of the awards using the straight-line attribution method for all service-based awards with a graded vesting feature. This fair value is reduced by assumed forfeitures and adjusted for actual forfeitures until vesting. We also issue performance-based stock awards to certain officers under our 2014 Omnibus Incentive Plan. The performance-based compensation expense is recorded over the requisite service period using the graded-vesting method for the entire award. Performance-based stock awards are accounted for at fair value at date of grant. We also periodically grant performance-based stock units to certain employees under the stockholder-approved 2014 Omnibus Incentive Plan. These units convert to shares upon meeting time- and performance-based requirements.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Compensation expense for performance-based stock units is recorded based on an assessment each reporting period of the probability that certain performance goals will be met during the contingent vesting period. If performance goals are not probable to occur, no compensation expense will be recognized. If performance goals that were previously deemed probable are not or are not expected to be met, the previously recognized compensation cost related to such performance goals will be reversed. Employees and officers are subject to tax at the vesting date based on the market price of the shares on that date, or on the grant date if an election is made.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Income Taxes&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We account for income taxes using the asset and liability method. Under this method, the amount of taxes currently payable or refundable are accrued and deferred tax assets and liabilities are recognized for the estimated future tax consequences of temporary differences that currently exist between the tax basis and financial reporting basis of our assets and liabilities.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Valuation allowances are established against deferred tax assets when it is more likely than not that the realization of those deferred tax assets will not occur. In evaluating our ability to recover our deferred tax assets within the jurisdiction from which they arise, we consider all available positive and negative evidence, including scheduled reversals of deferred tax liabilities, the ability to produce future taxable income, prudent and feasible tax planning strategies and recent financial operations. In projecting future taxable income, we factor in historical results and changes in accounting policies and incorporate assumptions, including the amount of future federal and state pretax operating income, the reversal of temporary differences and the implementation of feasible and prudent tax planning strategies. These assumptions require significant judgment about the forecasts of future taxable income and are consistent with the plans and estimates we use to manage the underlying businesses.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Deferred tax assets and liabilities are measured using the enacted tax rates in effect in the years when those temporary differences are expected to reverse. The effect on deferred taxes from a change in tax rate is recognized through operations in the period that includes the enactment date of the change. Changes in tax laws and rates could also affect recorded deferred tax assets and liabilities in the future.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A tax benefit from an uncertain tax position may be recognized when it is more likely than not that the position will be sustained upon examination, including resolutions of any related appeals or litigation processes, based on the technical merits. Income tax positions must meet a more likely than not recognition threshold to be recognized.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We recognize tax liabilities for uncertain tax positions and adjust these liabilities when our judgment changes as a result of the evaluation of new information not previously available. Liabilities related to uncertain tax positions are recorded in other long-term liabilities on the Consolidated Balance Sheets. Due to the complexity of some of these uncertainties, the ultimate resolution may result in a payment that is materially different from the current estimate of the tax liabilities. These differences will be reflected as increases or decreases to income tax expense and the effective tax rate in the period in which the new information becomes available. Interest and penalties related to unrecognized tax benefits are recognized within income tax expense in the Consolidated Statements of Operations and Comprehensive Income. Accrued interest and penalties are recognized in other current liabilities on the Consolidated Balance Sheets.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our income tax expense, deferred tax assets and liabilities and reserves for unrecognized tax benefits reflect management&#x2019;s best assessment of estimated future taxes to be paid. We are subject to income taxes in the United States, which includes numerous state and local jurisdictions. Significant judgments and estimates are required in determining the income tax expense, deferred tax assets and liabilities and the reserve for unrecognized tax benefits.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Estimated Fair Value of Financial Instruments&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;See Note 10, Fair Value Measurements, for related accounting policies.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Recently Adopted Accounting Pronouncements&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.783%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.420%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.329%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Standard&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Effective&#160;Date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Adoption&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;ASU 2022-06, Reference Rate Reform (Topic 848): Deferral of the Sunset Date of Topic 848&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 21, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;This pronouncement amends ASU 2020-04 which provides temporary optional expedients and exceptions to certain transactions affected by reference rate reform. ASU 2022-06 defers the sunset date of applying ASU 2020-04 to December 31, 2024. We continue to evaluate whether to apply the optional guidance on an ongoing basis but do not expect it to have a material impact on our consolidated financial statements.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Recently Issued Accounting Pronouncements Not Yet Adopted&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We are currently evaluating the impact of certain ASUs on our Consolidated Financial Statements or Notes to Consolidated Financial Statements, which are described below:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:21.560%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:22.438%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.391%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:29.459%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Standard&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Description&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Effective Date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Effect&#160;on&#160;the&#160;financial&#160;&lt;br/&gt;statements&#160;or other significant matters&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;ASU 2021-08, Business Combinations (Topic 805): Accounting for contract assets and contract liabilities from contracts with customers &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;This pronouncement amends Topic 805 to require an acquirer to account for revenue contracts in a business combination in accordance with Topic 606 as if the acquirer had originated the contracts. &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Annual periods beginning after December 15, 2022, including interim periods therein. Early adoption is permitted.&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;The Company will adopt and apply the guidance as prescribe by this ASU to future business combinations that occur after the effective date. This will not materially affect our consolidated financial statements.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:SignificantAccountingPoliciesTextBlock>
    <us-gaap:BasisOfAccountingPolicyPolicyTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMjc_2a744f2f-d4aa-46b0-a00c-0c9cd748b94b">We prepare our consolidated financial statements in accordance with accounting principles generally accepted in the United States of America (&#x201c;U.S. GAAP&#x201d;).</us-gaap:BasisOfAccountingPolicyPolicyTextBlock>
    <us-gaap:ConsolidationPolicyTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMTg_e53ce24e-0650-463d-8fb3-ea7640e6682f">The accompanying consolidated financial statements include all of our wholly-owned subsidiaries. All intercompany accounts and transactions have been eliminated.</us-gaap:ConsolidationPolicyTextBlock>
    <us-gaap:PriorPeriodReclassificationAdjustmentDescription
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTY0OTI2NzUyMjQ0Ng_757c4933-71b8-4cc3-8e28-366f08ed6faf">The change in reportable segments described in Note 1, Organization and Note 11, Information on Segments, requires certain prior year disclosures in Note 3, Revenue Recognition and Note 7, Goodwill and Intangibles to be recast to conform to the current year presentation. We expanded the presentation of our administrative operating expenses to separately present our gains on acquisition earnouts in the Consolidated Statements of Operation and Comprehensive Income in this Form 10-K.</us-gaap:PriorPeriodReclassificationAdjustmentDescription>
    <us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1
      contextRef="i04a97e90464f4f5e8db3563629410f38_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTY0OTI2NzUyMjQ4OA_107a8136-526c-453e-be79-10f2339b18eb"
      unitRef="usd">1000000</us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1>
    <us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1
      contextRef="i9bcccabeefe04ca69c63b738147b9793_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTY0OTI2NzUyMjQ3NA_7c878f70-3604-4d60-9a74-0b2ade916e6a"
      unitRef="usd">200000</us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1>
    <us-gaap:UseOfEstimates
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMDc_267a6165-1619-4b63-aae6-8994a2f8339e">Preparation of the consolidated financial statements in conformity with U.S. GAAP requires management to make estimates, judgements and assumptions that affect the reported amounts in the consolidated financial statements and accompanying notes. Management believes the accounting estimates are appropriate and reasonably determined; however, due to the inherent uncertainties in making these estimates, actual amounts could differ from such estimates.</us-gaap:UseOfEstimates>
    <us-gaap:CashAndCashEquivalentsPolicyTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMTQ_10591cf0-4c19-43a6-a220-7bc2c883084a">We consider all highly-liquid investments purchased with original term to maturity of three months or less to be cash equivalents.</us-gaap:CashAndCashEquivalentsPolicyTextBlock>
    <us-gaap:CashFDICInsuredAmount
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-4"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTExMw_e6786889-632d-435f-b359-de454b60d211"
      unitRef="usd">250000</us-gaap:CashFDICInsuredAmount>
    <us-gaap:RevenueFromContractWithCustomerPolicyTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMTk_e9e1d9a6-b448-4a52-b941-0c768240eaac">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Payment terms typically do not exceed 30 days for short-term contracts and typically do not exceed 60 days for long-term contracts with customers. All contracts are billed either contractually or as work is performed. Billing on our long-term contracts occurs primarily on a monthly basis throughout the contract period whereby we submit invoices for customer payment based on actual or estimated costs incurred during the billing period. On certain of our long-term contracts the customer may withhold payment on an invoice equal to a percentage of the invoice amount, which will be subsequently paid after satisfactory completion of each installation project. This amount is referred to as retainage and is common practice in the construction industry, as it allows for customers to ensure the quality of the service performed prior to full payment. Retainage receivables are classified as current or long-term assets based on the expected time to project completion. See "Accounts Receivable" below for further discussion of our retainage receivables.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Revenues for our Distribution and Manufacturing operating segments included in the Other category are accounted for on a point-in-time basis when the sale occurs, adjusted accordingly for any return provisions. Sales taxes are not included in revenue as we act as a conduit for collecting and remitting sales taxes to the appropriate government authorities. The point-in-time recognition is when we transfer the promised products to the customer and the customer obtains control of the products depending upon the agreed upon terms in the contract. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We generally expense all sales commissions and other incremental costs of obtaining a contract when incurred because the amortization period is usually one year or less. Sales commissions are recorded within selling expenses on the Consolidated Statements of Operations and Comprehensive Income.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We do not disclose the value of unsatisfied performance obligations for contracts with an original expected length of one year or less.&lt;/span&gt;&lt;/div&gt;</us-gaap:RevenueFromContractWithCustomerPolicyTextBlock>
    <ibp:RevenueFromContractWithCustomerPaymentTerms
      contextRef="i7030ce37fae04cf69695a4b0ca65329b_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfNDI5MQ_708aa26a-0b88-423e-a6c9-6d95eb348652">P30D</ibp:RevenueFromContractWithCustomerPaymentTerms>
    <ibp:RevenueFromContractWithCustomerPaymentTerms
      contextRef="i3a074bd43fbe424181ccfa73e65a0d18_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfNDM1Mg_ea7a9197-e68d-4960-96c3-0f1f58886764">P60D</ibp:RevenueFromContractWithCustomerPaymentTerms>
    <us-gaap:DerivativesMethodsOfAccountingHedgingDerivatives
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMTI_7da002ca-692c-494b-9963-d3de7f4992df">We record all derivatives on the balance sheet at fair value. The accounting for changes in the fair value of derivatives depends on the intended use of the derivative, whether we have elected to designate a derivative in a hedging relationship and apply hedge accounting and whether the hedging relationship has satisfied the criteria necessary to apply hedge accounting. Derivatives designated and qualifying as a hedge of the exposure to variability in expected future cash flows, or other types of forecasted transactions, are considered cash flow hedges. Hedge accounting generally provides for the matching of the timing of gain or loss recognition on the hedging instrument with the recognition of the earnings effect of the hedged forecasted transactions in a cash flow hedge. We may enter into derivative contracts that are intended to economically hedge certain of our risks, even though hedge accounting does not apply or we elect not to apply hedge accounting.</us-gaap:DerivativesMethodsOfAccountingHedgingDerivatives>
    <us-gaap:BusinessCombinationsPolicy
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMjk_8b4933ed-c2e0-4ae8-9b7b-5489c2842b64">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The purchase price for business combinations is allocated to the estimated fair values of acquired tangible and intangible assets, including goodwill and assumed liabilities, where applicable. Additionally, we recognize customer relationships, trademarks and trade names, backlog and non-competition agreements as identifiable intangible assets. These assets are recorded at fair value as of the transaction date. The fair value of these intangibles is determined using either the income approach or the market approach using current industry information which involves significant unobservable inputs (Level 3 inputs). These inputs include projected sales, margin and tax rate. Contingent consideration is recorded at fair value at the acquisition date and any subsequent adjustments to these fair values would be recorded in earnings.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;At times, the total purchase price for a business combination could be less than the estimated fair values of acquired tangible and intangible assets. In these cases, we record a gain on bargain purchase within other expenses in the Consolidated Statements of Operations and Comprehensive Income rather than goodwill in accordance with U.S. GAAP.&lt;/span&gt;&lt;/div&gt;</us-gaap:BusinessCombinationsPolicy>
    <us-gaap:ReceivablesPolicyTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMTU_f2e5818d-68a7-4618-8cb5-7080458b922f">We account for trade receivables based on amounts billed to customers. Past due receivables are determined based on contractual terms. We do not accrue interest on any of our trade receivables.Retainage receivables represent the amount retained by our customers to ensure the quality of the installation and is received after satisfactory completion of each installation project. Management regularly reviews aging of retainage receivables and changes in payment trends and records an allowance when collection of amounts due are considered at risk.</us-gaap:ReceivablesPolicyTextBlock>
    <us-gaap:AccountsReceivableNet
      contextRef="i916add5659e9483187a23c436172af58_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfODYzMQ_70e5f4d6-fce6-463a-886b-0cf492fbde8c"
      unitRef="usd">49800000</us-gaap:AccountsReceivableNet>
    <us-gaap:AccountsReceivableNet
      contextRef="iac9bd348abd04098bc3566be7ec90b65_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfODYzOA_f3ae27e3-9c46-4436-a348-8fa471da6501"
      unitRef="usd">40500000</us-gaap:AccountsReceivableNet>
    <us-gaap:ConstructionContractorReceivableRetainage
      contextRef="i522dacc92fda49dca2761a231d5ffdf7_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfODY5NQ_b394c7ee-cf8d-4ac0-b2b4-3de41d677e87"
      unitRef="usd">1000000</us-gaap:ConstructionContractorReceivableRetainage>
    <us-gaap:ConstructionContractorReceivableRetainage
      contextRef="i554c55111f144a58ad00025d79e13e9b_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTA5OTUxMTcwMjk0MQ_27e5f28d-89bb-4f46-9646-f923bb00231c"
      unitRef="usd">500000</us-gaap:ConstructionContractorReceivableRetainage>
    <us-gaap:ConcentrationRiskCreditRisk
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMDg_bc86f88e-b3b0-4e59-a6c3-d55fe52ccd48">Credit risk is our risk of financial loss from the non-performance of a contractual obligation on the part of our counterparty. Such risk arises principally from our receivables from customers and cash and bank balances. Substantially all of our trade accounts receivable are from entities engaged in residential and commercial construction. We perform periodic credit evaluations of our customers&#x2019; financial condition. The general credit risk of our counterparties is not considered to be significant.</us-gaap:ConcentrationRiskCreditRisk>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i64d37377565942d7b62216f914464267_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTAxMjY_7c107eb3-bb5e-4f4e-a940-33375078ec82"
      unitRef="number">0.03</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="ibb4eb8b80ae1409c879096369623731a_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTAxMjY_bd9cdd09-fd64-4af0-94ec-9ec7538552d4"
      unitRef="number">0.03</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i73dcc289e54247d5a9ee4500da7b929a_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTAxMjY_cc87d607-d70b-4dbd-a53c-469cbd3156c5"
      unitRef="number">0.03</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="idcbfa766a726450d8033269af5072004_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTAxNTU_53e604ab-bde5-4871-bd03-1fcd913eb6c3"
      unitRef="number">0.05</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i5119f1a3a77b4ab090de134cabf394ea_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTAxNTU_6b04bf6e-ce78-47d0-a84f-632684b519cb"
      unitRef="number">0.05</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="icd9e31da4b4f4f98bbdc2f789ded5c25_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTAxNTU_6e9e00bc-d62e-4a84-9669-9e69af616916"
      unitRef="number">0.05</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:InventoryPolicyTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMjQ_96e657f6-02fe-448e-8cd1-c128f50c925e">Inventories consist of insulation, waterproofing materials, fireproofing and fire-stopping materials, garage doors, rain gutters, window blinds, shower doors, mirrors, closet shelving and other products. We value inventory at each balance sheet date to ensure that it is carried at the lower of cost or net realizable value with cost determined using the first-in, first-out (&#x201c;FIFO&#x201d;) method. Net realizable value is the estimated selling price in the ordinary course of business, less reasonably predictable cost of completion, disposal and transportation. As of December&#160;31, 2022 and 2021, substantially all inventory was finished goods. Inventory provisions are recorded to reduce inventory to the lower of cost or net realizable value for obsolete or slow moving inventory based on assumptions about future demand and marketability of products, the impact of new product introductions, inventory levels and turns, product spoilage, and specific identification of items such as product discontinuance, engineering/material changes, or regulatory-related changes.</us-gaap:InventoryPolicyTextBlock>
    <us-gaap:PropertyPlantAndEquipmentPolicyTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMjU_4ba8562d-9d90-4190-a37c-7b4029574266">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Property and equipment are stated at cost, less accumulated depreciation. We provide for depreciation and amortization of property and equipment using the straight-line method over the expected useful lives of the assets. Expected useful lives of property and equipment vary but generally are the shorter of lease life or five years for vehicles and leasehold improvements, &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTE2NTc_a977f052-cdfa-4287-b1c2-2c13ccbb2ec3"&gt;three&lt;/span&gt; to five years for furniture, fixtures and equipment and 30 years for buildings.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Major renewals and improvements are capitalized. Maintenance, repairs and minor renewals are expensed as incurred. When assets are retired or otherwise disposed of, the related cost and accumulated depreciation are removed from the accounts and any resulting gain or loss is recorded. These assets are regularly review for possible impairment if there are indicators that their carrying amounts are not recoverable.&lt;/span&gt;&lt;/div&gt;</us-gaap:PropertyPlantAndEquipmentPolicyTextBlock>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i0e330197b8cc466a87fd325ae1726f87_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTE2MTM_c1ca1c93-472f-425a-87d7-9c7d8f5435bc">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="ie678e6339f5846fb8e4681a3cc644073_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTE2MTM_dd0e6e11-cd05-40ce-9281-26d47c2b40d7">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i45802eccf5284f33b5a37c51a3ab3e77_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTE2NjM_19fd8953-ab80-426d-b093-82102e6b5c1c">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="if32d292972dc421baf704f08cff66b78_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTE3MDg_315a4167-4c77-44c8-b117-ff4169ee2385">P30Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:GoodwillAndIntangibleAssetsGoodwillPolicy
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMTY_d421100a-4755-49b7-81d9-e2e4d6593385">Goodwill results from business combinations and represents the excess of the purchase price over the fair value of acquired tangible assets and liabilities and identifiable intangible assets. Annually, on October 1, or if conditions indicate an earlier review is necessary, we perform our goodwill impairment testing to determine if it is more likely than not that the fair value of a reporting unit is less than its carrying amount. As described in Note 1, Organization and Note 11, Information on Segments, we realigned our operating segments in 2022 to reflect recent changes in our business. We have determined that our reporting units are at the operating segment level.The estimate of a reporting unit&#x2019;s fair value is determined by weighting a discounted cash flow model and a market-related model using current industry information that involve significant unobservable inputs (Level 3 inputs). In determining the estimated future cash flow, we consider and apply certain estimates and judgments using our historical knowledge, external valuation experts, current market trends and other information. These estimates and judgements include current and projected future levels of income based on management&#x2019;s plans, business trends, prospects, market and economic conditions and market-participant considerations. An impairment charge is recognized for the amount by which the carrying value exceeds the reporting unit's fair value, not to exceed the total amount of goodwill allocated to each reporting unit.</us-gaap:GoodwillAndIntangibleAssetsGoodwillPolicy>
    <us-gaap:ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMTA_37954a32-dc44-44ff-8ceb-23c9a9669b79">Other intangible assets consist of customer relationships, backlog, non-competition agreements and business trademarks and trade names. Amortization of finite lived intangible assets is recorded to reflect the pattern of economic benefits based on projected revenues over their respective estimated useful lives (customer relationships &#x2013; &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTM1NTU_ef0ebe6a-c7b3-48eb-8f8b-5ddf39ff0efb"&gt;eight&lt;/span&gt; to 15 years, backlog &#x2013; 12 to 36 months, non-competition agreements &#x2013; &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTM2MTQ_9876c3d1-52c9-4958-8348-18d296904de3"&gt;one&lt;/span&gt; to five years and business trademarks and trade names &#x2013; &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTM2NjU_f0c11354-8793-4523-b059-4ab1963f4cfb"&gt;two&lt;/span&gt; to 15 years). We do not have any indefinite-lived intangible assets other than goodwill.We review long-lived assets and intangible assets whenever events or changes in circumstances indicate that the carrying value of an asset may not be recoverable. An impairment loss is recognized when estimated future cash flows expected to result from the use of an asset and its eventual disposition are less than its carrying amount. When impairment is identified, the carrying amount of the asset is reduced to its estimated fair value. Assets to be disposed of are recorded at the lower of net book value or fair net realizable value less cost to sell at the date management commits to a plan of disposal.</us-gaap:ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="ie9cf8ce2ee8c464086e5b3058b55476c_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTM1NjE_6817493b-1443-4240-bb8e-9b385a1b4f04">P15Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="ie4319ae880b543cbbcc6d05a87520cb6_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTM1NzU_03bd376e-e8ca-4b18-b2d6-0aa78bef3a04">P12M</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="i8ab06223d33149249774cf08ad138b35_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTM1ODE_73213ad5-9296-4ab0-bb29-a7018d541004">P36M</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="ifbf801f2701b4b64a3a73f7d5f4ce37a_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTM2MjA_e11cf5e0-8c0a-4ebc-ae50-c15f0163c51e">P5Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="i5ec1d9c191cb4a73b7803b756c514cbe_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTM2NzE_5a03a0ff-04af-4e34-b808-f89f21d4e7e5">P15Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:ImpairmentOfLongLivedAssetsHeldForUse
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTQzNzI_65686c8b-dcf9-4e8f-9314-773a94b4b4e9"
      unitRef="usd">0</us-gaap:ImpairmentOfLongLivedAssetsHeldForUse>
    <us-gaap:ImpairmentOfLongLivedAssetsHeldForUse
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTQzNzI_76a0e057-298c-4e01-a885-ff4cb2cc05ca"
      unitRef="usd">0</us-gaap:ImpairmentOfLongLivedAssetsHeldForUse>
    <us-gaap:ImpairmentOfLongLivedAssetsHeldForUse
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTQzNzI_f7b88714-a6ec-47f4-b5f3-812e68222a26"
      unitRef="usd">0</us-gaap:ImpairmentOfLongLivedAssetsHeldForUse>
    <ibp:OtherLiabilitiesPolicyTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMjY_16c11c8d-9999-4934-b972-7e53c84424f9">Our workers&#x2019; compensation insurance program, for a significant portion of our business, is considered a high deductible program whereby we are responsible for the cost of claims under approximately $0.8 million. Our general liability insurance program is considered a high retention program whereby we are responsible for the cost of claims up to approximately $5.0 million, subject to an aggregate cap of $10.0 million. Our vehicle liability insurance program is considered a high deductible program whereby we are responsible for the cost of claims under approximately $1.0 million. In each case, if we do not pay these claims, our insurance carriers are required to make these payments to the claimants on our behalf. The liabilities represent our best estimate of our costs, using generally accepted actuarial reserving methods, of the ultimate obligations for reported claims plus those incurred but not reported for all claims incurred through December&#160;31, 2022 and 2021. We establish case reserves for reported claims using case-basis evaluation of the underlying claims data and we update as information becomes known. We regularly monitor the potential for changes in estimates, evaluate our insurance accruals and adjust our recorded provisions.&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The assumptions underlying the ultimate costs of existing claim losses are subject to a high degree of unpredictability, which can affect the liability recorded for such claims. For example, variability in inflation rates of health care costs inherent in workers&#x2019; compensation claims can affect the ultimate costs. Similarly, changes in legal trends and interpretations, as well as a change in the nature and method of how claims are settled, can affect ultimate costs. Our estimates of liabilities incurred do not anticipate significant changes in historical trends for these variables and any changes could have a considerable effect on future claim costs and currently recorded liabilities.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We carry insurance for a number of risks, including, but not limited to, workers&#x2019; compensation, general liability, vehicle liability, property and our obligation for employee-related health care benefits. Liabilities relating to claims associated with these risks are estimated by considering historical claims experience, including frequency, severity, demographic factors and other actuarial assumptions. In estimating our liability for such claims, we periodically analyze our historical trends, including loss development, and apply appropriate loss development factors to the incurred costs associated with the claims with the assistance of external actuarial consultants. While we do not expect the amounts ultimately paid to differ significantly from our estimates, our reserves and corresponding expenses could be affected if future claim experience differs significantly from historical trends and actuarial assumptions.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Treasury Stock&lt;/span&gt;&lt;/div&gt;Repurchases of our common stock are recorded at cost and classified as Treasury Stock on our Consolidated Balance Sheets. As of December&#160;31, 2022, we have not re-issued any of our treasury stock, but may do so periodically.</ibp:OtherLiabilitiesPolicyTextBlock>
    <us-gaap:WorkersCompensationLiabilityCurrentAndNoncurrent
      contextRef="ic3ce87d770614921b8e95c96cbaef621_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTQ2NDM_5c23f75c-67cc-464e-b602-516482ea79a5"
      unitRef="usd">800000</us-gaap:WorkersCompensationLiabilityCurrentAndNoncurrent>
    <us-gaap:WorkersCompensationLiabilityCurrentAndNoncurrent
      contextRef="ia8f02ef2a4ed497f84af0c7912d9023c_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTQ3OTY_1316bd2e-5a5c-4b54-872e-130ae90ae5c8"
      unitRef="usd">5000000</us-gaap:WorkersCompensationLiabilityCurrentAndNoncurrent>
    <ibp:AggregateCapWorkersCompensationLiability
      contextRef="ia8f02ef2a4ed497f84af0c7912d9023c_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTQ4MzE_b3583585-4356-486f-8243-7c6b9805513f"
      unitRef="usd">10000000</ibp:AggregateCapWorkersCompensationLiability>
    <us-gaap:WorkersCompensationLiabilityCurrentAndNoncurrent
      contextRef="i32b91c3b49e24b33a71b7c34db3b11fa_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTQ5ODU_061fe140-baf6-4c2b-be51-6145329f3492"
      unitRef="usd">1000000</us-gaap:WorkersCompensationLiabilityCurrentAndNoncurrent>
    <us-gaap:AdvertisingCostsPolicyTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMjg_995f91e0-d767-4143-8e27-04cfd0780738">Advertising costs are generally expensed as incurred.</us-gaap:AdvertisingCostsPolicyTextBlock>
    <us-gaap:AdvertisingExpense
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTczNzc_c0a6f903-d7ef-4df7-96c2-085361c97675"
      unitRef="usd">4900000</us-gaap:AdvertisingExpense>
    <us-gaap:AdvertisingExpense
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTA5OTUxMTcwNDE4NQ_c966ef35-4b9d-4f2b-b602-2aea640bcdb3"
      unitRef="usd">4600000</us-gaap:AdvertisingExpense>
    <us-gaap:AdvertisingExpense
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTA5OTUxMTcwNDE5NA_49ef24c9-0f7a-4781-b339-dd88ecc3c7f0"
      unitRef="usd">3900000</us-gaap:AdvertisingExpense>
    <ibp:DeferredOfferingCostsPolicyTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMjE_47709a07-877c-44c0-a1d9-7fe5ee982ab9">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Deferred financing costs and debt issuance costs combined, totaling $10.2 million and $11.4 million, net of accumulated amortization as of December&#160;31, 2022 and 2021, respectively, are amortized over the term of the related debt on a straight-line basis which approximates the effective interest method. The deferred financing costs are included in other non-current assets while the debt issuance costs are included in long-term debt on the Consolidated Balance Sheets as of December&#160;31, 2022 and 2021, respectively. The related amortization expense of these costs combined was $1.9 million, $1.4 million and $1.3 million and is included in interest expense, net on the Consolidated Statements of Operations and Comprehensive Income for the years ended December&#160;31, 2022, 2021 and 2020, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We wrote off $0.2 million in previously capitalized loan costs during the year ended December&#160;31, 2021. In addition, we expensed loan costs of approximately $1.6 million for the year ended December&#160;31, 2021 associated with our credit facilities because they did not meet the requirements for capitalization. We had no such write offs or expenses during the years ended December&#160;31, 2022 or 2020. These amounts are included in interest expense, net on the Consolidated Statements of Operations and Comprehensive Income. We also had $0.7 million and $7.5 million in new costs associated with the debt-related financing transactions incurred during the years ended December&#160;31, 2022 and 2021. The deferred financing costs are included in other non-current assets while the debt issuance costs are included in long-term debt on the Consolidated Balance Sheets. These costs are amortized over the term of the related debt on a straight-line basis which approximates the effective interest method.&lt;/span&gt;&lt;/div&gt;</ibp:DeferredOfferingCostsPolicyTextBlock>
    <us-gaap:DeferredFinanceCostsNet
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTc2NTk_19a8ffcb-302e-417f-8816-22ee31692fab"
      unitRef="usd">10200000</us-gaap:DeferredFinanceCostsNet>
    <us-gaap:DeferredFinanceCostsNet
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTc2NjY_29912073-9b67-4c9c-93eb-324c8e17e528"
      unitRef="usd">11400000</us-gaap:DeferredFinanceCostsNet>
    <us-gaap:AmortizationOfFinancingCosts
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTgxMTQ_73661224-ea15-4eb7-a03b-624dc389328f"
      unitRef="usd">1900000</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:AmortizationOfFinancingCosts
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTgxMTg_445a0aff-d6a6-4452-9c21-367485978433"
      unitRef="usd">1400000</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:AmortizationOfFinancingCosts
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTgxMjU_dd541ff4-b320-4257-b203-53e0993b7d00"
      unitRef="usd">1300000</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:WriteOffOfDeferredDebtIssuanceCost
      contextRef="icc12c341ab264e4484bd54d854bbd417_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTA5OTUxMTcwNDMwNg_17fcb77a-60a9-4347-9e56-a1c2eb42d94d"
      unitRef="usd">200000</us-gaap:WriteOffOfDeferredDebtIssuanceCost>
    <us-gaap:DeferredFinanceCostsNet
      contextRef="id889bbe23ec44abf91d92688cfe07f1d_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTA5OTUxMTcwNDM1MQ_73ded883-df29-4b08-8798-950a87da1a37"
      unitRef="usd">1600000</us-gaap:DeferredFinanceCostsNet>
    <us-gaap:WriteOffOfDeferredDebtIssuanceCost
      contextRef="i1342bf92766544b088ad18cf1e74bf7c_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTg2MTM_0b93dd79-5a9a-4365-a89b-c2662e851a25"
      unitRef="usd">0</us-gaap:WriteOffOfDeferredDebtIssuanceCost>
    <us-gaap:DeferredFinanceCostsNet
      contextRef="i2a9e98edaba24b94abaf2f7ee50e6387_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTg2MTM_cda34888-d0c1-412a-a224-dfb1b1577302"
      unitRef="usd">0</us-gaap:DeferredFinanceCostsNet>
    <ibp:DebtRelatedFinancingCost
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTg4MDU_817d0f6e-f44b-4802-a008-a956bda79156"
      unitRef="usd">700000</ibp:DebtRelatedFinancingCost>
    <ibp:DebtRelatedFinancingCost
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMTA5OTUxMTcwNDQwNw_a2def5e2-6d22-44b6-8e59-a1d9cf1e4120"
      unitRef="usd">7500000</ibp:DebtRelatedFinancingCost>
    <us-gaap:LesseeLeasesPolicyTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMzE_1fe31f26-ba9d-48df-ab43-a259f17adc96">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Leases are measured according to ASC 842, &#x201c;Leases,&#x201d; which requires substantially all leases, with the exception of leases with a term of one year or less, to be recorded as a lease liability measured as the present value of the future lease payments with a corresponding right-of-use asset. ASC 842 also requires disclosures designed to give financial statement users information on the amount, timing and uncertainty of cash flows. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We determine if an arrangement is a lease at inception. Most of our operating leases do not provide an implicit rate so we use our incremental borrowing rate based on the information available at the commencement date to determine the present value of future payments. Leases with an initial term of 12 months or less are not recorded on the balance sheet as we recognize lease expense for these leases on a straight-line basis over the lease term. We elect to not separate lease components from non-lease &lt;/span&gt;&lt;/div&gt;components for all fixed payments, and we exclude variable lease payments in the measurement of right-of-use assets and lease obligations.Most lease agreements include one or more renewal options, all of which are at our sole discretion. Generally, future renewal options that have not been executed as of the balance sheet date are excluded from right-of-use assets and related lease liabilities. Certain leases also include options to purchase the leased property. The depreciable life of assets and leasehold improvements are limited by the expected lease term, unless there is a transfer of title or purchase option reasonably certain of exercise. Some of our vehicle lease agreements include provisions for residual value guarantees and any expected payment is included in our lease liability.</us-gaap:LesseeLeasesPolicyTextBlock>
    <us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMTc_0be33392-6854-49ec-8442-a5d2c5b66930">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our share-based compensation program is designed to attract and retain employees while also aligning employees&#x2019; interests with the interests of our stockholders. Restricted stock awards are periodically granted to certain employees, officers and non-employee members of our board of directors under the stockholder-approved 2014 Omnibus Incentive Plan.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Certain of our stock awards are deemed to be equity-based with a service condition and do not contain a market or performance condition with the exception of performance-based awards granted to certain officers and performance-based stock units. Fair value of the non-performance-based awards to employees and officers is measured at the grant date and amortized to expense over the vesting period of the awards using the straight-line attribution method for all service-based awards with a graded vesting feature. This fair value is reduced by assumed forfeitures and adjusted for actual forfeitures until vesting. We also issue performance-based stock awards to certain officers under our 2014 Omnibus Incentive Plan. The performance-based compensation expense is recorded over the requisite service period using the graded-vesting method for the entire award. Performance-based stock awards are accounted for at fair value at date of grant. We also periodically grant performance-based stock units to certain employees under the stockholder-approved 2014 Omnibus Incentive Plan. These units convert to shares upon meeting time- and performance-based requirements.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Compensation expense for performance-based stock units is recorded based on an assessment each reporting period of the probability that certain performance goals will be met during the contingent vesting period. If performance goals are not probable to occur, no compensation expense will be recognized. If performance goals that were previously deemed probable are not or are not expected to be met, the previously recognized compensation cost related to such performance goals will be reversed. Employees and officers are subject to tax at the vesting date based on the market price of the shares on that date, or on the grant date if an election is made.&lt;/span&gt;&lt;/div&gt;</us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy>
    <us-gaap:IncomeTaxPolicyTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMTM_47d4b63e-dbe9-48fc-bb2d-48a78540c6dd">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We account for income taxes using the asset and liability method. Under this method, the amount of taxes currently payable or refundable are accrued and deferred tax assets and liabilities are recognized for the estimated future tax consequences of temporary differences that currently exist between the tax basis and financial reporting basis of our assets and liabilities.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Valuation allowances are established against deferred tax assets when it is more likely than not that the realization of those deferred tax assets will not occur. In evaluating our ability to recover our deferred tax assets within the jurisdiction from which they arise, we consider all available positive and negative evidence, including scheduled reversals of deferred tax liabilities, the ability to produce future taxable income, prudent and feasible tax planning strategies and recent financial operations. In projecting future taxable income, we factor in historical results and changes in accounting policies and incorporate assumptions, including the amount of future federal and state pretax operating income, the reversal of temporary differences and the implementation of feasible and prudent tax planning strategies. These assumptions require significant judgment about the forecasts of future taxable income and are consistent with the plans and estimates we use to manage the underlying businesses.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Deferred tax assets and liabilities are measured using the enacted tax rates in effect in the years when those temporary differences are expected to reverse. The effect on deferred taxes from a change in tax rate is recognized through operations in the period that includes the enactment date of the change. Changes in tax laws and rates could also affect recorded deferred tax assets and liabilities in the future.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A tax benefit from an uncertain tax position may be recognized when it is more likely than not that the position will be sustained upon examination, including resolutions of any related appeals or litigation processes, based on the technical merits. Income tax positions must meet a more likely than not recognition threshold to be recognized.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We recognize tax liabilities for uncertain tax positions and adjust these liabilities when our judgment changes as a result of the evaluation of new information not previously available. Liabilities related to uncertain tax positions are recorded in other long-term liabilities on the Consolidated Balance Sheets. Due to the complexity of some of these uncertainties, the ultimate resolution may result in a payment that is materially different from the current estimate of the tax liabilities. These differences will be reflected as increases or decreases to income tax expense and the effective tax rate in the period in which the new information becomes available. Interest and penalties related to unrecognized tax benefits are recognized within income tax expense in the Consolidated Statements of Operations and Comprehensive Income. Accrued interest and penalties are recognized in other current liabilities on the Consolidated Balance Sheets.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our income tax expense, deferred tax assets and liabilities and reserves for unrecognized tax benefits reflect management&#x2019;s best assessment of estimated future taxes to be paid. We are subject to income taxes in the United States, which includes numerous state and local jurisdictions. Significant judgments and estimates are required in determining the income tax expense, deferred tax assets and liabilities and the reserve for unrecognized tax benefits.&lt;/span&gt;&lt;/div&gt;</us-gaap:IncomeTaxPolicyTextBlock>
    <us-gaap:ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMTE_0d4589ca-2058-4169-8220-457ae0b51013">&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Recently Adopted Accounting Pronouncements&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.783%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.420%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:61.329%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Standard&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Effective&#160;Date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;Adoption&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;ASU 2022-06, Reference Rate Reform (Topic 848): Deferral of the Sunset Date of Topic 848&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 21, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;This pronouncement amends ASU 2020-04 which provides temporary optional expedients and exceptions to certain transactions affected by reference rate reform. ASU 2022-06 defers the sunset date of applying ASU 2020-04 to December 31, 2024. We continue to evaluate whether to apply the optional guidance on an ongoing basis but do not expect it to have a material impact on our consolidated financial statements.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Recently Issued Accounting Pronouncements Not Yet Adopted&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We are currently evaluating the impact of certain ASUs on our Consolidated Financial Statements or Notes to Consolidated Financial Statements, which are described below:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:21.560%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:22.438%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.391%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:29.459%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Standard&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Description&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Effective Date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Effect&#160;on&#160;the&#160;financial&#160;&lt;br/&gt;statements&#160;or other significant matters&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;ASU 2021-08, Business Combinations (Topic 805): Accounting for contract assets and contract liabilities from contracts with customers &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;This pronouncement amends Topic 805 to require an acquirer to account for revenue contracts in a business combination in accordance with Topic 606 as if the acquirer had originated the contracts. &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Annual periods beginning after December 15, 2022, including interim periods therein. Early adoption is permitted.&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;The Company will adopt and apply the guidance as prescribe by this ASU to future business combinations that occur after the effective date. This will not materially affect our consolidated financial statements.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock>
    <us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF84OC9mcmFnOmM2MWZiYjRkODk2MjQ4YmNiMTEyNjY5ZjQ0YzNhYTlkL3RleHRyZWdpb246YzYxZmJiNGQ4OTYyNDhiY2IxMTI2NjlmNDRjM2FhOWRfMjcyMDk_2697450a-8ce4-412b-817c-4fa6e973d553">&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Recently Issued Accounting Pronouncements Not Yet Adopted&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We are currently evaluating the impact of certain ASUs on our Consolidated Financial Statements or Notes to Consolidated Financial Statements, which are described below:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:21.560%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:22.438%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.391%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:29.459%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Standard&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Description&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Effective Date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Effect&#160;on&#160;the&#160;financial&#160;&lt;br/&gt;statements&#160;or other significant matters&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;ASU 2021-08, Business Combinations (Topic 805): Accounting for contract assets and contract liabilities from contracts with customers &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;This pronouncement amends Topic 805 to require an acquirer to account for revenue contracts in a business combination in accordance with Topic 606 as if the acquirer had originated the contracts. &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Annual periods beginning after December 15, 2022, including interim periods therein. Early adoption is permitted.&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;The Company will adopt and apply the guidance as prescribe by this ASU to future business combinations that occur after the effective date. This will not materially affect our consolidated financial statements.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
    <us-gaap:RevenueFromContractWithCustomerTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RleHRyZWdpb246ODZmZDQ2ODlkMTgzNDMyYTlmNjAxYTQzOGQxZjQ0OTFfMjA4MQ_2710a640-126c-454b-b061-27e241ea690f">REVENUE RECOGNITION&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We disaggregate our revenue from contracts with customers for our Installation segment by end market and product, as we believe it best depicts how the nature, amount, timing and uncertainty of our revenue and cash flows are affected by economic factors. Revenues for the Other category are presented net of intercompany sales in the tables below. The following tables present our net revenues disaggregated by end market and product (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:34.365%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.545%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.526%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.603%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.526%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.545%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.526%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.603%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.381%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.545%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.526%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.609%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="33" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Residential new construction&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,980,253&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;74&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,488,674&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;76&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,230,955&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;75&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Repair and remodel&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;151,761&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;121,594&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;106,486&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Commercial&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;381,543&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;331,275&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;298,920&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net revenue, Installation&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,513,557&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;94&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,941,543&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;99&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,636,361&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;99&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;156,287&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,107&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,864&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net revenue, as reported&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,669,844&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,968,650&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,653,225&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:34.864%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.363%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="33" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Insulation&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,611,037&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;61&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,235,583&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;63&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,041,453&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;63&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Shower doors, shelving and mirrors&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;172,979&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;138,797&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;117,131&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Garage doors&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;168,800&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;108,675&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;93,516&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Waterproofing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;124,808&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;130,924&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;122,962&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Rain gutters&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;114,022&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;86,406&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;62,672&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fireproofing/firestopping&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;63,498&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;59,381&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;49,648&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Window blinds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;61,295&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;50,255&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;46,984&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other building products&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;197,118&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;131,522&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;101,995&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net revenues, Installation&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,513,557&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;94&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,941,543&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;99&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,636,361&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;99&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;156,287&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,107&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,864&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net revenue, as reported&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,669,844&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,968,650&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,653,225&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;padding-left:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(1) &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Net revenue for manufacturing operations are included in the Other category for all periods presented to conform with our change in composition of operating segments.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Contract Assets and Liabilities&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our contract assets consist of unbilled amounts typically resulting from sales under contracts when the cost-to-cost method of revenue recognition is utilized and revenue recognized, based on costs incurred, exceeds the amount billed to the customer. Our contract assets are recorded in other current assets in our Consolidated Balance Sheets. Our contract liabilities consist of customer deposits and billings in excess of revenue recognized, based on costs incurred and are included in other current liabilities in our Consolidated Balance Sheets.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Contract assets and liabilities related to our uncompleted contracts and customer deposits were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:74.777%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.595%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.598%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Contract assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29,431&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,679&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Contract liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(18,884)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(14,153)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Uncompleted contracts were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:74.777%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.595%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.598%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Costs incurred on uncompleted contracts&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;273,788&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;206,050&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Estimated earnings&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;114,781&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;106,163&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;388,569&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;312,213&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: Billings to date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;368,009&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;285,978&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net under billings&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,560&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,235&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Net under billings were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:74.777%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.595%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.598%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Costs and estimated earnings in excess of billings on uncompleted contracts (contract assets)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29,431&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,679&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Billings in excess of costs and estimated earnings on uncompleted contracts (contract liabilities)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(8,871)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,444)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net under billings&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,560&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,235&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The difference between contract assets and contract liabilities as of December&#160;31, 2022 compared to December&#160;31, 2021 is primarily the result of timing differences between our performance of obligations under contracts and customer payments and billings. During the year ended December&#160;31, 2022, we recognized $13.7 million of revenue that was included in the contract liability balance at December&#160;31, 2021. We did not recognize any impairment losses on our receivables and contract assets during the years ended December&#160;31, 2022 and 2021.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Remaining performance obligations represent the transaction price of contracts for which work has not been performed and excludes unexercised contract options and potential modifications. As of December&#160;31, 2022, the aggregate amount of the transaction price allocated to remaining uncompleted contracts was $162.3 million. We expect to satisfy remaining performance obligations and recognize revenue on substantially all of these uncompleted contracts over the next 18 months.&lt;/span&gt;&lt;/div&gt;</us-gaap:RevenueFromContractWithCustomerTextBlock>
    <us-gaap:DisaggregationOfRevenueTableTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RleHRyZWdpb246ODZmZDQ2ODlkMTgzNDMyYTlmNjAxYTQzOGQxZjQ0OTFfMjA4Mg_9e5fbf34-5cd1-44b7-a574-48c476baa749">The following tables present our net revenues disaggregated by end market and product (in thousands):&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:34.365%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.545%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.526%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.603%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.526%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.545%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.526%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.603%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.381%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.545%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.526%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.609%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="33" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Residential new construction&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,980,253&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;74&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,488,674&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;76&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,230,955&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;75&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Repair and remodel&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;151,761&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;121,594&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;106,486&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Commercial&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;381,543&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;331,275&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;298,920&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net revenue, Installation&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,513,557&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;94&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,941,543&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;99&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,636,361&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;99&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;156,287&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,107&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,864&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net revenue, as reported&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,669,844&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,968,650&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,653,225&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:34.864%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.363%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="33" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Insulation&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,611,037&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;61&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,235,583&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;63&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,041,453&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;63&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Shower doors, shelving and mirrors&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;172,979&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;138,797&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;117,131&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Garage doors&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;168,800&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;108,675&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;93,516&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Waterproofing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;124,808&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;130,924&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;122,962&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Rain gutters&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;114,022&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;86,406&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;62,672&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fireproofing/firestopping&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;63,498&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;59,381&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;49,648&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Window blinds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;61,295&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;50,255&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;46,984&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other building products&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;197,118&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;131,522&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;101,995&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net revenues, Installation&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,513,557&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;94&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,941,543&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;99&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,636,361&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;99&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;156,287&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,107&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,864&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net revenue, as reported&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,669,844&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,968,650&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,653,225&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt;padding-left:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(1) &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Net revenue for manufacturing operations are included in the Other category for all periods presented to conform with our change in composition of operating segments.&lt;/span&gt;&lt;/div&gt;</us-gaap:DisaggregationOfRevenueTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i38b7d0939c754d40b80be6633db7bbf4_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfMi0xLTEtMS0xMDAwMDI_44f27990-7bce-43a6-bbf2-b804e4978103"
      unitRef="usd">1980253000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="iadb1e7802af343748059349466c2dffe_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfMi0zLTEtMS0xMDAwMDI_a6e5a9f9-a494-4822-8282-4e304b6903ca"
      unitRef="number">0.74</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ie2e6621047f347e39d52e7402fb8d506_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfMi01LTEtMS0xMDAwMDI_6e4d7302-8c2c-41c2-9b85-681dd5632e9a"
      unitRef="usd">1488674000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i16466f21bf074aa6bdb9dfd70ddd0297_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfMi03LTEtMS0xMDAwMDI_104bdc5c-af2b-41d3-a5f1-ffe1399339f8"
      unitRef="number">0.76</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ib6b83bc5b3a6460ab948f1bb1a8cbb8b_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfMi05LTEtMS0xMDAwMDI_22225b92-22e7-4c8f-a995-851aecbb8d64"
      unitRef="usd">1230955000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i9b153aa63d404cfea815107eb5ac75e6_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfMi0xMS0xLTEtMTAwMDAy_9077df60-dc9f-4b2b-86d7-9026f7349139"
      unitRef="number">0.75</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="iec7dfdafca094c3db95bd4bf49a07932_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfMy0xLTEtMS0xMDAwMDI_233718fc-8ee1-4cf8-88c4-c0974ae1ea92"
      unitRef="usd">151761000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i5daa27ede578476da641f9475dee3b87_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfMy0zLTEtMS0xMDAwMDI_c61309a4-96fd-4a76-a976-902372ac189e"
      unitRef="number">0.06</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="id99f114512224c5a83108f9a2fe6363d_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfMy01LTEtMS0xMDAwMDI_674642d2-f73b-4aa9-bc6b-db0d6a175ae8"
      unitRef="usd">121594000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i315c96619d474657ba97e7ee8029d62c_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfMy03LTEtMS0xMDAwMDI_2eb12848-b62d-4ea2-ac76-394fee928d99"
      unitRef="number">0.06</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i631438c6f7e14c21b55fb772328773fa_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfMy05LTEtMS0xMDAwMDI_4e860683-42f4-4ae5-b28a-ef421fce0beb"
      unitRef="usd">106486000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="ifc7d9bf487234961aa107f17881d18f9_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfMy0xMS0xLTEtMTAwMDAy_81703d73-df2f-4338-8d57-8b5356df8f90"
      unitRef="number">0.06</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i42851b36db8a48a592a794c5761827cf_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNC0xLTEtMS0xMDAwMDI_f9cc2c34-8c28-4d90-a6d8-6b11cffbf495"
      unitRef="usd">381543000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i26d5aef9667648568af196e8591e4691_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNC0zLTEtMS0xMDAwMDI_a5f136b5-e0da-4bc8-9c32-96e931cbdf19"
      unitRef="number">0.14</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ibc157f1ceb8c4ee3ab03127e0eaf33d1_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNC01LTEtMS0xMDAwMDI_04874292-e551-4fdc-b965-d4baab0dae10"
      unitRef="usd">331275000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i42d681ceeb5247058153ca9683ae758e_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNC03LTEtMS0xMDAwMDI_7a1c1240-2b3d-42ab-af7e-522cbc470c27"
      unitRef="number">0.17</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ib6538b6b192c4428bd408a1ff5fdd0b0_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNC05LTEtMS0xMDAwMDI_ebe10e81-c603-42b6-a1c6-1bd0be6b9d6c"
      unitRef="usd">298920000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="idf631fca7b484f4dad2d1d1eac09fe71_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNC0xMS0xLTEtMTAwMDAy_88906a48-1b1a-44ac-801d-29bea3665169"
      unitRef="number">0.18</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i2dcec416818c48969db1a73c9648ef1f_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNS0xLTEtMS0xMDAwMDI_ae240102-c588-448e-9c3c-514b91d9ed4e"
      unitRef="usd">2513557000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i8b010fa35ae74bc89d55a0084fd68f10_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNS0zLTEtMS0xMDAwMDI_f1c67770-98d8-418b-9728-4d949be68c68"
      unitRef="number">0.94</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="iae38b25c26eb4db4b17c45442076a1b1_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNS01LTEtMS0xMDAwMDI_6a9ba8aa-9922-4386-9bca-290f06b63312"
      unitRef="usd">1941543000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i27b503aaebe24456ae400a653d2c4b49_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNS03LTEtMS0xMDAwMDI_447775c2-9d2a-4f6e-b537-711298d6a728"
      unitRef="number">0.99</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i811d106b47bb480db96b87daa9a67986_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNS05LTEtMS0xMDAwMDI_a9134168-58e0-46af-9fe0-31d767e65822"
      unitRef="usd">1636361000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="iec5610518ace48b2ad4837afd8e5a92f_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNS0xMS0xLTEtMTAwMDAy_357da440-c450-4e62-9c3a-969dfef3ba72"
      unitRef="number">0.99</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i2077ad7500b6435b9595c4f5c24e513c_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNi0xLTEtMS0xMDI2NjQ_3bc1f4fc-28e3-4a18-aae3-a8b401490fc7"
      unitRef="usd">156287000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i24d2df75193d4762b56086bf5022fe89_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNi0zLTEtMS0xMDEyNzM_4e3f31ee-8f90-4629-9937-70233b0d1ef5"
      unitRef="number">0.06</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0685147c358f4206bdec20c4809180fa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNi01LTEtMS0xMDI2NjQ_53b578e7-0ced-43c4-9104-50ffba31e42e"
      unitRef="usd">27107000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="ic887923852d94537a7a1c20e3622dda4_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNi03LTEtMS0xMDEyNzM_4084a2a9-fc7d-4280-91a6-1959ce4ce570"
      unitRef="number">0.01</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i540141988e7242719e133d5431fc5bb5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNi05LTEtMS0xMDI2NjQ_5fa222cc-d347-4959-8793-d514b50932ab"
      unitRef="usd">16864000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i89ee79f637414a849b44e06dfbe18717_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNi0xMS0xLTEtMTAxMzAz_b28db70e-9989-4062-ba78-b6d68f7b79a2"
      unitRef="number">0.01</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNy0xLTEtMS0xMDI2Njc_4025c990-6f69-4b0f-9f7a-3a86f46858c3"
      unitRef="usd">2669844000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i19c676a390874ae4a24140482758dc15_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNy0zLTEtMS0xMDEyNzM_930e593d-8b8a-48ce-9b57-9aa00cea39ba"
      unitRef="number">1</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNy01LTEtMS0xMDI2Njc_6234b71d-3267-44eb-9470-f4483725b531"
      unitRef="usd">1968650000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i5e211949b1a84d18bc32aed42b26a5ea_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNy03LTEtMS0xMDEyNzM_3f4d4efc-6cd3-4d18-ac74-4c9f0d8443f0"
      unitRef="number">1</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNy05LTEtMS0xMDI2Njc_dc4d6752-f366-4189-9d32-375fad155dd9"
      unitRef="usd">1653225000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="ic087b4978606431f8e0c7a5794915904_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU1YmFiZWQzZTcwYzRhMmM5ZTAxMzUyYzBkNzMyNzgwL3RhYmxlcmFuZ2U6NTViYWJlZDNlNzBjNGEyYzllMDEzNTJjMGQ3MzI3ODBfNy0xMS0xLTEtMTAxMzAz_6861254c-f617-4b69-aaa0-b68ebf865f51"
      unitRef="number">1</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i3002f2ff2c6749afbf88a83ed53b632b_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMi0xLTEtMS0xMDAwMDI_a4e07d8c-62c3-480b-8d8f-9ca361ac1a94"
      unitRef="usd">1611037000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i831b540d2f8e47f889a534adfa41a137_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMi0zLTEtMS0xMDAwMDI_62d93fb6-2d39-40b3-a4de-cc6b82e11095"
      unitRef="number">0.61</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i7f0f9c9c1cb148bc8ffc9b9c4d1cb3ae_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMi01LTEtMS0xMDAwMDI_2f648f52-8802-41ab-9cd9-56bc8072f098"
      unitRef="usd">1235583000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="ia6d99bdfef2e4afe81b42420edbdb4ad_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMi03LTEtMS0xMDAwMDI_1ac5bdc0-a543-4529-bc34-2f6ef9633d2d"
      unitRef="number">0.63</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="if0f0009cb4634f89adb4be8b61570156_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMi05LTEtMS0xMDAwMDI_bd03c9d5-fa9e-4a6a-85a2-177ffb9c4712"
      unitRef="usd">1041453000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i00115601cc8c4042bd43ab8f01b73bb6_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMi0xMS0xLTEtMTAwMDAy_e28a9218-f42d-48c4-81a0-978cb1f08c6f"
      unitRef="number">0.63</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ifb10bd8b8b764e0595f8e0ce3d7594fe_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMy0xLTEtMS0xMDAwMDI_5d4cb3d0-8fa3-4b28-a9b8-a078b025ff09"
      unitRef="usd">172979000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i721e4cbc587c48298ba896443a7d2a34_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMy0zLTEtMS0xMDAwMDI_2b1a9e9f-c330-4837-ab52-8fd0d21eccdb"
      unitRef="number">0.07</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i33adb71f8ff94ca0a3af98c2736a7f6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMy01LTEtMS0xMDAwMDI_9308f3ea-f36f-44e2-aaf7-ceea6c7abaa4"
      unitRef="usd">138797000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i0ac77e101efc491c8cb0cad3a11c7504_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMy03LTEtMS0xMDAwMDI_d4812eb8-0b1b-457e-82cc-771e1d23f6cd"
      unitRef="number">0.07</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="idebff648b7b445a69becf52762761086_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMy05LTEtMS0xMDAwMDI_94648048-4cb8-4f2c-ad85-93adc9c87d89"
      unitRef="usd">117131000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i362583cc4e704d399a6f6a1f64e23000_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMy0xMS0xLTEtMTAwMDAy_6f354f32-9f0e-49c3-9a07-c547c5c9bd7e"
      unitRef="number">0.07</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="iac222aed281f4d4fb765d77df79bd6f8_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNS0xLTEtMS0xMDAwMDI_4580098a-a192-4470-9657-eea6c322dcae"
      unitRef="usd">168800000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i8fa8b822eaf546ee8193ae6d06195bdc_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNS0zLTEtMS0xMDAwMDI_e920b86c-7a1c-4868-ae9d-926c34e129ce"
      unitRef="number">0.06</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="if0f0a117014f46709ebd632e068c8545_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNS01LTEtMS0xMDAwMDI_66e21f2e-8124-4bc4-8757-707a2246e100"
      unitRef="usd">108675000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="idd9694b536cf4359b63849ececc1051a_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNS03LTEtMS0xMDAwMDI_a010354d-db6e-4785-87da-9d23b6df99b3"
      unitRef="number">0.06</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i5afae2b77b494812a7c281cfa743c50b_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNS05LTEtMS0xMDAwMDI_559bb89a-8791-4e74-9607-35de4d23160f"
      unitRef="usd">93516000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="ia6d0f6ced8d048a585748a46b9036043_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNS0xMS0xLTEtMTAwMDAy_7909dcf5-b1c7-4e4e-ab84-3993071d70a0"
      unitRef="number">0.06</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i4af9336cf8644af4a2a54d63f458febd_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNS0xLTEtMS0xMDg4MDg_451be8ad-30a6-4568-af98-f30720b34588"
      unitRef="usd">124808000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="ie68dee1b238247c8bcda473545d08d3c_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNS0zLTEtMS0xMDg4MDg_f069a6b5-96f3-4ba9-8ac2-e23c19c8aec8"
      unitRef="number">0.05</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0b02a0e6e9304460bfa26721db27311e_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNS01LTEtMS0xMDg4MDg_7ded8e71-48cf-409c-b369-4a99bd6424e0"
      unitRef="usd">130924000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="ic796520033134acfbb5cc92697ab0940_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNS03LTEtMS0xMDg4MDg_a74a9364-f739-4a03-a462-fe0e1ac8b6be"
      unitRef="number">0.06</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia5f935417e794e2687aa7772fa649538_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNS05LTEtMS0xMTIzODU_b1fe47c7-48d5-4526-a162-6bb1bf6bb9be"
      unitRef="usd">122962000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="iac456e4d85334d1fa785dc56bb25d8ef_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNS0xMS0xLTEtMTEyMzg1_5302ec8a-6375-4f42-9e8d-c4f1b03d4dc0"
      unitRef="number">0.07</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ifbd2bcfa5cfd4b1791de98dd0dd0434c_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNi0xLTEtMS0xMDAwMDI_b6432b83-5344-4d3d-87b0-00458eea1886"
      unitRef="usd">114022000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i0cad56f764494289bf4f2c006ba73045_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNi0zLTEtMS0xMDAwMDI_45a4b678-9d29-4e30-a828-a3fe72712d7c"
      unitRef="number">0.04</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i20ba381216004a9ab923d1069a5dfb1c_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNi01LTEtMS0xMDAwMDI_0160c94c-cd3f-49b8-97d7-69eec3c81cd7"
      unitRef="usd">86406000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i539cb43050d34fc192acf5628e380dda_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNi03LTEtMS0xMDAwMDI_06cd7193-ccf0-4943-9b16-a1f39a5dbdd9"
      unitRef="number">0.04</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ibbe89c0040d246b0824189e23bb7c352_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNi05LTEtMS0xMDAwMDI_383b8e00-155e-40cd-85ba-8a0d4a6fee4f"
      unitRef="usd">62672000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i2e43f1472ff149b8995b7e90c7664e3a_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNi0xMS0xLTEtMTAwMDAy_cfb98eef-b456-441d-8b1a-19c5b817360b"
      unitRef="number">0.04</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i7f31d5a0f769466eb8d01b8a18e6b3ec_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNy0xLTEtMS0xMDAwMDI_1d75eab1-0975-4f83-a5c7-5a94285a3b8b"
      unitRef="usd">63498000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="ic6778f5307c143028eadf8e698c38873_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNy0zLTEtMS0xMDAwMDI_5269794e-edcd-47bd-be59-72ca1989ba5d"
      unitRef="number">0.02</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i15b0e10fba8f416dab5e5dc5b6fc32b5_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNy01LTEtMS0xMDAwMDI_8630c432-f092-403e-8dc7-bd977a1395fd"
      unitRef="usd">59381000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i9a158b469e8348eba5d70f3904827c6a_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNy03LTEtMS0xMDAwMDI_bb02cd44-fc44-4ef3-b012-126c9b296df4"
      unitRef="number">0.03</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="icbc083716032440bb12d8c170a33e188_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNy05LTEtMS0xMDAwMDI_4d76d544-646a-4eef-81c5-352bef9b31b1"
      unitRef="usd">49648000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="ie5c1bccd5ca74442b64b86677f204b31_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfNy0xMS0xLTEtMTAwMDAy_ae042ab0-4020-45cd-b36d-c22686351d2b"
      unitRef="number">0.03</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i2387e609defe4bfbbd48129aacba1557_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfOC0xLTEtMS0xMDAwMDI_3a709743-db55-4f3d-afe0-4b2e9f975aad"
      unitRef="usd">61295000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i6574fc1beb3b4269b75d343e412a7512_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfOC0zLTEtMS0xMDAwMDI_f6fffbfe-535a-40bb-9a5e-e6419832fc86"
      unitRef="number">0.02</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0450661597cd47d6acad7b0b043854c7_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfOC01LTEtMS0xMDAwMDI_059a7a11-c065-40ed-b144-9ac598fc8aad"
      unitRef="usd">50255000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i577c77750b47425c8f33cdb1acbffaa0_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfOC03LTEtMS0xMDAwMDI_6330d854-6e13-4431-8d31-92c9f78b116e"
      unitRef="number">0.03</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i579058115d854962852a0c0c020b848e_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfOC05LTEtMS0xMDAwMDI_293f590d-8744-4b86-af5b-b6cb8de8af76"
      unitRef="usd">46984000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="iea170dfedd8342679726aaf6ee933209_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfOC0xMS0xLTEtMTAwMDAy_dbf583c5-1f1e-4b04-a346-b03dbc3690f1"
      unitRef="number">0.03</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i714c6a6e03a745a1960e415673ce94cc_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfOS0xLTEtMS0xMDAwMDI_fa0a5cf3-f069-4152-a242-5915ee4b3f9e"
      unitRef="usd">197118000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i553fae334b394ef9b1db3a9c8f3018c3_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfOS0zLTEtMS0xMDAwMDI_55ba4712-4200-4f1f-87c5-8a53a55589f2"
      unitRef="number">0.07</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i7137fa9dac194edd89398633df6c11ee_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfOS01LTEtMS0xMDAwMDI_789ceb84-7d2b-46df-abe3-13caf9ba6b96"
      unitRef="usd">131522000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="ic5f159d9be6b4850bee5e384989093f6_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfOS03LTEtMS0xMDAwMDI_9879b9a1-bced-4aef-9a1d-73ea053f5c94"
      unitRef="number">0.07</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i9f4f7decae0a447485fdbda25b367517_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfOS05LTEtMS0xMDAwMDI_949d37d9-b0a6-4e7c-b81d-c73c2127ff31"
      unitRef="usd">101995000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="iad72824efc0e468bbc47c1fbffa3bbdf_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfOS0xMS0xLTEtMTAwMDAy_c794a80c-8d51-44cb-ae73-fb7128f84b0d"
      unitRef="number">0.06</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i2d35d588ac814750960fa44ccd8924c7_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTAtMS0xLTEtMTAwMDAy_b39a2d9a-be9b-4d54-83ca-766e763c0352"
      unitRef="usd">2513557000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i640203d72028498cb58a2aada4477c30_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTAtMy0xLTEtMTAwMDAy_6c3949d5-f5d5-44c9-8d3a-f9fe0b79d172"
      unitRef="number">0.94</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i058aee33e1ae4e7ea7c4e001acd0fe23_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTAtNS0xLTEtMTAwMDAy_b71a644d-5aee-4e2c-9aa2-5303f7ffe98e"
      unitRef="usd">1941543000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i12474e1f662f42fbbedc8f3efd6efafe_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTAtNy0xLTEtMTAwMDAy_f22dd053-2f66-48fd-ad47-da72f85ac3f5"
      unitRef="number">0.99</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="id2d41c8d41384eeeaf9ee426845b2878_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTAtOS0xLTEtMTAwMDAy_1cc478ed-80e6-4b89-878b-4bb6c9d790ff"
      unitRef="usd">1636361000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="ia2a7cbed12734e45ae11bece11d00329_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTAtMTEtMS0xLTEwMDAwMg_3bd010c3-e1be-4b92-906f-e6854a86dc38"
      unitRef="number">0.99</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i154b4f910769468197d54dd62cf18926_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTEtMS0xLTEtMTAyNjc3_8a33b412-d8e0-4598-8739-63b0591dca4f"
      unitRef="usd">156287000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i3199543710734f1ab38102916fc0efa3_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTEtMy0xLTEtMTAxMzMx_355ea309-8816-491e-b79c-34d51973f68e"
      unitRef="number">0.06</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i2a0513d7c7cf474f830f5ebc3dd23679_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTEtNS0xLTEtMTAyNjc3_342c55be-27ef-49f6-88be-40bef46de81b"
      unitRef="usd">27107000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="icb1e06985f2c497e9edb6973274e806d_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTEtNy0xLTEtMTAxMzMx_43eebbee-d8dd-4219-a15b-81d654d8e583"
      unitRef="number">0.01</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i7656c84a58b14f80b5f2e2b15f8f3885_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTEtOS0xLTEtMTAyNjc3_1afbbaba-327a-4e2a-b7ea-4761f0cb0ac8"
      unitRef="usd">16864000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="ifeafca1fab0e4768bd944624db05cf9d_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTEtMTEtMS0xLTEwMTMyMw_584a2883-cbf1-4282-942c-8b154fcdb0a5"
      unitRef="number">0.01</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTItMS0xLTEtMTAyNjcy_d581e948-9c72-4afb-94db-5b77e420120a"
      unitRef="usd">2669844000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="iae4047cbe4fd44928d016f399247a6f8_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTItMy0xLTEtMTAxMzMx_a0949edd-9268-4e5f-b773-fa31627f3962"
      unitRef="number">1</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTItNS0xLTEtMTAyNjcy_f3d5fb55-5386-4949-a215-20fac16124f6"
      unitRef="usd">1968650000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i36ae3d68230b48ceac0beacdffde9a61_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTItNy0xLTEtMTAxMzMx_6eef3bde-06d6-4d09-90d2-2faaa183603b"
      unitRef="number">1</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTItOS0xLTEtMTAyNjcy_39ce9257-2120-46c6-a7e4-b980cc0776c3"
      unitRef="usd">1653225000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i046acb42ec684d8292fb6a29219493bf_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjM5YjA1YjViZjAzMTQwOWY4MTcyNGUyYTUwN2JmYThiL3RhYmxlcmFuZ2U6MzliMDViNWJmMDMxNDA5ZjgxNzI0ZTJhNTA3YmZhOGJfMTItMTEtMS0xLTEwMTMyMw_c5c3a98c-8eda-4160-a230-e8e504bbeafb"
      unitRef="number">1</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RleHRyZWdpb246ODZmZDQ2ODlkMTgzNDMyYTlmNjAxYTQzOGQxZjQ0OTFfMjA4Mw_8f12cb14-c29a-4b9f-9ae8-3cdf54fab20f">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Contract assets and liabilities related to our uncompleted contracts and customer deposits were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:74.777%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.595%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.598%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Contract assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29,431&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,679&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Contract liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(18,884)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(14,153)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock>
    <us-gaap:ContractWithCustomerAssetNet
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOmQ2ZGQ5ODg3Nzg5MDQwMDE4MDI2MDI4OTg3MzRlNDljL3RhYmxlcmFuZ2U6ZDZkZDk4ODc3ODkwNDAwMTgwMjYwMjg5ODczNGU0OWNfMi0xLTEtMS0xMDAwMDI_a09a5987-295e-4d9b-b396-2c21a776c9f4"
      unitRef="usd">29431000</us-gaap:ContractWithCustomerAssetNet>
    <us-gaap:ContractWithCustomerAssetNet
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOmQ2ZGQ5ODg3Nzg5MDQwMDE4MDI2MDI4OTg3MzRlNDljL3RhYmxlcmFuZ2U6ZDZkZDk4ODc3ODkwNDAwMTgwMjYwMjg5ODczNGU0OWNfMi0zLTEtMS0xMDAwMDI_d350e49e-d0e9-4f04-8b7e-85a8584a9ef2"
      unitRef="usd">32679000</us-gaap:ContractWithCustomerAssetNet>
    <us-gaap:ContractWithCustomerLiability
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOmQ2ZGQ5ODg3Nzg5MDQwMDE4MDI2MDI4OTg3MzRlNDljL3RhYmxlcmFuZ2U6ZDZkZDk4ODc3ODkwNDAwMTgwMjYwMjg5ODczNGU0OWNfMy0xLTEtMS0xMDAwMDI_b5981de4-1632-4bd4-8670-a9e45ce9ff51"
      unitRef="usd">18884000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOmQ2ZGQ5ODg3Nzg5MDQwMDE4MDI2MDI4OTg3MzRlNDljL3RhYmxlcmFuZ2U6ZDZkZDk4ODc3ODkwNDAwMTgwMjYwMjg5ODczNGU0OWNfMy0zLTEtMS0xMDAwMDI_2a531a9a-44c1-447f-9cbb-d92d31fc2ce5"
      unitRef="usd">14153000</us-gaap:ContractWithCustomerLiability>
    <ibp:CostsAndEstimatedEarningsOnUncompletedContractsTableTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RleHRyZWdpb246ODZmZDQ2ODlkMTgzNDMyYTlmNjAxYTQzOGQxZjQ0OTFfMjA4NA_997e2c29-5996-4c31-a06e-5950347c3193">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Uncompleted contracts were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:74.777%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.595%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.598%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Costs incurred on uncompleted contracts&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;273,788&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;206,050&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Estimated earnings&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;114,781&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;106,163&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;388,569&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;312,213&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: Billings to date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;368,009&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;285,978&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net under billings&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,560&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,235&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</ibp:CostsAndEstimatedEarningsOnUncompletedContractsTableTextBlock>
    <ibp:CostsIncurredOnUncompletedContracts
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU3YWZjNjQzYWE0ODRiYzY4NjMxMmVkZmU3NjgxYWNhL3RhYmxlcmFuZ2U6NTdhZmM2NDNhYTQ4NGJjNjg2MzEyZWRmZTc2ODFhY2FfMi0xLTEtMS0xMDAwMDI_9a249605-1898-45a7-83ee-86d7a24951f2"
      unitRef="usd">273788000</ibp:CostsIncurredOnUncompletedContracts>
    <ibp:CostsIncurredOnUncompletedContracts
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU3YWZjNjQzYWE0ODRiYzY4NjMxMmVkZmU3NjgxYWNhL3RhYmxlcmFuZ2U6NTdhZmM2NDNhYTQ4NGJjNjg2MzEyZWRmZTc2ODFhY2FfMi0zLTEtMS0xMDAwMDI_87c46786-0435-429f-8e61-84fe011d2db5"
      unitRef="usd">206050000</ibp:CostsIncurredOnUncompletedContracts>
    <ibp:EstimatedEarningsOnLongTermContracts
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU3YWZjNjQzYWE0ODRiYzY4NjMxMmVkZmU3NjgxYWNhL3RhYmxlcmFuZ2U6NTdhZmM2NDNhYTQ4NGJjNjg2MzEyZWRmZTc2ODFhY2FfMy0xLTEtMS0xMDAwMDI_b60d4395-c5c6-4e5c-b7bd-7ea13bf7e7ee"
      unitRef="usd">114781000</ibp:EstimatedEarningsOnLongTermContracts>
    <ibp:EstimatedEarningsOnLongTermContracts
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU3YWZjNjQzYWE0ODRiYzY4NjMxMmVkZmU3NjgxYWNhL3RhYmxlcmFuZ2U6NTdhZmM2NDNhYTQ4NGJjNjg2MzEyZWRmZTc2ODFhY2FfMy0zLTEtMS0xMDAwMDI_60fd9e4c-ff3b-4451-9c70-e6e7b9187b32"
      unitRef="usd">106163000</ibp:EstimatedEarningsOnLongTermContracts>
    <us-gaap:ReceivablesLongTermContractsOrPrograms
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU3YWZjNjQzYWE0ODRiYzY4NjMxMmVkZmU3NjgxYWNhL3RhYmxlcmFuZ2U6NTdhZmM2NDNhYTQ4NGJjNjg2MzEyZWRmZTc2ODFhY2FfNC0xLTEtMS0xMDAwMDI_21841b4e-0aa1-4651-92b5-080c3f85cea5"
      unitRef="usd">388569000</us-gaap:ReceivablesLongTermContractsOrPrograms>
    <us-gaap:ReceivablesLongTermContractsOrPrograms
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU3YWZjNjQzYWE0ODRiYzY4NjMxMmVkZmU3NjgxYWNhL3RhYmxlcmFuZ2U6NTdhZmM2NDNhYTQ4NGJjNjg2MzEyZWRmZTc2ODFhY2FfNC0zLTEtMS0xMDAwMDI_88c19cdf-99b2-4ab2-b44b-90b4c004813f"
      unitRef="usd">312213000</us-gaap:ReceivablesLongTermContractsOrPrograms>
    <us-gaap:BilledContractReceivables
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU3YWZjNjQzYWE0ODRiYzY4NjMxMmVkZmU3NjgxYWNhL3RhYmxlcmFuZ2U6NTdhZmM2NDNhYTQ4NGJjNjg2MzEyZWRmZTc2ODFhY2FfNS0xLTEtMS0xMDAwMDI_a94a2b0f-3922-4f98-87fb-1d22ff32f800"
      unitRef="usd">368009000</us-gaap:BilledContractReceivables>
    <us-gaap:BilledContractReceivables
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU3YWZjNjQzYWE0ODRiYzY4NjMxMmVkZmU3NjgxYWNhL3RhYmxlcmFuZ2U6NTdhZmM2NDNhYTQ4NGJjNjg2MzEyZWRmZTc2ODFhY2FfNS0zLTEtMS0xMDAwMDI_b580135f-85f3-4781-81e0-837d5846b374"
      unitRef="usd">285978000</us-gaap:BilledContractReceivables>
    <ibp:CostAndEstimatedEarningsUnderOverBillingsNet
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU3YWZjNjQzYWE0ODRiYzY4NjMxMmVkZmU3NjgxYWNhL3RhYmxlcmFuZ2U6NTdhZmM2NDNhYTQ4NGJjNjg2MzEyZWRmZTc2ODFhY2FfNi0xLTEtMS0xMDAwMDI_144c9cf6-9d13-4fde-9b43-67cc809989c7"
      unitRef="usd">20560000</ibp:CostAndEstimatedEarningsUnderOverBillingsNet>
    <ibp:CostAndEstimatedEarningsUnderOverBillingsNet
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOjU3YWZjNjQzYWE0ODRiYzY4NjMxMmVkZmU3NjgxYWNhL3RhYmxlcmFuZ2U6NTdhZmM2NDNhYTQ4NGJjNjg2MzEyZWRmZTc2ODFhY2FfNi0zLTEtMS0xMDAwMDI_b2c8098f-9049-4b9d-bd0d-820150299265"
      unitRef="usd">26235000</ibp:CostAndEstimatedEarningsUnderOverBillingsNet>
    <us-gaap:CostsInExcessOfBillingsAndBillingsInExcessOfCostsTableTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RleHRyZWdpb246ODZmZDQ2ODlkMTgzNDMyYTlmNjAxYTQzOGQxZjQ0OTFfMjA4NQ_4c47ff5e-e46d-456e-8331-3032bc105bf5">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Net under billings were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:74.777%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.595%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.598%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Costs and estimated earnings in excess of billings on uncompleted contracts (contract assets)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29,431&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,679&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Billings in excess of costs and estimated earnings on uncompleted contracts (contract liabilities)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(8,871)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,444)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net under billings&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,560&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,235&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:CostsInExcessOfBillingsAndBillingsInExcessOfCostsTableTextBlock>
    <ibp:CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOmJhNTg2ZDk4ZjZjOTQ3ZDQ5YjZkMDcwMGI5Y2I0ODY1L3RhYmxlcmFuZ2U6YmE1ODZkOThmNmM5NDdkNDliNmQwNzAwYjljYjQ4NjVfMi0xLTEtMS0xMDAwMDI_9fb3ad69-3178-4774-adb9-d3f4f6f543af"
      unitRef="usd">29431000</ibp:CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts>
    <ibp:CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOmJhNTg2ZDk4ZjZjOTQ3ZDQ5YjZkMDcwMGI5Y2I0ODY1L3RhYmxlcmFuZ2U6YmE1ODZkOThmNmM5NDdkNDliNmQwNzAwYjljYjQ4NjVfMi0zLTEtMS0xMDAwMDI_2b07bb53-d849-4fd2-8baa-e22147844787"
      unitRef="usd">32679000</ibp:CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts>
    <ibp:BillingsInExcessOfCostOnUncompletedContracts
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOmJhNTg2ZDk4ZjZjOTQ3ZDQ5YjZkMDcwMGI5Y2I0ODY1L3RhYmxlcmFuZ2U6YmE1ODZkOThmNmM5NDdkNDliNmQwNzAwYjljYjQ4NjVfMy0xLTEtMS0xMDAwMDI_00f95ff7-82e7-4455-a135-5e85c4e21ebd"
      unitRef="usd">8871000</ibp:BillingsInExcessOfCostOnUncompletedContracts>
    <ibp:BillingsInExcessOfCostOnUncompletedContracts
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOmJhNTg2ZDk4ZjZjOTQ3ZDQ5YjZkMDcwMGI5Y2I0ODY1L3RhYmxlcmFuZ2U6YmE1ODZkOThmNmM5NDdkNDliNmQwNzAwYjljYjQ4NjVfMy0zLTEtMS0xMDAwMDI_b68d1791-d1bb-4663-9d28-349ba060c72b"
      unitRef="usd">6444000</ibp:BillingsInExcessOfCostOnUncompletedContracts>
    <ibp:CostAndEstimatedEarningsUnderOverBillingsNet
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOmJhNTg2ZDk4ZjZjOTQ3ZDQ5YjZkMDcwMGI5Y2I0ODY1L3RhYmxlcmFuZ2U6YmE1ODZkOThmNmM5NDdkNDliNmQwNzAwYjljYjQ4NjVfNC0xLTEtMS0xMDAwMDI_d7dc1605-f9fe-4577-a15b-8f07f905571a"
      unitRef="usd">20560000</ibp:CostAndEstimatedEarningsUnderOverBillingsNet>
    <ibp:CostAndEstimatedEarningsUnderOverBillingsNet
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RhYmxlOmJhNTg2ZDk4ZjZjOTQ3ZDQ5YjZkMDcwMGI5Y2I0ODY1L3RhYmxlcmFuZ2U6YmE1ODZkOThmNmM5NDdkNDliNmQwNzAwYjljYjQ4NjVfNC0zLTEtMS0xMDAwMDI_800c1c95-a19e-4791-957d-4c65bf11996c"
      unitRef="usd">26235000</ibp:CostAndEstimatedEarningsUnderOverBillingsNet>
    <us-gaap:ContractWithCustomerLiabilityRevenueRecognized
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RleHRyZWdpb246ODZmZDQ2ODlkMTgzNDMyYTlmNjAxYTQzOGQxZjQ0OTFfMTQ0OA_cfd02d27-82b4-4ccf-b63f-ad9722cbe9ec"
      unitRef="usd">13700000</us-gaap:ContractWithCustomerLiabilityRevenueRecognized>
    <us-gaap:CapitalizedContractCostImpairmentLoss
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RleHRyZWdpb246ODZmZDQ2ODlkMTgzNDMyYTlmNjAxYTQzOGQxZjQ0OTFfMTUyOA_6facb4f7-4731-4639-b287-8568a60d2e35"
      unitRef="usd">0</us-gaap:CapitalizedContractCostImpairmentLoss>
    <us-gaap:CapitalizedContractCostImpairmentLoss
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RleHRyZWdpb246ODZmZDQ2ODlkMTgzNDMyYTlmNjAxYTQzOGQxZjQ0OTFfMTUyOA_fa9efdc0-4599-4a5a-bc48-edec5dddc7e2"
      unitRef="usd">0</us-gaap:CapitalizedContractCostImpairmentLoss>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RleHRyZWdpb246ODZmZDQ2ODlkMTgzNDMyYTlmNjAxYTQzOGQxZjQ0OTFfMTkzMQ_816b78b0-1f2c-4d83-9ea8-2afb5e135f6f"
      unitRef="usd">162300000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="ib30aa65e28784187b4011d9ec85050da_I20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85MS9mcmFnOjg2ZmQ0Njg5ZDE4MzQzMmE5ZjYwMWE0MzhkMWY0NDkxL3RleHRyZWdpb246ODZmZDQ2ODlkMTgzNDMyYTlmNjAxYTQzOGQxZjQ0OTFfMjA3OA_f93f8a1e-e54b-44eb-a8a0-a39ff4555d12">P18M</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1>
    <us-gaap:AllowanceForCreditLossesTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RleHRyZWdpb246ZmFmNzY5YzZmZTc0NDE4OGJhYWM5MjhjM2EwZjU4N2VfMTI3Mw_a118dc12-9e3f-4ece-b4e0-dcfd8f769234">CREDIT LOSSES&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We account for credit losses under ASC 326 using an expected credit loss impairment model for financial instruments, including trade receivables, retainage receivables and contract assets (unbilled receivables). We consider information such as historical experience, present economic conditions and other relevant factors management considers relevant to estimate expected credit losses. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Upon adoption of ASC 326 on January 1, 2020 under the modified retrospective approach, we recorded a cumulative effect adjustment to retained earnings of $1.2 million, net of $0.4 million of income taxes, on the opening consolidated balance sheet as of January 1, 2020. The adoption of the credit loss standard had no impact to cash from or used in operating, financing or investing activities on our consolidated cash flow statements.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Changes in our allowance for credit losses were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:67.690%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:83.565%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.235%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;January 1, 2020&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,878&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cumulative effect of change in accounting principle&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,600&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current period provision&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,444&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Recoveries collected and additions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;503&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amounts written off&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,636)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,789&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current period provision&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,227&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Recoveries collected and additions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;574&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amounts written off&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,873)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,717&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current period provision&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,129&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Recoveries collected and additions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;334&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amounts written off&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,631)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,549&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:AllowanceForCreditLossesTextBlock>
    <us-gaap:StockholdersEquity
      contextRef="i3271f5b5175c4fc9a105b687f91568d7_I20200101"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RleHRyZWdpb246ZmFmNzY5YzZmZTc0NDE4OGJhYWM5MjhjM2EwZjU4N2VfOTM1_a13269dc-8059-47f5-8385-17177d1a1486"
      unitRef="usd">-1200000</us-gaap:StockholdersEquity>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="id8d95aa0fd3544948b8bd65b4bc2fce9_I20200101"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RleHRyZWdpb246ZmFmNzY5YzZmZTc0NDE4OGJhYWM5MjhjM2EwZjU4N2VfOTQ2_6d8161d0-3480-4686-91d1-36cc367efb84"
      unitRef="usd">400000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RleHRyZWdpb246ZmFmNzY5YzZmZTc0NDE4OGJhYWM5MjhjM2EwZjU4N2VfMTI3NA_a6f976fd-f924-4a28-a451-0378a73e3e44">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Changes in our allowance for credit losses were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:67.690%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:83.565%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.235%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;January 1, 2020&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,878&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cumulative effect of change in accounting principle&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,600&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current period provision&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,444&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Recoveries collected and additions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;503&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amounts written off&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,636)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,789&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current period provision&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,227&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Recoveries collected and additions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;574&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amounts written off&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,873)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,717&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current period provision&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,129&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Recoveries collected and additions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;334&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 16pt;text-align:left;text-indent:-9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amounts written off&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,631)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,549&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="iff4d4f6f690d4bce8ad0aafed6fdedd3_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RhYmxlOmIzM2UyOWEwMDQxNDQ4MjhhNDMxYzA2Y2VkOTY3YjY0L3RhYmxlcmFuZ2U6YjMzZTI5YTAwNDE0NDgyOGE0MzFjMDZjZWQ5NjdiNjRfMC0xLTEtMS0xMDAwMDI_aa4f6569-85df-4ae8-a662-be94a7961cf0"
      unitRef="usd">6878000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="i13c43fa46b9b49a2ac465da3f32b17f3_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RhYmxlOmIzM2UyOWEwMDQxNDQ4MjhhNDMxYzA2Y2VkOTY3YjY0L3RhYmxlcmFuZ2U6YjMzZTI5YTAwNDE0NDgyOGE0MzFjMDZjZWQ5NjdiNjRfMS0xLTEtMS0xMDAwMDI_854dd15d-cd2c-48f0-b22a-ae2bd8499745"
      unitRef="usd">1600000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RhYmxlOmIzM2UyOWEwMDQxNDQ4MjhhNDMxYzA2Y2VkOTY3YjY0L3RhYmxlcmFuZ2U6YjMzZTI5YTAwNDE0NDgyOGE0MzFjMDZjZWQ5NjdiNjRfMi0xLTEtMS0xMDAwMDI_a67c48f7-c63f-454f-a5a5-62a604c1afef"
      unitRef="usd">4444000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RhYmxlOmIzM2UyOWEwMDQxNDQ4MjhhNDMxYzA2Y2VkOTY3YjY0L3RhYmxlcmFuZ2U6YjMzZTI5YTAwNDE0NDgyOGE0MzFjMDZjZWQ5NjdiNjRfMy0xLTEtMS0xMDAwMDI_a76f7945-c900-4026-83b6-addc5b06e181"
      unitRef="usd">503000</us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RhYmxlOmIzM2UyOWEwMDQxNDQ4MjhhNDMxYzA2Y2VkOTY3YjY0L3RhYmxlcmFuZ2U6YjMzZTI5YTAwNDE0NDgyOGE0MzFjMDZjZWQ5NjdiNjRfNC0xLTEtMS0xMDAwMDI_cfcfd35a-eb93-4017-b6a3-3358b5967887"
      unitRef="usd">4636000</us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="i61f3c1563a76427b8e6b9d432aa44d9a_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RhYmxlOmIzM2UyOWEwMDQxNDQ4MjhhNDMxYzA2Y2VkOTY3YjY0L3RhYmxlcmFuZ2U6YjMzZTI5YTAwNDE0NDgyOGE0MzFjMDZjZWQ5NjdiNjRfNS0xLTEtMS0xMDAwMDI_18f3359a-1bfc-46cc-9355-ca1b51a6582e"
      unitRef="usd">8789000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RhYmxlOmIzM2UyOWEwMDQxNDQ4MjhhNDMxYzA2Y2VkOTY3YjY0L3RhYmxlcmFuZ2U6YjMzZTI5YTAwNDE0NDgyOGE0MzFjMDZjZWQ5NjdiNjRfNi0xLTEtMS0xMDAwMDI_df77fc30-09ff-4876-ac09-57824edb4bde"
      unitRef="usd">2227000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RhYmxlOmIzM2UyOWEwMDQxNDQ4MjhhNDMxYzA2Y2VkOTY3YjY0L3RhYmxlcmFuZ2U6YjMzZTI5YTAwNDE0NDgyOGE0MzFjMDZjZWQ5NjdiNjRfNy0xLTEtMS0xMDAwMDI_3b2677a2-cf14-4cb8-941a-78506c07bf51"
      unitRef="usd">574000</us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RhYmxlOmIzM2UyOWEwMDQxNDQ4MjhhNDMxYzA2Y2VkOTY3YjY0L3RhYmxlcmFuZ2U6YjMzZTI5YTAwNDE0NDgyOGE0MzFjMDZjZWQ5NjdiNjRfOC0xLTEtMS0xMDAwMDI_c70d0800-6883-4ba9-84e9-016e2a4f34d6"
      unitRef="usd">2873000</us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RhYmxlOmIzM2UyOWEwMDQxNDQ4MjhhNDMxYzA2Y2VkOTY3YjY0L3RhYmxlcmFuZ2U6YjMzZTI5YTAwNDE0NDgyOGE0MzFjMDZjZWQ5NjdiNjRfOS0xLTEtMS0xMDAwMDI_460931be-0d38-4ca6-871d-e5270c8242cb"
      unitRef="usd">8717000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RhYmxlOmIzM2UyOWEwMDQxNDQ4MjhhNDMxYzA2Y2VkOTY3YjY0L3RhYmxlcmFuZ2U6YjMzZTI5YTAwNDE0NDgyOGE0MzFjMDZjZWQ5NjdiNjRfMTEtMS0xLTEtMTAwMDAy_8e8d4e24-9628-469c-bd5f-d4f66d897159"
      unitRef="usd">4129000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RhYmxlOmIzM2UyOWEwMDQxNDQ4MjhhNDMxYzA2Y2VkOTY3YjY0L3RhYmxlcmFuZ2U6YjMzZTI5YTAwNDE0NDgyOGE0MzFjMDZjZWQ5NjdiNjRfMTItMS0xLTEtMTAwMDAy_9e8f352a-a4d1-4c0d-97f4-cf347de37567"
      unitRef="usd">334000</us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RhYmxlOmIzM2UyOWEwMDQxNDQ4MjhhNDMxYzA2Y2VkOTY3YjY0L3RhYmxlcmFuZ2U6YjMzZTI5YTAwNDE0NDgyOGE0MzFjMDZjZWQ5NjdiNjRfMTItMS0xLTEtMTAwMDAy_dd790568-a1e9-4082-99dd-3a943a3d0838"
      unitRef="usd">334000</us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RhYmxlOmIzM2UyOWEwMDQxNDQ4MjhhNDMxYzA2Y2VkOTY3YjY0L3RhYmxlcmFuZ2U6YjMzZTI5YTAwNDE0NDgyOGE0MzFjMDZjZWQ5NjdiNjRfMTMtMS0xLTEtMTAwMDAy_20f944e3-3f49-4c7b-88f9-9f0e781f03c8"
      unitRef="usd">3631000</us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RhYmxlOmIzM2UyOWEwMDQxNDQ4MjhhNDMxYzA2Y2VkOTY3YjY0L3RhYmxlcmFuZ2U6YjMzZTI5YTAwNDE0NDgyOGE0MzFjMDZjZWQ5NjdiNjRfMTMtMS0xLTEtMTAwMDAy_b0f5a8f2-538c-4fcc-8019-e5b033abc21b"
      unitRef="usd">3631000</us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85NC9mcmFnOmZhZjc2OWM2ZmU3NDQxODhiYWFjOTI4YzNhMGY1ODdlL3RhYmxlOmIzM2UyOWEwMDQxNDQ4MjhhNDMxYzA2Y2VkOTY3YjY0L3RhYmxlcmFuZ2U6YjMzZTI5YTAwNDE0NDgyOGE0MzFjMDZjZWQ5NjdiNjRfMTQtMS0xLTEtMTAwMDAy_567c4e34-d564-4703-91f6-d02d975f2f37"
      unitRef="usd">9549000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85Ny9mcmFnOmU1Y2YyYTYzNTMzNzRiOTE4M2JiNzRlOTZkOTI5ZDllL3RleHRyZWdpb246ZTVjZjJhNjM1MzM3NGI5MTgzYmI3NGU5NmQ5MjlkOWVfMzU5_0aee6d20-6f0a-4149-ae3e-002bd88227ea">CASH AND CASH EQUIVALENTSCash and cash equivalents include highly liquid instruments with insignificant interest rate risk and original or remaining maturities of three months or less at the time of purchase. These instruments amounted to $191.9 million and $258.1 million as of December&#160;31, 2022 and 2021, respectively. See Note 10, Fair Value Measurements, for additional information.</us-gaap:InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock>
    <us-gaap:MoneyMarketFundsAtCarryingValue
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85Ny9mcmFnOmU1Y2YyYTYzNTMzNzRiOTE4M2JiNzRlOTZkOTI5ZDllL3RleHRyZWdpb246ZTVjZjJhNjM1MzM3NGI5MTgzYmI3NGU5NmQ5MjlkOWVfMjU0_4bb93d70-b915-46c5-9cf9-b2ec148534e8"
      unitRef="usd">191900000</us-gaap:MoneyMarketFundsAtCarryingValue>
    <us-gaap:MoneyMarketFundsAtCarryingValue
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF85Ny9mcmFnOmU1Y2YyYTYzNTMzNzRiOTE4M2JiNzRlOTZkOTI5ZDllL3RleHRyZWdpb246ZTVjZjJhNjM1MzM3NGI5MTgzYmI3NGU5NmQ5MjlkOWVfMjYx_309913e4-e65c-4156-83b4-7408f535adf3"
      unitRef="usd">258100000</us-gaap:MoneyMarketFundsAtCarryingValue>
    <us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90ZXh0cmVnaW9uOmY3NWIzYzk2MGJlZTQxNzRiODg1ZjAxOGRiMWQ0MDNlXzM3OQ_21a62bad-80a7-454d-97bb-36e701958436">PROPERTY AND EQUIPMENT&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Property and equipment consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:76.315%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.608%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.757%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.569%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Land&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;108&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;108&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Buildings&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,901&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,901&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Leasehold improvements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,620&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,935&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Furniture, fixtures and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;74,175&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;64,556&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Vehicles and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;287,336&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;248,848&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;378,140&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;328,348&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: accumulated depreciation and amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(259,366)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(222,415)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;118,774&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;105,933&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We recorded the following depreciation and amortization expense on our property and equipment, by income statement category (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:65.058%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:38.225%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.450%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.923%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.450%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.698%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.454%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cost of sales&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;44,410&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;40,938&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39,011&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,873&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,623&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,328&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock>
    <us-gaap:PropertyPlantAndEquipmentTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90ZXh0cmVnaW9uOmY3NWIzYzk2MGJlZTQxNzRiODg1ZjAxOGRiMWQ0MDNlXzM4MA_558a2e55-6154-4d2c-a5cf-1ae96797c003">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Property and equipment consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:76.315%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.608%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.757%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.569%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Land&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;108&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;108&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Buildings&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,901&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,901&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Leasehold improvements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,620&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,935&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Furniture, fixtures and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;74,175&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;64,556&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Vehicles and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;287,336&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;248,848&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;378,140&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;328,348&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: accumulated depreciation and amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(259,366)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(222,415)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;118,774&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;105,933&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:PropertyPlantAndEquipmentTextBlock>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="iacff88296ee841948f6f8833f5d738e3_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpjYWM3YjBhZDY3NGM0NzIzODMzNDIzZTE5ZjZiOTIwMC90YWJsZXJhbmdlOmNhYzdiMGFkNjc0YzQ3MjM4MzM0MjNlMTlmNmI5MjAwXzItMS0xLTEtMTAwMDAy_f70f5ff3-e5d4-4efa-94ca-77c8b5e06058"
      unitRef="usd">108000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="i4749b30589424316bd69b23b56a606fe_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpjYWM3YjBhZDY3NGM0NzIzODMzNDIzZTE5ZjZiOTIwMC90YWJsZXJhbmdlOmNhYzdiMGFkNjc0YzQ3MjM4MzM0MjNlMTlmNmI5MjAwXzItMy0xLTEtMTAwMDAy_e0fbeb61-6001-4726-8d49-3f2c613003c5"
      unitRef="usd">108000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="ia0c4b431699c4f82bca0c162ff7d9a38_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpjYWM3YjBhZDY3NGM0NzIzODMzNDIzZTE5ZjZiOTIwMC90YWJsZXJhbmdlOmNhYzdiMGFkNjc0YzQ3MjM4MzM0MjNlMTlmNmI5MjAwXzMtMS0xLTEtMTAwMDAy_0e15c30c-c268-4fde-bfff-ff799526ce01"
      unitRef="usd">3901000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="i456d6630deea4c90975e809b465df5af_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpjYWM3YjBhZDY3NGM0NzIzODMzNDIzZTE5ZjZiOTIwMC90YWJsZXJhbmdlOmNhYzdiMGFkNjc0YzQ3MjM4MzM0MjNlMTlmNmI5MjAwXzMtMy0xLTEtMTAwMDAy_cb397e5f-c9d2-460e-8d32-d9b778e676af"
      unitRef="usd">3901000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="i33e19fcedb144007af8657125cb0236b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpjYWM3YjBhZDY3NGM0NzIzODMzNDIzZTE5ZjZiOTIwMC90YWJsZXJhbmdlOmNhYzdiMGFkNjc0YzQ3MjM4MzM0MjNlMTlmNmI5MjAwXzQtMS0xLTEtMTAwMDAy_76a04da0-a9b3-433c-808f-2969c65a2483"
      unitRef="usd">12620000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="i26ccc3d3ad794632b64823eceb0d2ada_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpjYWM3YjBhZDY3NGM0NzIzODMzNDIzZTE5ZjZiOTIwMC90YWJsZXJhbmdlOmNhYzdiMGFkNjc0YzQ3MjM4MzM0MjNlMTlmNmI5MjAwXzQtMy0xLTEtMTAwMDAy_3bb00319-49b2-49cc-a1b7-5bc38eb8cf2a"
      unitRef="usd">10935000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="i4679fc005b5e412a993a89dd24a90b64_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpjYWM3YjBhZDY3NGM0NzIzODMzNDIzZTE5ZjZiOTIwMC90YWJsZXJhbmdlOmNhYzdiMGFkNjc0YzQ3MjM4MzM0MjNlMTlmNmI5MjAwXzUtMS0xLTEtMTAwMDAy_7ecd0ac8-e2de-4b8e-b0c7-9b4244093ea8"
      unitRef="usd">74175000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="ibe00fb2189aa4840b83da6f5086b247d_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpjYWM3YjBhZDY3NGM0NzIzODMzNDIzZTE5ZjZiOTIwMC90YWJsZXJhbmdlOmNhYzdiMGFkNjc0YzQ3MjM4MzM0MjNlMTlmNmI5MjAwXzUtMy0xLTEtMTAwMDAy_6a4c27f8-6854-4f6c-8e97-2956744ab173"
      unitRef="usd">64556000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="ifa3dd9bfe2f8438fb1c83033e00c2112_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpjYWM3YjBhZDY3NGM0NzIzODMzNDIzZTE5ZjZiOTIwMC90YWJsZXJhbmdlOmNhYzdiMGFkNjc0YzQ3MjM4MzM0MjNlMTlmNmI5MjAwXzYtMS0xLTEtMTAwMDAy_1b6484e4-436e-4789-b01e-74b9c916a60d"
      unitRef="usd">287336000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="i2d43472522df43d295c3388a45db824c_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpjYWM3YjBhZDY3NGM0NzIzODMzNDIzZTE5ZjZiOTIwMC90YWJsZXJhbmdlOmNhYzdiMGFkNjc0YzQ3MjM4MzM0MjNlMTlmNmI5MjAwXzYtMy0xLTEtMTAwMDAy_6f046609-822e-496a-9469-1a0a05f6c67a"
      unitRef="usd">248848000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpjYWM3YjBhZDY3NGM0NzIzODMzNDIzZTE5ZjZiOTIwMC90YWJsZXJhbmdlOmNhYzdiMGFkNjc0YzQ3MjM4MzM0MjNlMTlmNmI5MjAwXzctMS0xLTEtMTAwMDAy_2df3d692-63d8-4fd1-a5eb-a0359d1b6b75"
      unitRef="usd">378140000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpjYWM3YjBhZDY3NGM0NzIzODMzNDIzZTE5ZjZiOTIwMC90YWJsZXJhbmdlOmNhYzdiMGFkNjc0YzQ3MjM4MzM0MjNlMTlmNmI5MjAwXzctMy0xLTEtMTAwMDAy_5b0edd61-7fb4-4c2a-9986-d27d18d84203"
      unitRef="usd">328348000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpjYWM3YjBhZDY3NGM0NzIzODMzNDIzZTE5ZjZiOTIwMC90YWJsZXJhbmdlOmNhYzdiMGFkNjc0YzQ3MjM4MzM0MjNlMTlmNmI5MjAwXzgtMS0xLTEtMTAwMDAy_cd3da408-8fa2-499f-b14a-814159301026"
      unitRef="usd">259366000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpjYWM3YjBhZDY3NGM0NzIzODMzNDIzZTE5ZjZiOTIwMC90YWJsZXJhbmdlOmNhYzdiMGFkNjc0YzQ3MjM4MzM0MjNlMTlmNmI5MjAwXzgtMy0xLTEtMTAwMDAy_bee33351-50ce-43bc-9900-aae688fae133"
      unitRef="usd">222415000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpjYWM3YjBhZDY3NGM0NzIzODMzNDIzZTE5ZjZiOTIwMC90YWJsZXJhbmdlOmNhYzdiMGFkNjc0YzQ3MjM4MzM0MjNlMTlmNmI5MjAwXzktMS0xLTEtMTAwMDAy_5f33ec98-ef5c-4c02-b142-80dd087c3936"
      unitRef="usd">118774000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpjYWM3YjBhZDY3NGM0NzIzODMzNDIzZTE5ZjZiOTIwMC90YWJsZXJhbmdlOmNhYzdiMGFkNjc0YzQ3MjM4MzM0MjNlMTlmNmI5MjAwXzktMy0xLTEtMTAwMDAy_5e260ed6-ff0c-41e2-b834-7626bedffcdc"
      unitRef="usd">105933000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization>
    <ibp:PropertyPlantAndEquipmentDepreciationAllocationCategoriesTableTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90ZXh0cmVnaW9uOmY3NWIzYzk2MGJlZTQxNzRiODg1ZjAxOGRiMWQ0MDNlXzM4MQ_56b1d164-1b60-444e-af76-807a48da3f2c">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We recorded the following depreciation and amortization expense on our property and equipment, by income statement category (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:65.058%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:38.225%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.450%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.923%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.450%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.698%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.454%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cost of sales&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;44,410&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;40,938&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39,011&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,873&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,623&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,328&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</ibp:PropertyPlantAndEquipmentDepreciationAllocationCategoriesTableTextBlock>
    <us-gaap:DepreciationAndAmortization
      contextRef="i7a6eb5745a4144d2ab6e5aac808bcfc0_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpiNWViMjcwNDQ2OTU0ZGQ3OGQ5NGFjNzE2ZTUxMzZlMS90YWJsZXJhbmdlOmI1ZWIyNzA0NDY5NTRkZDc4ZDk0YWM3MTZlNTEzNmUxXzItMS0xLTEtMTAwMDAy_1bc3f6e1-5279-48c2-9cd4-1ba3040b751b"
      unitRef="usd">44410000</us-gaap:DepreciationAndAmortization>
    <us-gaap:DepreciationAndAmortization
      contextRef="i0a4200e47afe46c5b7d789f3f7974feb_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpiNWViMjcwNDQ2OTU0ZGQ3OGQ5NGFjNzE2ZTUxMzZlMS90YWJsZXJhbmdlOmI1ZWIyNzA0NDY5NTRkZDc4ZDk0YWM3MTZlNTEzNmUxXzItMy0xLTEtMTAwMDAy_6c2cf0e3-5a05-4f54-b7ba-43ce250efb84"
      unitRef="usd">40938000</us-gaap:DepreciationAndAmortization>
    <us-gaap:DepreciationAndAmortization
      contextRef="i0c7f2b33da3b468daa7598e99d5f9d12_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpiNWViMjcwNDQ2OTU0ZGQ3OGQ5NGFjNzE2ZTUxMzZlMS90YWJsZXJhbmdlOmI1ZWIyNzA0NDY5NTRkZDc4ZDk0YWM3MTZlNTEzNmUxXzItNS0xLTEtMTAwMDAy_74ccdcff-523f-4208-a342-1ba5a44c132f"
      unitRef="usd">39011000</us-gaap:DepreciationAndAmortization>
    <us-gaap:DepreciationAndAmortization
      contextRef="i27ed6a1bdefe43098a08d48f9a6aa198_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpiNWViMjcwNDQ2OTU0ZGQ3OGQ5NGFjNzE2ZTUxMzZlMS90YWJsZXJhbmdlOmI1ZWIyNzA0NDY5NTRkZDc4ZDk0YWM3MTZlNTEzNmUxXzMtMS0xLTEtMTAwMDAy_4c9bd140-22ad-4c35-9855-ae8d9527f0c6"
      unitRef="usd">2873000</us-gaap:DepreciationAndAmortization>
    <us-gaap:DepreciationAndAmortization
      contextRef="i8e9434eca1eb4912bd5cabf256b1ce98_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpiNWViMjcwNDQ2OTU0ZGQ3OGQ5NGFjNzE2ZTUxMzZlMS90YWJsZXJhbmdlOmI1ZWIyNzA0NDY5NTRkZDc4ZDk0YWM3MTZlNTEzNmUxXzMtMy0xLTEtMTAwMDAy_6b6a5abf-930e-46be-8b89-bc68a5628c30"
      unitRef="usd">2623000</us-gaap:DepreciationAndAmortization>
    <us-gaap:DepreciationAndAmortization
      contextRef="i0696558d634d43589761ef303baf8924_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDAvZnJhZzpmNzViM2M5NjBiZWU0MTc0Yjg4NWYwMThkYjFkNDAzZS90YWJsZTpiNWViMjcwNDQ2OTU0ZGQ3OGQ5NGFjNzE2ZTUxMzZlMS90YWJsZXJhbmdlOmI1ZWIyNzA0NDY5NTRkZDc4ZDk0YWM3MTZlNTEzNmUxXzMtNS0xLTEtMTAwMDAy_37ec4f5c-727a-47ca-9411-6e770199cace"
      unitRef="usd">2328000</us-gaap:DepreciationAndAmortization>
    <us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzI3MTM_65ec45d2-bc83-4bee-9da3-d3ea92a50c8a">GOODWILL AND INTANGIBLES&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Goodwill&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In the first quarter of 2022, we changed our operating segments to align with recent changes in our business, resulting in three operating segments: Installation, Manufacturing and Distribution. Our Installation operating segment remains our one reportable segment and our Manufacturing and Distribution operating segments are combined into our Other category. We also determined that our reporting units are at the operating segment level. See Note 11, Information on Segments, for additional details about our change in segment structure. Prior to this change, goodwill was combined into one reporting unit as reflected in the table below for the year ended December 31, 2021. Effective January 1, 2022, we reassigned our goodwill to each of our three reporting units using a relative fair value approach. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The change in carrying amount of goodwill by reportable segment for the year ended December&#160;31, 2021 was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:81.502%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.298%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Installation&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill (gross) - January 1, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;286,874&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Business combinations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;105,617&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other additions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;30&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill (gross) - December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;392,521&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accumulated impairment losses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(70,004)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill (net) - December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;322,517&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The change in carrying amount of goodwill by reportable segment after the assignment of goodwill as noted above for the year ended December&#160;31, 2022 was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.572%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.622%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Installation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Consolidated&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill (gross) - January 1, 2022, after change in reporting units&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;331,782&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;60,739&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;392,521&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Business combinations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,700&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,594&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;49,294&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other additions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,744&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,744&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill (gross) - December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;355,226&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;88,333&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;443,559&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accumulated impairment losses &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(70,004)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(70,004)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill (net) - December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;285,222&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;88,333&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;373,555&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Other additions for the Installation segment included in the above table for the year ended December&#160;31, 2022 include an adjustment to a prior year acquisition still within its measurement period of approximately $1.6 million. We also made other minor adjustments for the allocation of certain acquisitions still under measurement which are included as other additions in the above table for the Installation segment for the years ended December&#160;31, 2022 and 2021. For additional information regarding changes to goodwill resulting from acquisitions, see Note 18, Business Combinations.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On October 1, 2022, our measurement date, we tested goodwill for impairment by reporting unit. We have the option to either assess goodwill for impairment by performing a qualitative assessment to determine whether it is more likely than not that the fair value is less than its carrying value, or to bypass the qualitative evaluation and perform a quantitative assessment. For the Installation and Manufacturing reporting units, we performed a one-step qualitative assessment in conformity with generally accepted accounting principles and determined that no impairment of goodwill was required. We considered the impacts of the COVID-19 pandemic in our analysis and concluded there were no associated impairment indicators. We performed a quantitative assessment for our Distribution reporting unit. This assessment determined the fair value of the distribution reporting unit by weighting a discounted cash flow model and a market-related model in consultation with an external valuation expert. Upon comparison of the calculated fair value to the carrying value of the reporting unit, it was determined no impairment of goodwill needed to be recognized for the year ended December&#160;31, 2022. In addition, no impairment of goodwill was recognized for the years ended December&#160;31, 2021 or 2020. Accumulated impairment losses included within the above table were incurred over multiple periods, with the latest impairment charge being recorded during the year ended December 31, 2010. These accumulated losses were assigned to our Installation reporting unit.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Intangibles, net&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table provides the gross carrying amount, accumulated amortization and net book value for each major class of intangibles (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:25.732%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.483%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.483%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.483%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.483%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.483%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.488%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="33" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gross&lt;br/&gt;Carrying&lt;br/&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accumulated&lt;br/&gt;Amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net&lt;br/&gt;Book&lt;br/&gt;Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gross&lt;br/&gt;Carrying&lt;br/&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accumulated&lt;br/&gt;Amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net&lt;br/&gt;Book&lt;br/&gt;Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amortized intangibles:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer relationships&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;338,050&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;145,722&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;192,328&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;292,113&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;113,849&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;178,264&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Covenants not-to-compete&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;30,899&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,086&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,813&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,717&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,471&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,246&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Trademarks and tradenames&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;119,612&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39,638&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;79,974&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;103,007&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,623&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;70,384&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Backlog&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,815&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,457&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;358&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,724&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,197&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,527&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;509,376&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;225,903&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;283,473&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;446,561&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;182,140&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;264,421&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We recorded no intangible asset impairment loss for the years ended December&#160;31, 2022, 2021 and 2020.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The gross carrying amount of intangibles increased approximately $62.8 million and $130.1 million during the years ended December&#160;31, 2022 and 2021, respectively. Intangibles associated with business combinations accounted for approximately $65.1 million and $130.0 million of the increases during the years ended December&#160;31, 2022 and 2021, respectively. For the year ended December&#160;31, 2022, there was a measurement period adjustment for a prior year acquisition that decreased gross intangibles by $3.0 million. For more information, see Note 18, Business Combinations. Amortization expense on intangible assets totaled approximately $43.8 million, $37.1 million, and $28.5 million during the years ended December&#160;31, 2022, 2021 and 2020, respectively. Remaining estimated aggregate annual amortization expense is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:32.017%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.173%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:38.627%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;42,460&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38,366&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,961&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29,010&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2027&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24,724&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;115,952&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock>
    <us-gaap:NumberOfOperatingSegments
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzE2NDkyNjc0NTg2MjE_1852086f-00fc-4b8e-ac9d-a8efeb2aa6db"
      unitRef="reporting_unit">3</us-gaap:NumberOfOperatingSegments>
    <us-gaap:NumberOfReportingUnits
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzE2NDkyNjc0NTg2NDU_08dad7e7-fc24-48ee-8f9b-d2dc2cbc05e5"
      unitRef="reporting_unit">1</us-gaap:NumberOfReportingUnits>
    <us-gaap:NumberOfReportingUnits
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzE2NDkyNjc0NTg2MzE_08dad7e7-fc24-48ee-8f9b-d2dc2cbc05e5"
      unitRef="reporting_unit">1</us-gaap:NumberOfReportingUnits>
    <us-gaap:NumberOfReportingUnits
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzE2NDkyNjc0NTg2NDE_fb9606be-a0c3-468d-ad9d-e71763f8dab8"
      unitRef="reporting_unit">3</us-gaap:NumberOfReportingUnits>
    <us-gaap:ScheduleOfGoodwillTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzI3MTQ_95b3b566-8093-460d-9ceb-2ca19ab211eb">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The change in carrying amount of goodwill by reportable segment for the year ended December&#160;31, 2021 was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:81.502%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.298%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Installation&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill (gross) - January 1, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;286,874&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Business combinations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;105,617&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other additions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;30&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill (gross) - December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;392,521&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accumulated impairment losses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(70,004)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill (net) - December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;322,517&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The change in carrying amount of goodwill by reportable segment after the assignment of goodwill as noted above for the year ended December&#160;31, 2022 was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.572%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.622%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Installation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Consolidated&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill (gross) - January 1, 2022, after change in reporting units&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;331,782&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;60,739&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;392,521&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Business combinations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,700&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,594&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;49,294&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other additions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,744&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,744&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill (gross) - December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;355,226&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;88,333&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;443,559&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accumulated impairment losses &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(70,004)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(70,004)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill (net) - December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;285,222&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;88,333&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;373,555&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfGoodwillTextBlock>
    <us-gaap:GoodwillGross
      contextRef="i61f3c1563a76427b8e6b9d432aa44d9a_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo0NzUyZDE0Y2UyMmU0OTk5YjRhMWFhMmI1NzQxMmFkMC90YWJsZXJhbmdlOjQ3NTJkMTRjZTIyZTQ5OTliNGExYWEyYjU3NDEyYWQwXzEtNS0xLTEtMTExNjY3_fc2f4fe5-3757-43e7-a3b2-ef65b9cca357"
      unitRef="usd">286874000</us-gaap:GoodwillGross>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo0NzUyZDE0Y2UyMmU0OTk5YjRhMWFhMmI1NzQxMmFkMC90YWJsZXJhbmdlOjQ3NTJkMTRjZTIyZTQ5OTliNGExYWEyYjU3NDEyYWQwXzItNS0xLTEtMTExNjY3_085ec269-4f7e-44c1-8dc0-137a91378222"
      unitRef="usd">105617000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillOtherIncreaseDecrease
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo0NzUyZDE0Y2UyMmU0OTk5YjRhMWFhMmI1NzQxMmFkMC90YWJsZXJhbmdlOjQ3NTJkMTRjZTIyZTQ5OTliNGExYWEyYjU3NDEyYWQwXzMtNS0xLTEtMTExNjY3_53f3e115-3195-486f-a309-6600803e1a1c"
      unitRef="usd">30000</us-gaap:GoodwillOtherIncreaseDecrease>
    <us-gaap:GoodwillGross
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo0NzUyZDE0Y2UyMmU0OTk5YjRhMWFhMmI1NzQxMmFkMC90YWJsZXJhbmdlOjQ3NTJkMTRjZTIyZTQ5OTliNGExYWEyYjU3NDEyYWQwXzQtNS0xLTEtMTExNjY3_7cea1cac-bdd4-4c76-87c3-ffe7275ccc00"
      unitRef="usd">392521000</us-gaap:GoodwillGross>
    <us-gaap:GoodwillImpairedAccumulatedImpairmentLoss
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo0NzUyZDE0Y2UyMmU0OTk5YjRhMWFhMmI1NzQxMmFkMC90YWJsZXJhbmdlOjQ3NTJkMTRjZTIyZTQ5OTliNGExYWEyYjU3NDEyYWQwXzUtNS0xLTEtMTExNjY3_588ee600-b81f-4798-a91c-6dc8e28baf79"
      unitRef="usd">70004000</us-gaap:GoodwillImpairedAccumulatedImpairmentLoss>
    <us-gaap:Goodwill
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo0NzUyZDE0Y2UyMmU0OTk5YjRhMWFhMmI1NzQxMmFkMC90YWJsZXJhbmdlOjQ3NTJkMTRjZTIyZTQ5OTliNGExYWEyYjU3NDEyYWQwXzYtNS0xLTEtMTExNjY3_e47b8c71-c13d-4e0b-bf8b-8eb314b117d2"
      unitRef="usd">322517000</us-gaap:Goodwill>
    <us-gaap:GoodwillGross
      contextRef="ia6ae7ad5a2e645a4b11ebedc5bb8e766_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzEtMS0xLTEtMTEwNjQ5_6bb5b9bb-6977-4f94-a5cd-042e4c1cf1f5"
      unitRef="usd">331782000</us-gaap:GoodwillGross>
    <us-gaap:GoodwillGross
      contextRef="ibadf50e7a18740488f76ed7c7c099490_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzEtMy0xLTEtMTEwNjQ5_639f6eab-59f5-48d9-b682-56d268969623"
      unitRef="usd">60739000</us-gaap:GoodwillGross>
    <us-gaap:GoodwillGross
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzEtNS0xLTEtMTEwNjQ5_f01ae406-f1cb-4527-9e5d-118d95a3654e"
      unitRef="usd">392521000</us-gaap:GoodwillGross>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="i7ee60c6c46b64377a7d9ef1866ddf1f4_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzItMS0xLTEtMTEwNjQ5_2f44ba0d-66c0-4858-ba34-438ed3515933"
      unitRef="usd">21700000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="i7ee60c6c46b64377a7d9ef1866ddf1f4_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzItMS0xLTEtMTEwNjQ5_3093940e-5cca-4a52-98b9-bf38429033b3"
      unitRef="usd">21700000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="i57361177467942dca715f3205ca58976_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzItMy0xLTEtMTEwNjQ5_3b6e2b00-2bc9-4ea1-8dab-e331719145e7"
      unitRef="usd">27594000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzItNS0xLTEtMTEwNjQ5_13598415-2572-41df-a6a6-48b8e5191794"
      unitRef="usd">49294000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillOtherIncreaseDecrease
      contextRef="i7ee60c6c46b64377a7d9ef1866ddf1f4_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzMtMS0xLTEtMTEwNjQ5_1138a813-2faa-4284-8cef-d7edaab081ff"
      unitRef="usd">1744000</us-gaap:GoodwillOtherIncreaseDecrease>
    <us-gaap:GoodwillOtherIncreaseDecrease
      contextRef="i7ee60c6c46b64377a7d9ef1866ddf1f4_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzMtMS0xLTEtMTEwNjQ5_45fbf020-54b0-45ca-b1c4-62cf562a7cfa"
      unitRef="usd">1744000</us-gaap:GoodwillOtherIncreaseDecrease>
    <us-gaap:GoodwillOtherIncreaseDecrease
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzMtNS0xLTEtMTEwNjQ5_f4a25ada-df1c-427f-b8f9-0640accbe439"
      unitRef="usd">1744000</us-gaap:GoodwillOtherIncreaseDecrease>
    <us-gaap:GoodwillGross
      contextRef="i3aff0b2379704afda9dd0958ab04b016_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzQtMS0xLTEtMTEwNjQ5_3a9526d5-df44-4f50-81ba-d1e91483e9fe"
      unitRef="usd">355226000</us-gaap:GoodwillGross>
    <us-gaap:GoodwillGross
      contextRef="i6d1889ce16a04267a11cde2000035599_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzQtMy0xLTEtMTEwNjQ5_51c915ae-7538-44de-a589-fcbbdf37f518"
      unitRef="usd">88333000</us-gaap:GoodwillGross>
    <us-gaap:GoodwillGross
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzQtNS0xLTEtMTEwNjQ5_d0869cea-ce12-4eee-ba77-d05833926b42"
      unitRef="usd">443559000</us-gaap:GoodwillGross>
    <us-gaap:GoodwillImpairedAccumulatedImpairmentLoss
      contextRef="i3aff0b2379704afda9dd0958ab04b016_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzUtMS0xLTEtMTEwNjQ5_2ebdf1ce-bb20-4e14-a9f1-2e78e0302acd"
      unitRef="usd">70004000</us-gaap:GoodwillImpairedAccumulatedImpairmentLoss>
    <us-gaap:GoodwillImpairedAccumulatedImpairmentLoss
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzUtNS0xLTEtMTEwNjQ5_24563a2b-41b3-4d30-8ab4-00411d2a3467"
      unitRef="usd">70004000</us-gaap:GoodwillImpairedAccumulatedImpairmentLoss>
    <us-gaap:Goodwill
      contextRef="i3aff0b2379704afda9dd0958ab04b016_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzYtMS0xLTEtMTEwNjQ5_87a05444-8227-4829-aee7-61733eb0ca50"
      unitRef="usd">285222000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i6d1889ce16a04267a11cde2000035599_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzYtMy0xLTEtMTEwNjQ5_17360f91-f5e7-4902-b078-5e7c1aaceb2c"
      unitRef="usd">88333000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo1MDA2NDM3ODMyMmE0MGVlOWIxMWJmYTdiYjBhYjUwOC90YWJsZXJhbmdlOjUwMDY0Mzc4MzIyYTQwZWU5YjExYmZhN2JiMGFiNTA4XzYtNS0xLTEtMTEwNjQ5_3a39bade-e822-428c-9f03-25e6919c943a"
      unitRef="usd">373555000</us-gaap:Goodwill>
    <us-gaap:GoodwillPurchaseAccountingAdjustments
      contextRef="i063187198d8a4662a8e28042ad648f83_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzEwOTk1MTE2MzcwMjk_b08385f5-b7ad-4f68-b53e-7a70e4ed1fed"
      unitRef="usd">1600000</us-gaap:GoodwillPurchaseAccountingAdjustments>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzE1Njk_ea5ccde9-79c9-4c71-8436-d8cd341fe963"
      unitRef="usd">0</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzE2NDY_75c6971d-aaff-4cd2-bbaf-455339da6bee"
      unitRef="usd">0</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzE2NDY_b6c3e6a1-8913-4c95-9b18-b0c5f61bdb65"
      unitRef="usd">0</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzI3MTU_d0edc4ba-16f3-4d1a-855e-cbb92c3da7b2">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table provides the gross carrying amount, accumulated amortization and net book value for each major class of intangibles (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:25.732%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.483%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.483%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.483%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.483%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.483%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.488%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="33" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gross&lt;br/&gt;Carrying&lt;br/&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accumulated&lt;br/&gt;Amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net&lt;br/&gt;Book&lt;br/&gt;Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gross&lt;br/&gt;Carrying&lt;br/&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accumulated&lt;br/&gt;Amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net&lt;br/&gt;Book&lt;br/&gt;Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amortized intangibles:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer relationships&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;338,050&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;145,722&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;192,328&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;292,113&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;113,849&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;178,264&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Covenants not-to-compete&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;30,899&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,086&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,813&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,717&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,471&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,246&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Trademarks and tradenames&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;119,612&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39,638&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;79,974&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;103,007&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,623&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;70,384&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Backlog&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,815&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,457&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;358&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,724&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,197&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,527&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;509,376&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;225,903&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;283,473&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;446,561&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;182,140&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;264,421&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i9aea8d337c2a4a158061feaff30010e0_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzQtMS0xLTEtMTAwMDAy_23566819-d61c-4644-9fa9-0c25a6f273c5"
      unitRef="usd">338050000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i9aea8d337c2a4a158061feaff30010e0_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzQtMy0xLTEtMTAwMDAy_493fcd29-67de-453a-b663-518febc3f793"
      unitRef="usd">145722000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i9aea8d337c2a4a158061feaff30010e0_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzQtNS0xLTEtMTAwMDAy_d057400c-8e8a-4ade-a5fe-d9fe41a847c0"
      unitRef="usd">192328000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="ibcda928914984dab908ead68148bca5e_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzQtNy0xLTEtMTAwMDAy_53dee072-c6bc-4a8f-aecf-ee49b14857cf"
      unitRef="usd">292113000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="ibcda928914984dab908ead68148bca5e_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzQtOS0xLTEtMTAwMDAy_75d28249-8965-4789-b15f-f921873755d9"
      unitRef="usd">113849000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="ibcda928914984dab908ead68148bca5e_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzQtMTEtMS0xLTEwMDAwMg_09556038-4196-4311-933f-55bfd25f8a1d"
      unitRef="usd">178264000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i60423e26f6d04d42a31f9c74ec4957e6_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzUtMS0xLTEtMTAwMDAy_21441103-7e1a-4ec8-a9a8-760273addab0"
      unitRef="usd">30899000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i60423e26f6d04d42a31f9c74ec4957e6_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzUtMy0xLTEtMTAwMDAy_edb40730-9e96-4bfa-89cc-844350f6a52c"
      unitRef="usd">20086000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i60423e26f6d04d42a31f9c74ec4957e6_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzUtNS0xLTEtMTAwMDAy_e01e1d08-a71d-4556-a030-858d0ce2c7be"
      unitRef="usd">10813000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i4701e44d54f8416c94e658d31cdcbc11_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzUtNy0xLTEtMTAwMDAy_18651618-de3b-4354-bb02-734bc568310b"
      unitRef="usd">27717000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i4701e44d54f8416c94e658d31cdcbc11_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzUtOS0xLTEtMTAwMDAy_cdd427c8-c8e5-4cc2-8388-1c60c47d5242"
      unitRef="usd">16471000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i4701e44d54f8416c94e658d31cdcbc11_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzUtMTEtMS0xLTEwMDAwMg_ade849a8-efc7-4ba1-9470-75fdddd5692e"
      unitRef="usd">11246000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="iff0aa331a39e4a78810397ce09d6f176_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzYtMS0xLTEtMTAwMDAy_0d882f20-5a64-4c21-858b-d5b4ea4e5e33"
      unitRef="usd">119612000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="iff0aa331a39e4a78810397ce09d6f176_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzYtMy0xLTEtMTAwMDAy_dda0f676-1f0a-43c5-b0da-ac24279ef55a"
      unitRef="usd">39638000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="iff0aa331a39e4a78810397ce09d6f176_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzYtNS0xLTEtMTAwMDAy_4de70a71-23b3-446d-9095-5f6c481070f7"
      unitRef="usd">79974000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i2681812c248c4d1ea8f72b1c19f5bf44_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzYtNy0xLTEtMTAwMDAy_35f48d2b-069b-4b90-90de-b139d4910a47"
      unitRef="usd">103007000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i2681812c248c4d1ea8f72b1c19f5bf44_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzYtOS0xLTEtMTAwMDAy_c2e19e32-fb76-4ba5-808e-fbdfc49b9926"
      unitRef="usd">32623000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i2681812c248c4d1ea8f72b1c19f5bf44_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzYtMTEtMS0xLTEwMDAwMg_2e9de546-5faa-4ff1-b910-7c02d6312664"
      unitRef="usd">70384000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i2914866a0a3e48cab7cccecb0342c88a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzctMS0xLTEtMTAwMDAy_9b051b8f-cc56-4565-9010-bde7fe3ce31a"
      unitRef="usd">20815000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i2914866a0a3e48cab7cccecb0342c88a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzctMy0xLTEtMTAwMDAy_75258c92-a48a-43f6-9bdf-4065767e61a8"
      unitRef="usd">20457000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i2914866a0a3e48cab7cccecb0342c88a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzctNS0xLTEtMTAwMDAy_4fac3733-7228-4210-b1ba-c9d8ed306466"
      unitRef="usd">358000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i6f440aaf2b304fe89450e360641debc9_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzctNy0xLTEtMTAwMDAy_773638c0-05f1-4474-aa27-2df6f651b946"
      unitRef="usd">23724000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i6f440aaf2b304fe89450e360641debc9_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzctOS0xLTEtMTAwMDAy_0e7a97a9-f5d3-42b3-9da6-28fb77c9d973"
      unitRef="usd">19197000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i6f440aaf2b304fe89450e360641debc9_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzctMTEtMS0xLTEwMDAwMg_4fc51078-6035-4a68-9202-83605782b25f"
      unitRef="usd">4527000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzgtMS0xLTEtMTAwMDAy_be972152-fe07-4c91-95dc-0f1dad30cd0b"
      unitRef="usd">509376000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzgtMy0xLTEtMTAwMDAy_540fe5e7-59b2-4a6e-a262-223417871c45"
      unitRef="usd">225903000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzgtNS0xLTEtMTAwMDAy_3fb091d3-357f-41b6-9538-86a102c711a0"
      unitRef="usd">283473000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzgtNy0xLTEtMTAwMDAy_2e00fb5c-a3ad-4e73-9d9d-d7ae477ada8c"
      unitRef="usd">446561000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzgtOS0xLTEtMTAwMDAy_ebfa4fea-03fa-4ca0-a8af-890531d82621"
      unitRef="usd">182140000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTo5NTg2NWQ3NTNhMzA0ZjY1YmZiMDQ4NmU1NTMxZDY1MS90YWJsZXJhbmdlOjk1ODY1ZDc1M2EzMDRmNjViZmIwNDg2ZTU1MzFkNjUxXzgtMTEtMS0xLTEwMDAwMg_07014d34-d359-4988-b3a9-ebc3d8007d83"
      unitRef="usd">264421000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:ImpairmentOfIntangibleAssetsFinitelived
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzIwODg_0c2fd593-8b2f-40ca-b50d-e225b46dd128"
      unitRef="usd">0</us-gaap:ImpairmentOfIntangibleAssetsFinitelived>
    <us-gaap:ImpairmentOfIntangibleAssetsFinitelived
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzIwODg_6b317f2a-193e-41a6-abb7-170a3cc535b8"
      unitRef="usd">0</us-gaap:ImpairmentOfIntangibleAssetsFinitelived>
    <us-gaap:ImpairmentOfIntangibleAssetsFinitelived
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzIwODg_6e7560c1-a75d-4497-9a60-f1e04bbd9eb2"
      unitRef="usd">0</us-gaap:ImpairmentOfIntangibleAssetsFinitelived>
    <us-gaap:FiniteLivedIntangibleAssetsPeriodIncreaseDecrease
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzIyMjQ_04b516af-3b1a-4e67-8de9-3438f26a60c1"
      unitRef="usd">62800000</us-gaap:FiniteLivedIntangibleAssetsPeriodIncreaseDecrease>
    <us-gaap:FiniteLivedIntangibleAssetsPeriodIncreaseDecrease
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzIyMzE_8e40c869-b8aa-4371-b8bb-b3474e573a50"
      unitRef="usd">130100000</us-gaap:FiniteLivedIntangibleAssetsPeriodIncreaseDecrease>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzIzNjA_5e6022fa-caf1-432c-a7b1-b4ecbb5c684a"
      unitRef="usd">65100000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzIzNjc_730e3488-8fba-4ab5-b9e7-f1a8d7e4f080"
      unitRef="usd">130000000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="if3685ad92b3748da94c030b96eb1db2c_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzEwOTk1MTE2Mzk4OTU_d17b1349-21f4-4646-b844-bb0e69f1c5b1"
      unitRef="usd">3000000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzI1NTc_a33000a2-746f-47c9-8f37-d8c2d6dc5d70"
      unitRef="usd">43800000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzI1NjE_1f501937-2823-43ab-a1f4-f894560dfe5f"
      unitRef="usd">37100000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzI1Njk_481f08c7-a052-4553-8d71-4f9881f5ab44"
      unitRef="usd">28500000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90ZXh0cmVnaW9uOmE0NDZjNWNlYWRkZTQ1YTA5ZTI1MTQ4NzNjYjVmNTQ0XzI3MTY_c3ce90d1-351d-4219-a9d4-50b38218d228">Remaining estimated aggregate annual amortization expense is as follows (in thousands):&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:32.017%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.173%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:38.627%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;42,460&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38,366&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,961&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29,010&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2027&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24,724&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;115,952&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTpmZWZhM2I0ZjE3Y2Y0MDNhOWUwNmI3MzhlMjc3YzA5Mi90YWJsZXJhbmdlOmZlZmEzYjRmMTdjZjQwM2E5ZTA2YjczOGUyNzdjMDkyXzAtMS0xLTEtMTAwMDAy_56d70462-83a1-4b25-9997-9f60f0632e87"
      unitRef="usd">42460000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTpmZWZhM2I0ZjE3Y2Y0MDNhOWUwNmI3MzhlMjc3YzA5Mi90YWJsZXJhbmdlOmZlZmEzYjRmMTdjZjQwM2E5ZTA2YjczOGUyNzdjMDkyXzEtMS0xLTEtMTAwMDAy_0bb51fca-9325-41cf-8feb-f8c4ecec86e4"
      unitRef="usd">38366000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTpmZWZhM2I0ZjE3Y2Y0MDNhOWUwNmI3MzhlMjc3YzA5Mi90YWJsZXJhbmdlOmZlZmEzYjRmMTdjZjQwM2E5ZTA2YjczOGUyNzdjMDkyXzItMS0xLTEtMTAwMDAy_8db9729f-9c0a-4775-974e-2dbe12f2c7a6"
      unitRef="usd">32961000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTpmZWZhM2I0ZjE3Y2Y0MDNhOWUwNmI3MzhlMjc3YzA5Mi90YWJsZXJhbmdlOmZlZmEzYjRmMTdjZjQwM2E5ZTA2YjczOGUyNzdjMDkyXzMtMS0xLTEtMTAwMDAy_20f541a1-efc8-4362-afb4-38a918fa6c44"
      unitRef="usd">29010000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTpmZWZhM2I0ZjE3Y2Y0MDNhOWUwNmI3MzhlMjc3YzA5Mi90YWJsZXJhbmdlOmZlZmEzYjRmMTdjZjQwM2E5ZTA2YjczOGUyNzdjMDkyXzQtMS0xLTEtMTAwMDAy_2b522904-5e0d-49d7-9802-6d518282d51d"
      unitRef="usd">24724000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDMvZnJhZzphNDQ2YzVjZWFkZGU0NWEwOWUyNTE0ODczY2I1ZjU0NC90YWJsZTpmZWZhM2I0ZjE3Y2Y0MDNhOWUwNmI3MzhlMjc3YzA5Mi90YWJsZXJhbmdlOmZlZmEzYjRmMTdjZjQwM2E5ZTA2YjczOGUyNzdjMDkyXzUtMS0xLTEtMTAwMDAy_b46a7094-a27f-4086-ac33-4693fa863bc0"
      unitRef="usd">115952000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive>
    <us-gaap:LongTermDebtTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzgyNTY_56d84377-2278-4eab-8828-d8369cf9fe37">LONG-TERM DEBT&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Long-term debt consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.730%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.621%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Senior Notes due 2028, net of unamortized debt issuance costs of $3,036 and $3,633, respectively&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;296,964&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;296,367&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Term loan, net of unamortized debt issuance costs of $5,767 and $6,735, respectively&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;489,233&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;493,265&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Vehicle and equipment notes, maturing through December 2027; payable in various monthly installments, including interest rates ranging from 1.9% to 6.1% &lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;72,984&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;69,228&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Various notes payable, maturing through April 2025; payable in various monthly installments, including interest rates ranging from 2.0% to 5.0%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,973&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,172&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;861,154&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;863,032&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: current maturities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(30,983)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(30,839)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term debt, less current maturities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;830,171&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;832,193&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Remaining required repayments of debt principal, gross of unamortized debt issuance costs, as of December&#160;31, 2022 are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:32.163%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.354%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:38.446%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;30,983&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,570&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,630&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,576&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2027&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,198&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;770,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;5.75% Senior Notes due 2028&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In September 2019, we issued $300.0 million in aggregate principal amount of 5.75% senior unsecured notes (the &#x201c;Senior Notes&#x201d;). The Senior Notes will mature on February&#160;1, 2028 and interest is payable semi-annually in cash in arrears on February 1 and August 1, commencing on February&#160;1, 2020. The net proceeds from the Senior Notes offering were $295.0 million after debt issuance costs.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The indenture covering the Senior Notes contains restrictive covenants that, among other things, limit the ability of the Company and certain of our subsidiaries (subject to certain exceptions) to: (i) incur additional debt and issue preferred stock; (ii) pay dividends on, redeem or repurchase stock in an aggregate amount exceeding 2.0% of market capitalization per fiscal year, or in an aggregate amount exceeding certain applicable restricted payment baskets; (iii) prepay subordinated debt; (iv) create liens; (v) make specified types of investments; (vi) apply net proceeds from certain asset sales; (vii) engage in transactions with affiliates; (viii) merge, consolidate or sell substantially all of our assets; and (ix) pay dividends and make other distributions from subsidiaries.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Credit Facilities&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In February 2022, we amended and extended the term of our asset-based lending credit agreement (the "ABL Credit Agreement"). The ABL Credit Agreement increased the commitment under the asset-based lending credit facility (the "ABL Revolver") to $250 million from $200.0 million, and permits us to further increased the commitment amount up to $300.0 million. The amendment also extends the maturity date from September 26, 2024 to February 17, 2027. The ABL Revolver bears interest at either the base rate or the Secured Overnight Financing Rate ("Term SOFR"), at our election, plus a margin of 0.25% or 0.50% in the case of base rate loans or 1.25% or 1.50% for Term SOFR advances (in each case based on a measure of availability under the ABL Credit Agreement). The amendment also allows for modification of specified fees depend upon achieving certain sustainability targets, in addition to making other modifications to the ABL Credit Agreement. Including outstanding letters of credit, our remaining availability under the ABL Revolver as of December&#160;31, 2022 was $244.2 million. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The ABL Revolver provides incremental revolving credit facility commitments of up to $50.0 million. The terms and conditions of any incremental revolving credit facility commitments must be no more favorable than the terms of the ABL Revolver. The ABL Revolver also allows for the issuance of letters of credit of up to $100.0 million in aggregate and borrowing of swingline loans of up to $25.0 million in aggregate. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The ABL Credit Agreement contains a financial covenant requiring the satisfaction of a minimum of fixed charge coverage ratio of 1.0x in the event that we do not meet a minimum measure of availability under the ABL Revolver. The ABL Credit Agreement and the Term Loan Agreement contain restrictive covenants that, among other things, limit the ability of the Company and certain of our subsidiaries (subject to certain exceptions) to: (i) incur additional debt and issue preferred stock; (ii) pay dividends on, redeem or repurchase stock in an aggregate amount exceeding the greater of 2.0% of market capitalization per fiscal year or certain applicable restricted payment basket amounts' (iii) prepay subordinated debt; (iv) create liens; (v) make specified types of investments; (vi) apply net proceeds from certain asset sales; (vii) engage in transactions with affiliates; (viii) merge, consolidate or sell substantially all of our assets; and (ix) pay dividends and make other distributions from subsidiaries. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:7pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In December 2021, we entered into a new $500 million, seven-year term loan facility due December 2028 (the &#x201c;Term Loan&#x201d;) under our credit agreement (the &#x201c;Term Loan Agreement&#x201d;), dated as of December 14, 2021 with Royal Bank of Canada as the administrative agent and collateral agent thereunder. The Term Loan amortizes in quarterly principal payments of $1.25&#160;million starting on March 31, 2022, with any remaining unpaid balances due on the maturity date of December 14, 2028. The Term Loan bears interest at either the base rate (which approximates the prime rate) or the Eurodollar rate, plus a margin of (A) 1.25% in the case of base rate loans or (B) 2.25% in the case of Eurodollar rate loans. Proceeds from the Term Loan were used &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:7pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;to refinance and repay in full all amounts outstanding under our previous term loan agreement. We intend to use the remaining funds for general corporate purposes, including acquisitions and other growth initiatives. As of December&#160;31, 2022, we had $489.2&#160;million, net of unamortized debt issuance costs, due on our Term Loan. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Subject to certain exceptions, the Term Loan will be subject to mandatory prepayments of (i) 100% of the net cash proceeds from issuances or incurrence of debt by the Company or any of its restricted subsidiaries (other than with respect to certain permitted indebtedness (excluding any refinancing indebtedness); (ii) 100% (with step-downs to 50% and 0% based on achievement of specified net leverage ratios) of the net cash proceeds from certain sales or dispositions of assets by the Company or any of its restricted subsidiaries in excess of a certain amount and subject to reinvestment provision and certain other exception; and (iii) 50% (with step-downs to 25% and 0% based upon achievement of specified net leverage ratios) of excess cash flow of the Company and its restricted subsidiaries in excess of $15&#160;million, subject to certain exceptions and limitations. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;All of the obligations under the Term Loan and ABL Revolver are guaranteed by all of the Company&#x2019;s existing restricted subsidiaries and will be guaranteed by the Company&#x2019;s future restricted subsidiaries. Additionally, all obligations under the Term Loan and ABL Revolver, and the guarantees of those obligations, are secured by substantially all of the assets of the Company and the guarantors, subject to certain exceptions and permitted liens, including a first-priority security interest in such assets that constitute ABL Priority Collateral, as defined in the ABL Credit Agreement, and a second-priority security interest in such assets that constitute Term Loan Priority Collateral, as defined in the Term Loan Agreement. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Vehicle and Equipment Notes&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We are party to a Master Loan and Security Agreement (&#x201c;Master Loan and Security Agreement&#x201d;), a Master Equipment Lease Agreement (&#x201c;Master Equipment Agreement&#x201d;) and one or more Master Loan Agreements (&#x201c;Master Loan Agreements&#x201d; and together with the Master Loan and Security Agreement and Master Equipment Agreement the &#x201c;Master Loan Equipment Agreements&#x201d;) with various lenders to provide financing for the purpose of purchasing or leasing vehicles and equipment used in the normal course of business. Each financing arrangement under these agreements constitutes a separate note and obligation. Vehicles and equipment purchased or leased under each financing arrangement serve as collateral for the note applicable to such financing arrangement. Regular payments are due under each note for a period of typically 60 consecutive months after the incurrence of the obligation. The specific terms of each note are based on specific criteria, including the type of vehicle or equipment and the market interest rates at the time. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Total outstanding loan balances relating to our master loan and equipment agreements were $73.0 million and $69.2 million as of December&#160;31, 2022 and 2021, respectively. Depreciation of assets held under these agreements is included within cost of sales on the Consolidated Statements of Operations and Comprehensive Income.&lt;/span&gt;&lt;/div&gt;</us-gaap:LongTermDebtTextBlock>
    <us-gaap:ScheduleOfDebtTableTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzgyNTc_9beffc23-ac50-414c-b329-b31b5849f4c3">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Long-term debt consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.730%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.621%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Senior Notes due 2028, net of unamortized debt issuance costs of $3,036 and $3,633, respectively&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;296,964&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;296,367&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Term loan, net of unamortized debt issuance costs of $5,767 and $6,735, respectively&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;489,233&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;493,265&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Vehicle and equipment notes, maturing through December 2027; payable in various monthly installments, including interest rates ranging from 1.9% to 6.1% &lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;72,984&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;69,228&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Various notes payable, maturing through April 2025; payable in various monthly installments, including interest rates ranging from 2.0% to 5.0%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,973&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,172&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;861,154&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;863,032&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: current maturities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(30,983)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(30,839)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term debt, less current maturities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;830,171&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;832,193&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfDebtTableTextBlock>
    <us-gaap:DebtInstrumentUnamortizedDiscount
      contextRef="i34c4e4e26cd94add8200e3c231ad6e6f_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzItMC0xLTEtMTAwMDAyL3RleHRyZWdpb246ZGM3MzI0NTk0NGVhNDkxZTk2NTEzOWZiNTFkZDJkODRfNjk_4b8a3955-9e13-4aa4-a5dd-d62c7354fe8e"
      unitRef="usd">3036000</us-gaap:DebtInstrumentUnamortizedDiscount>
    <us-gaap:DebtInstrumentUnamortizedDiscount
      contextRef="i13d232b775794fd09035702b88fc8efd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzItMC0xLTEtMTAwMDAyL3RleHRyZWdpb246ZGM3MzI0NTk0NGVhNDkxZTk2NTEzOWZiNTFkZDJkODRfNzY_76ba5412-64b5-4a80-b216-74dce918d1ff"
      unitRef="usd">3633000</us-gaap:DebtInstrumentUnamortizedDiscount>
    <us-gaap:LongTermDebt
      contextRef="i34c4e4e26cd94add8200e3c231ad6e6f_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzItMS0xLTEtMTAwMDAy_90422fb9-389d-4e05-a57d-7ab5005b7273"
      unitRef="usd">296964000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="i13d232b775794fd09035702b88fc8efd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzItMy0xLTEtMTAwMDAy_9c29ce92-38e3-4055-a19a-e0e089b0f2a8"
      unitRef="usd">296367000</us-gaap:LongTermDebt>
    <us-gaap:DebtInstrumentUnamortizedDiscount
      contextRef="i540d045957764edda6de786acb29f5ce_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzMtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246NjQyOTk3ZjUyNTU0NDE2Njg3MjE5YzFhYTZlMDAyOTdfNTc_f201b4a0-8956-48b4-916b-7bd924ddf348"
      unitRef="usd">5767000</us-gaap:DebtInstrumentUnamortizedDiscount>
    <us-gaap:DebtInstrumentUnamortizedDiscount
      contextRef="i4a484ea7c8f345e0adf9c0b0c88da255_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzMtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246NjQyOTk3ZjUyNTU0NDE2Njg3MjE5YzFhYTZlMDAyOTdfNjQ_b0493eaa-8a82-48bb-890c-5a11f57b2d31"
      unitRef="usd">6735000</us-gaap:DebtInstrumentUnamortizedDiscount>
    <us-gaap:LongTermDebt
      contextRef="i540d045957764edda6de786acb29f5ce_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzMtMS0xLTEtMTAwMDAy_95372a80-eded-49c8-af66-0072f8a639d2"
      unitRef="usd">489233000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="i4a484ea7c8f345e0adf9c0b0c88da255_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzMtMy0xLTEtMTAwMDAy_9d62e511-fb2e-44f2-a176-20067cc41ff0"
      unitRef="usd">493265000</us-gaap:LongTermDebt>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i018182100c9b4faf8e0b0ca98b72dc09_I20221231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzQtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246ZTE5YWY5YjQ5ZTYxNDc5NmE1Mzk2NmFmZWI5YTY1MDhfMTMz_4da2c3a9-aab0-4b77-bd27-98790c40420a"
      unitRef="number">0.019</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i834063c3b1454e2f866fe8e743de57c7_I20221231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzQtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246ZTE5YWY5YjQ5ZTYxNDc5NmE1Mzk2NmFmZWI5YTY1MDhfMTM5_b68c3560-9bf0-435e-8046-b6c33089ffd1"
      unitRef="number">0.061</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:LongTermDebt
      contextRef="i6a87d84186b04f3383be05898cb0dc9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzQtMS0xLTEtMTAwMDAy_58333db9-a45c-41b9-a64a-6d08a5a3fae1"
      unitRef="usd">72984000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="i737a44fc03054b2d8bc05385476ba2b7_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzQtMy0xLTEtMTAwMDAy_208830f2-06a7-479d-aa42-2d92480d8cc7"
      unitRef="usd">69228000</us-gaap:LongTermDebt>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i2beda86d04974e408bae431827dee988_I20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzUtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246ZWIwMTllYmExN2VlNDU1NWI5NWQ4ZDA5YjZhYTFhNzBfMTI3_e4296867-79c2-452d-9489-705487c25a6e"
      unitRef="number">0.020</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i5936bc2238984dac8588a7283fd3bee5_I20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzUtMC0xLTEtMTAwMDAyL3RleHRyZWdpb246ZWIwMTllYmExN2VlNDU1NWI5NWQ4ZDA5YjZhYTFhNzBfMTMz_eb53b09f-c781-421b-947d-fd019ca2de82"
      unitRef="number">0.050</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:LongTermDebt
      contextRef="iee545d8b2e7b474d9f3df5bba463a629_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzUtMS0xLTEtMTAwMDAy_18715f3b-fd5c-4938-97f3-620d9e6fd9ae"
      unitRef="usd">1973000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="iffa4f907555945d5a29eed4b703ec3aa_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzUtMy0xLTEtMTAwMDAy_d76c717a-aa2e-45d1-9efc-30319a4e1bb0"
      unitRef="usd">4172000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzYtMS0xLTEtMTAwMDAy_854cce87-f5af-4c6f-9294-d802a6d69ac0"
      unitRef="usd">861154000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzYtMy0xLTEtMTAwMDAy_b2cc1419-cbbe-45b5-94bd-204bf3bc186d"
      unitRef="usd">863032000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebtCurrent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzctMS0xLTEtMTAwMDAy_cd960939-ab9a-450f-8184-424514db8f99"
      unitRef="usd">30983000</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtCurrent
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzctMy0xLTEtMTAwMDAy_9b2cb214-fd2c-422f-a15c-1f4205bebf9b"
      unitRef="usd">30839000</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzgtMS0xLTEtMTAwMDAy_4891c678-96f4-417b-babb-a63280c5a96f"
      unitRef="usd">830171000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZToxNmNmZTNjM2YwOWQ0Mzg0OWM2ZTI5YmY0OWY2OGJmMi90YWJsZXJhbmdlOjE2Y2ZlM2MzZjA5ZDQzODQ5YzZlMjliZjQ5ZjY4YmYyXzgtMy0xLTEtMTAwMDAy_953f3a19-9118-436a-bae1-ad54c178d57b"
      unitRef="usd">832193000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzgyNTM_45204cd9-7dd2-4042-ae38-83dc100d0b1a">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Remaining required repayments of debt principal, gross of unamortized debt issuance costs, as of December&#160;31, 2022 are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:32.163%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.354%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:38.446%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;30,983&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,570&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,630&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,576&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2027&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,198&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;770,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZTo1Yjk1Mzg5NGIzMGE0NzgyOTM4YzMwYjdjYmI5YjZiMS90YWJsZXJhbmdlOjViOTUzODk0YjMwYTQ3ODI5MzhjMzBiN2NiYjliNmIxXzAtMS0xLTEtMTAwMDAy_fa39e24f-c0a2-4d8d-bc94-4ed4bf260d50"
      unitRef="usd">30983000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZTo1Yjk1Mzg5NGIzMGE0NzgyOTM4YzMwYjdjYmI5YjZiMS90YWJsZXJhbmdlOjViOTUzODk0YjMwYTQ3ODI5MzhjMzBiN2NiYjliNmIxXzEtMS0xLTEtMTAwMDAy_dd063dc9-4a20-4d2d-a4f4-d996ff6dfb32"
      unitRef="usd">25570000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZTo1Yjk1Mzg5NGIzMGE0NzgyOTM4YzMwYjdjYmI5YjZiMS90YWJsZXJhbmdlOjViOTUzODk0YjMwYTQ3ODI5MzhjMzBiN2NiYjliNmIxXzItMS0xLTEtMTAwMDAy_df37c53a-63e2-4ea2-bfb2-78d818c083c5"
      unitRef="usd">19630000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZTo1Yjk1Mzg5NGIzMGE0NzgyOTM4YzMwYjdjYmI5YjZiMS90YWJsZXJhbmdlOjViOTUzODk0YjMwYTQ3ODI5MzhjMzBiN2NiYjliNmIxXzMtMS0xLTEtMTAwMDAy_79a92d68-68fd-4d6d-ae9a-b97d950b0686"
      unitRef="usd">14576000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZTo1Yjk1Mzg5NGIzMGE0NzgyOTM4YzMwYjdjYmI5YjZiMS90YWJsZXJhbmdlOjViOTUzODk0YjMwYTQ3ODI5MzhjMzBiN2NiYjliNmIxXzQtMS0xLTEtMTAwMDAy_082d8da0-b641-48e1-a577-aff5cf54ab84"
      unitRef="usd">9198000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90YWJsZTo1Yjk1Mzg5NGIzMGE0NzgyOTM4YzMwYjdjYmI5YjZiMS90YWJsZXJhbmdlOjViOTUzODk0YjMwYTQ3ODI5MzhjMzBiN2NiYjliNmIxXzUtMS0xLTEtMTAwMDAy_27c7a510-3b2e-4d6e-9702-8899da9a95e7"
      unitRef="usd">770000000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="if0144e02c38f4ce7ac717e9cd6b2c470_I20190930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzIyNA_fea7ef3d-e4c1-42e7-b2bd-5c35b782d41a"
      unitRef="number">0.0575</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="if0144e02c38f4ce7ac717e9cd6b2c470_I20190930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzI3OA_6c487611-bf8f-4cd5-b104-9c8d409b5045"
      unitRef="usd">300000000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="if0144e02c38f4ce7ac717e9cd6b2c470_I20190930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzMxNA_5f48ccf3-6317-4fff-b4ae-552d24635745"
      unitRef="number">0.0575</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:ProceedsFromDebtNetOfIssuanceCosts
      contextRef="i3d558231c934484486d62133717c8d67_D20190901-20190930"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzU0Mg_b5042f5d-40c8-455e-96cd-4b3676d331a2"
      unitRef="usd">295000000</us-gaap:ProceedsFromDebtNetOfIssuanceCosts>
    <ibp:DebtInstrumentCovenantMarketCapitalizationThreshold
      contextRef="i3d558231c934484486d62133717c8d67_D20190901-20190930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzkwNg_5540425d-1767-4f03-a5ea-39ef2cb1bcd8"
      unitRef="number">0.020</ibp:DebtInstrumentCovenantMarketCapitalizationThreshold>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="i7d6c36cf84a243a3bf41547086bb67bd_I20220228"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzE0MTg_59eef5d6-f1b7-4120-a7c6-5b61ccdb12f7"
      unitRef="usd">250000000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="ia189161bf80746ea964b0f8fe835b158_I20220227"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzU0OTc1NTgzNTIwNw_3cc42c40-24df-4111-b92b-9e1384df1b9b"
      unitRef="usd">200000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <ibp:LineOfCreditFacilityAccordionFeatureIncreaseLimit
      contextRef="i86035a77f81d4b539b5f1ce46301da8c_I20220228"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzU0OTc1NTgzNTI4MA_0f999fd0-cf8c-417f-af10-090ea1effd25"
      unitRef="usd">300000000</ibp:LineOfCreditFacilityAccordionFeatureIncreaseLimit>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="i9f001a3bfedc4b5ea368fad69dfc0f58_D20220201-20220228"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzE5NTM_06effe11-60f4-485a-aafe-2b4de22805df"
      unitRef="number">0.0025</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="i7a375fef08ab451da4952c1783e82102_D20220201-20220228"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzU0OTc1NTgzNjA3Ng_6a105cd7-b5c3-48c4-958f-f249b8d9d26c"
      unitRef="number">0.0050</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="i07c36a7930b34ab8a7ea6aad1a369ca5_D20220228-20220228"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzU0OTc1NTgzNjc0MA_60decf26-5e3e-41a3-af02-a50b3778780a"
      unitRef="number">0.0125</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="ib08adbc384934c028f3648ab9e362f6a_D20220228-20220228"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzU0OTc1NTgzNjc0Nw_1c7be720-1c7f-4c07-b855-a88d677d92b1"
      unitRef="number">0.0150</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity
      contextRef="ic9fa014a79fb43d9af456a0f7d86258b_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzU0OTc1NTgzNzIwMw_50d5491c-45b8-4ee7-9746-3972e93dea79"
      unitRef="usd">244200000</us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="ib76cd90aaa964f7e95f82ca5b9a26828_I20220228"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTYyMDA_da30ec60-6f4a-403b-a955-26f6a5d622d3"
      unitRef="usd">50000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="i20d9bf47aa834d11bd9e0509d8abc5e6_I20220228"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTY0MjU_595f2883-e8f5-453b-b71a-93599530a9ce"
      unitRef="usd">100000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="ibdb3b0ff1645425b99b05dca86fabd3b_I20220228"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTY0ODQ_1448e5a7-aa04-4a1f-ac09-7b78adbf3341"
      unitRef="usd">25000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <ibp:FixedChargeCoverageRatio
      contextRef="i8e6d104c5e894a44972d31f3c2a54c03_D20220201-20220228"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEyNjQ0MzgzNzUwNzM2_4212aae8-5b69-472c-a87c-75aef1c94e04"
      unitRef="number">1.0</ibp:FixedChargeCoverageRatio>
    <ibp:DebtInstrumentCovenantMarketCapitalizationThreshold
      contextRef="i8e6d104c5e894a44972d31f3c2a54c03_D20220201-20220228"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTcwODk_959c882b-b686-46bc-9fe9-4acd00a5f24e"
      unitRef="number">0.020</ibp:DebtInstrumentCovenantMarketCapitalizationThreshold>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="i3626fc639f194097808d6c94273ca71f_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTM4MjQ_32448fdd-73c2-42e6-a4f7-25256e8a8740"
      unitRef="usd">500000000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentTerm
      contextRef="i348b56558ede44b8861dc95a4225ed0d_D20211201-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEyNjQ0MzgzNzUwNzQ4_48226a37-4103-40f8-869d-b8d79a513fff">P7Y</us-gaap:DebtInstrumentTerm>
    <us-gaap:DebtInstrumentPeriodicPaymentPrincipal
      contextRef="i348b56558ede44b8861dc95a4225ed0d_D20211201-20211231"
      decimals="-4"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTQxMTU_77ceeccc-7e83-48e5-b847-bfd7e3eb0e5f"
      unitRef="usd">1250000</us-gaap:DebtInstrumentPeriodicPaymentPrincipal>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="i369ef29f670e409d93c3900ac15f872c_D20191217-20191231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTQzNjM_7114d905-5b07-4f60-8e59-79518beec1ce"
      unitRef="number">0.0125</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="ibb2d42a7a0d04941bc3037db4d367073_D20191217-20191231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTQ0MDU_0046902e-8182-4ae4-a410-50d19a695d87"
      unitRef="number">0.0225</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DeferredFinanceCostsNet
      contextRef="i9da17e90d5044db980df1ac538041b4e_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTkwOTQ_4804f996-59b8-4c51-a60e-e9a827e0f2a5"
      unitRef="usd">489200000</us-gaap:DeferredFinanceCostsNet>
    <ibp:DebtInstrumentPrepaymentsPercentageOfNetCashProceeds
      contextRef="i348b56558ede44b8861dc95a4225ed0d_D20211201-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTQ5Njc_58375308-2d2e-43fa-8a10-e4d931e13ad4"
      unitRef="number">1</ibp:DebtInstrumentPrepaymentsPercentageOfNetCashProceeds>
    <ibp:DebtInstrumentPrepaymentsPercentageOfNetCashProceeds
      contextRef="i348b56558ede44b8861dc95a4225ed0d_D20211201-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTUxOTI_d38a308d-5e56-4362-8135-c40d99839a05"
      unitRef="number">1</ibp:DebtInstrumentPrepaymentsPercentageOfNetCashProceeds>
    <ibp:DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds
      contextRef="i1667b4619c3043ccb7ad8720ada33f65_D20211201-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTUyMTY_bba63b46-8bc2-4744-81e0-5868a4da3afc"
      unitRef="number">0.50</ibp:DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds>
    <ibp:DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds
      contextRef="ie7fc98e4645a435190e6c9695d751b2f_D20211201-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTUyMjQ_ee1ae666-603b-434d-b5ed-6fe26903bf50"
      unitRef="number">0</ibp:DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds>
    <ibp:DebtInstrumentPrepaymentsPercentageOfNetCashProceeds2
      contextRef="i348b56558ede44b8861dc95a4225ed0d_D20211201-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTU1MTM_466334b5-e11d-452b-ae6a-df27136b7fbf"
      unitRef="number">0.50</ibp:DebtInstrumentPrepaymentsPercentageOfNetCashProceeds2>
    <ibp:DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds2
      contextRef="i1667b4619c3043ccb7ad8720ada33f65_D20211201-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTU1Mzc_06b5258e-b07f-4acc-a27c-5a411a47dda5"
      unitRef="number">0.25</ibp:DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds2>
    <ibp:DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds2
      contextRef="ie7fc98e4645a435190e6c9695d751b2f_D20211201-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTU1NDU_deac8bbb-a9dc-48c0-a9f5-cb3bfb5bf833"
      unitRef="number">0</ibp:DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds2>
    <ibp:DebtInstrumentMaximumCashProceeds
      contextRef="i348b56558ede44b8861dc95a4225ed0d_D20211201-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2XzEwOTk1MTE2NTU2ODY_858bb07a-10c4-415c-905f-dc0dfd7b843a"
      unitRef="usd">15000000</ibp:DebtInstrumentMaximumCashProceeds>
    <us-gaap:DebtInstrumentTerm
      contextRef="i05826b04b32d488fa2a32dad9066cdeb_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2Xzc2NzI_6f47ff7e-a991-4d34-be21-ba480501682c">P60M</us-gaap:DebtInstrumentTerm>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="ib3d0c7e33c2948d7b16474ce673bdc63_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2Xzc5NjI_a4c3a309-f263-4427-ac54-905b9f1fc5e5"
      unitRef="usd">73000000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="i5cee4ffe61be49c6ae7aacfc5b5b9775_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDYvZnJhZzo2ZWU0NzJkNDQwNGY0ZDlkYTRhMWFmZTM1NzFhMWFlNi90ZXh0cmVnaW9uOjZlZTQ3MmQ0NDA0ZjRkOWRhNGExYWZlMzU3MWExYWU2Xzc5Njk_8fddeffe-5fcf-40c9-8767-d3f8f675ccb9"
      unitRef="usd">69200000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:LesseeFinanceLeasesTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90ZXh0cmVnaW9uOmUxMDBjZjczMjJhNjQxNjk5YWI4OTU2ZWY2Y2ExYmQ1XzEzNTA_4c0b2b52-ecac-4502-a1ff-aa35f8d7a4e3">LEASESWe lease various assets in the ordinary course of business as follows: warehouses to store our materials and perform staging activities for certain products we install; various office spaces for selling and administrative activities to support our business; and certain vehicles and equipment to facilitate our operations, including, but not limited to, trucks, forklifts and office equipment. &lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The table below presents the lease-related assets and liabilities recorded on the Consolidated Balance Sheet:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:28.139%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:40.274%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.501%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Classification&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-Current&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating&#160;lease&#160;right-of-use&#160;assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;76,174&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;69,871&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzUtMi0xLTEtMTAwMDAy_3f08309b-5457-499e-ae82-f8cdea3899fd"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzUtMi0xLTEtMTAwMDAy_b356578e-0cdd-4b5a-928c-9d4814d3c5ab"&gt;Property and equipment, net&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,928&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,266&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total lease assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;85,102&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;75,137&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current&#160;maturities&#160;of&#160;operating&#160;lease&#160;obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,145&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,224&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Financing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current maturities of finance lease obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,508&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,747&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-Current&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;49,789&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;46,075&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Financing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance lease obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,397&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,297&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;84,839&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;74,343&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:70.829%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.375%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted-average remaining lease term&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.0 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.3 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.6 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.3 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted-average discount rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.41&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.38&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5.76&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.96&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Lease Costs&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The table below presents certain information related to the lease costs for finance and operating leases during 2022, 2021 and 2020:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:41.005%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.221%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.449%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.595%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.602%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Classification&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease cost&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"&gt; (1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,158&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,357&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,454&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="padding-left:6.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amortization of leased assets &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(2)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cost of sales&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,241&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,083&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,645&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest on finance lease obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest&#160;expense,&#160;net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;324&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;218&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;268&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total lease costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;36,723&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;30,658&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,367&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:27pt;text-indent:-27pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(1)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:15.34pt"&gt;Includes variable lease costs of $3.7 million, $3.0 million and $2.9 million for the years ended December&#160;31, 2022, 2021 and 2020, respectively, and short-term lease costs of $1.1 million, $1.1 million and $0.8 million for the years ended December&#160;31, 2022, 2021 and 2020, respectively. &lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:27pt;text-indent:-27pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(2)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:15.34pt"&gt;Includes variable lease costs of $0.7 million for each of the three years ended December&#160;31, 2022, 2021 and 2020, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Other Information&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The table below presents supplemental cash flow information related to leases during 2022, 2021 and 2020:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:62.642%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.595%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.595%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.600%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash paid for amounts included in the measurement of lease liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating cash flows for operating leases&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,710&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,930&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,668&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating cash flows for finance leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;324&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;218&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;268&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Financing cash flows for finance leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,306&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,125&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,632&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Undiscounted Cash Flows&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The table below reconciles the undiscounted cash flows for each of the first five years and total of the remaining years for the finance lease obligations and operating lease obligations recorded on the Consolidated Balance Sheet as of December&#160;31, 2022:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:97.953%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:43.676%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.183%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.546%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.885%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.546%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.885%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.546%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.633%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance&#160;Leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating Leases&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Related&#160;Party&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&#160;Operating&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,954&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,421&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,512&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;28,933&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,438&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,175&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,222&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,397&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,075&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,017&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,837&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,854&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,745&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,114&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,114&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2027&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;774&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,252&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,252&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,559&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,559&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total minimum lease payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,986&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,613&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;79,496&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;83,109&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: Amounts representing executory costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: Amounts representing interest&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,075)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(7,175)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Present value of future minimum lease payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,905&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;75,934&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: Current obligation under leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,508)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(26,145)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term lease obligations&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,397&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;49,789&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LesseeFinanceLeasesTextBlock>
    <us-gaap:LesseeOperatingLeasesTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90ZXh0cmVnaW9uOmUxMDBjZjczMjJhNjQxNjk5YWI4OTU2ZWY2Y2ExYmQ1XzEzNTA_742cfe6c-181d-4f08-80ef-b45749032bb3">LEASESWe lease various assets in the ordinary course of business as follows: warehouses to store our materials and perform staging activities for certain products we install; various office spaces for selling and administrative activities to support our business; and certain vehicles and equipment to facilitate our operations, including, but not limited to, trucks, forklifts and office equipment. &lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The table below presents the lease-related assets and liabilities recorded on the Consolidated Balance Sheet:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:28.139%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:40.274%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.501%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Classification&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-Current&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating&#160;lease&#160;right-of-use&#160;assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;76,174&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;69,871&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzUtMi0xLTEtMTAwMDAy_3f08309b-5457-499e-ae82-f8cdea3899fd"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzUtMi0xLTEtMTAwMDAy_b356578e-0cdd-4b5a-928c-9d4814d3c5ab"&gt;Property and equipment, net&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,928&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,266&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total lease assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;85,102&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;75,137&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current&#160;maturities&#160;of&#160;operating&#160;lease&#160;obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,145&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,224&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Financing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current maturities of finance lease obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,508&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,747&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-Current&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;49,789&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;46,075&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Financing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance lease obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,397&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,297&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;84,839&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;74,343&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:70.829%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.375%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted-average remaining lease term&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.0 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.3 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.6 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.3 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted-average discount rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.41&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.38&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5.76&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.96&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Lease Costs&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The table below presents certain information related to the lease costs for finance and operating leases during 2022, 2021 and 2020:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:41.005%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.221%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.449%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.595%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.602%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Classification&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease cost&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"&gt; (1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,158&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,357&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,454&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="padding-left:6.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amortization of leased assets &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(2)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cost of sales&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,241&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,083&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,645&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest on finance lease obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest&#160;expense,&#160;net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;324&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;218&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;268&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total lease costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;36,723&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;30,658&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,367&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:27pt;text-indent:-27pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(1)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:15.34pt"&gt;Includes variable lease costs of $3.7 million, $3.0 million and $2.9 million for the years ended December&#160;31, 2022, 2021 and 2020, respectively, and short-term lease costs of $1.1 million, $1.1 million and $0.8 million for the years ended December&#160;31, 2022, 2021 and 2020, respectively. &lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:27pt;text-indent:-27pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(2)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:15.34pt"&gt;Includes variable lease costs of $0.7 million for each of the three years ended December&#160;31, 2022, 2021 and 2020, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Other Information&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The table below presents supplemental cash flow information related to leases during 2022, 2021 and 2020:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:62.642%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.595%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.595%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.600%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash paid for amounts included in the measurement of lease liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating cash flows for operating leases&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,710&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,930&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,668&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating cash flows for finance leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;324&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;218&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;268&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Financing cash flows for finance leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,306&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,125&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,632&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Undiscounted Cash Flows&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The table below reconciles the undiscounted cash flows for each of the first five years and total of the remaining years for the finance lease obligations and operating lease obligations recorded on the Consolidated Balance Sheet as of December&#160;31, 2022:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:97.953%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:43.676%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.183%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.546%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.885%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.546%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.885%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.546%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.633%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance&#160;Leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating Leases&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Related&#160;Party&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&#160;Operating&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,954&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,421&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,512&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;28,933&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,438&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,175&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,222&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,397&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,075&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,017&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,837&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,854&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,745&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,114&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,114&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2027&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;774&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,252&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,252&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,559&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,559&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total minimum lease payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,986&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,613&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;79,496&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;83,109&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: Amounts representing executory costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: Amounts representing interest&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,075)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(7,175)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Present value of future minimum lease payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,905&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;75,934&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: Current obligation under leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,508)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(26,145)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term lease obligations&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,397&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;49,789&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LesseeOperatingLeasesTextBlock>
    <ibp:AssetsAndLiabilitiesLesseeTableTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90ZXh0cmVnaW9uOmUxMDBjZjczMjJhNjQxNjk5YWI4OTU2ZWY2Y2ExYmQ1XzEzNDY_215985dc-42cd-421e-9c5a-57d077d2b853">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The table below presents the lease-related assets and liabilities recorded on the Consolidated Balance Sheet:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:28.139%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:40.274%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.501%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Classification&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-Current&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating&#160;lease&#160;right-of-use&#160;assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;76,174&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;69,871&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzUtMi0xLTEtMTAwMDAy_3f08309b-5457-499e-ae82-f8cdea3899fd"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzUtMi0xLTEtMTAwMDAy_b356578e-0cdd-4b5a-928c-9d4814d3c5ab"&gt;Property and equipment, net&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,928&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,266&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total lease assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;85,102&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;75,137&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current&#160;maturities&#160;of&#160;operating&#160;lease&#160;obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,145&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,224&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Financing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current maturities of finance lease obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,508&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,747&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-Current&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;49,789&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;46,075&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Financing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance lease obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,397&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,297&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;84,839&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;74,343&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:70.829%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.496%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.375%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted-average remaining lease term&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.0 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.3 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.6 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.3 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted-average discount rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.41&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.38&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5.76&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.96&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</ibp:AssetsAndLiabilitiesLesseeTableTextBlock>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzQtNC0xLTEtMTAwMDAy_3a5cc0c6-1b7a-4946-a247-27a293cf3e19"
      unitRef="usd">76174000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzQtNi0xLTEtMTAwMDAy_eae068b9-e944-426f-82e4-654852648861"
      unitRef="usd">69871000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:FinanceLeaseRightOfUseAsset
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzUtNC0xLTEtMTAwMDAy_31c12028-3088-4ac0-8979-88a8267b2f9c"
      unitRef="usd">8928000</us-gaap:FinanceLeaseRightOfUseAsset>
    <us-gaap:FinanceLeaseRightOfUseAsset
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzUtNi0xLTEtMTAwMDAy_cbf66c98-28b5-4aa9-a50a-de4ec05641fc"
      unitRef="usd">5266000</us-gaap:FinanceLeaseRightOfUseAsset>
    <ibp:LeaseAssets
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzYtNC0xLTEtMTAwMDAy_66cad2e6-f84b-40e8-a022-6a23bda6059c"
      unitRef="usd">85102000</ibp:LeaseAssets>
    <ibp:LeaseAssets
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzYtNi0xLTEtMTAwMDAy_9fc279b0-e601-454d-bb7e-67f06db97d9c"
      unitRef="usd">75137000</ibp:LeaseAssets>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzktNC0xLTEtMTAwMDAy_3c6abcfd-0d51-44d7-8cc9-48a76ccab63c"
      unitRef="usd">26145000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzktNi0xLTEtMTAwMDAy_7029ca95-63e1-449c-90ea-7b20c8c50ffd"
      unitRef="usd">23224000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:FinanceLeaseLiabilityCurrent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzEwLTQtMS0xLTEwMDAwMg_ff2bbf15-79fd-4a99-9054-9381e8933790"
      unitRef="usd">2508000</us-gaap:FinanceLeaseLiabilityCurrent>
    <us-gaap:FinanceLeaseLiabilityCurrent
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzEwLTYtMS0xLTEwMDAwMg_142448a8-ea05-4099-a57c-90326795bd41"
      unitRef="usd">1747000</us-gaap:FinanceLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzEyLTQtMS0xLTEwMDAwMg_628c6df1-171c-4ebf-a69c-1b734872d9a7"
      unitRef="usd">49789000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzEyLTYtMS0xLTEwMDAwMg_824c2c38-fb7b-4ac4-9840-49270e8b24a4"
      unitRef="usd">46075000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:FinanceLeaseLiabilityNoncurrent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzEzLTQtMS0xLTEwMDAwMg_6f274213-1eb4-4326-941e-fa36f40e82b7"
      unitRef="usd">6397000</us-gaap:FinanceLeaseLiabilityNoncurrent>
    <us-gaap:FinanceLeaseLiabilityNoncurrent
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzEzLTYtMS0xLTEwMDAwMg_6e684430-d269-4076-bad1-9a9f686a3ff4"
      unitRef="usd">3297000</us-gaap:FinanceLeaseLiabilityNoncurrent>
    <ibp:LeaseLiabilities
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzE0LTQtMS0xLTEwMDAwMg_721cc338-8584-4e7d-a70d-f9ba79732427"
      unitRef="usd">84839000</ibp:LeaseLiabilities>
    <ibp:LeaseLiabilities
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo1NTE0OTlkOWM0MDg0ODQ4ODU3Y2M3YWMzOTc4NzkxNy90YWJsZXJhbmdlOjU1MTQ5OWQ5YzQwODQ4NDg4NTdjYzdhYzM5Nzg3OTE3XzE0LTYtMS0xLTEwMDAwMg_28a2766e-6dfe-4a6f-8753-50de0ab43823"
      unitRef="usd">74343000</ibp:LeaseLiabilities>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmMjBkNTIxYWRjOTk0ODdiODY5NjIyNTM3YWYxYzRiOS90YWJsZXJhbmdlOmYyMGQ1MjFhZGM5OTQ4N2I4Njk2MjI1MzdhZjFjNGI5XzEtMS0xLTEtMTAwMDAy_1e7fc9a5-3cd1-449f-887f-9bffe33ace5b">P4Y</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmMjBkNTIxYWRjOTk0ODdiODY5NjIyNTM3YWYxYzRiOS90YWJsZXJhbmdlOmYyMGQ1MjFhZGM5OTQ4N2I4Njk2MjI1MzdhZjFjNGI5XzEtMi0xLTEtMTAwMDAy_3f699538-3a99-4cea-84b2-3d92a7810446">P4Y3M18D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:FinanceLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmMjBkNTIxYWRjOTk0ODdiODY5NjIyNTM3YWYxYzRiOS90YWJsZXJhbmdlOmYyMGQ1MjFhZGM5OTQ4N2I4Njk2MjI1MzdhZjFjNGI5XzItMS0xLTEtMTAwMDAy_0b6e62cc-2cb1-4f85-b8d4-8d51fdcd617b">P3Y7M6D</us-gaap:FinanceLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:FinanceLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmMjBkNTIxYWRjOTk0ODdiODY5NjIyNTM3YWYxYzRiOS90YWJsZXJhbmdlOmYyMGQ1MjFhZGM5OTQ4N2I4Njk2MjI1MzdhZjFjNGI5XzItMi0xLTEtMTAwMDAy_f9afb586-1515-4233-884f-38dd4fef5809">P3Y3M18D</us-gaap:FinanceLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmMjBkNTIxYWRjOTk0ODdiODY5NjIyNTM3YWYxYzRiOS90YWJsZXJhbmdlOmYyMGQ1MjFhZGM5OTQ4N2I4Njk2MjI1MzdhZjFjNGI5XzQtMS0xLTEtMTAwMDAy_ce4e7505-f50b-4e7f-bd1c-763634e61826"
      unitRef="number">0.0441</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmMjBkNTIxYWRjOTk0ODdiODY5NjIyNTM3YWYxYzRiOS90YWJsZXJhbmdlOmYyMGQ1MjFhZGM5OTQ4N2I4Njk2MjI1MzdhZjFjNGI5XzQtMi0xLTEtMTAwMDAy_78390eff-ee68-4a58-822f-aefd390f2405"
      unitRef="number">0.0338</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:FinanceLeaseWeightedAverageDiscountRatePercent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmMjBkNTIxYWRjOTk0ODdiODY5NjIyNTM3YWYxYzRiOS90YWJsZXJhbmdlOmYyMGQ1MjFhZGM5OTQ4N2I4Njk2MjI1MzdhZjFjNGI5XzUtMS0xLTEtMTAwMDAy_cd15b980-c805-4eb9-a0f2-1a653306842d"
      unitRef="number">0.0576</us-gaap:FinanceLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:FinanceLeaseWeightedAverageDiscountRatePercent
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmMjBkNTIxYWRjOTk0ODdiODY5NjIyNTM3YWYxYzRiOS90YWJsZXJhbmdlOmYyMGQ1MjFhZGM5OTQ4N2I4Njk2MjI1MzdhZjFjNGI5XzUtMi0xLTEtMTAwMDAy_ad2f7c1f-e084-43d4-9b49-53d0bbbf3f12"
      unitRef="number">0.0496</us-gaap:FinanceLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:LeaseCostTableTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90ZXh0cmVnaW9uOmUxMDBjZjczMjJhNjQxNjk5YWI4OTU2ZWY2Y2ExYmQ1XzEzNTE_e0214a57-2bc0-43d3-8fbb-93ca96231717">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The table below presents certain information related to the lease costs for finance and operating leases during 2022, 2021 and 2020:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:41.005%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.221%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.449%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.595%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.602%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Classification&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease cost&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"&gt; (1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,158&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,357&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,454&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="padding-left:6.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amortization of leased assets &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(2)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cost of sales&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,241&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,083&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,645&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest on finance lease obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest&#160;expense,&#160;net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;324&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;218&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;268&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total lease costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;36,723&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;30,658&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,367&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:27pt;text-indent:-27pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(1)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:15.34pt"&gt;Includes variable lease costs of $3.7 million, $3.0 million and $2.9 million for the years ended December&#160;31, 2022, 2021 and 2020, respectively, and short-term lease costs of $1.1 million, $1.1 million and $0.8 million for the years ended December&#160;31, 2022, 2021 and 2020, respectively. &lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:27pt;text-indent:-27pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(2)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:15.34pt"&gt;Includes variable lease costs of $0.7 million for each of the three years ended December&#160;31, 2022, 2021 and 2020, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The table below presents supplemental cash flow information related to leases during 2022, 2021 and 2020:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:62.642%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.595%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.595%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.600%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash paid for amounts included in the measurement of lease liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating cash flows for operating leases&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,710&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,930&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,668&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating cash flows for finance leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;324&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;218&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;268&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Financing cash flows for finance leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,306&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,125&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,632&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LeaseCostTableTextBlock>
    <us-gaap:OperatingLeaseCost
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmM2UzNjUxZTg5YTI0NzQ0YmE3NmZjZjRiMWM0ZjU5NC90YWJsZXJhbmdlOmYzZTM2NTFlODlhMjQ3NDRiYTc2ZmNmNGIxYzRmNTk0XzItNC0xLTEtMTAwMDAy_f7b53fad-af4e-4c4e-b029-b44f1dc3b4ff"
      unitRef="usd">33158000</us-gaap:OperatingLeaseCost>
    <us-gaap:OperatingLeaseCost
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmM2UzNjUxZTg5YTI0NzQ0YmE3NmZjZjRiMWM0ZjU5NC90YWJsZXJhbmdlOmYzZTM2NTFlODlhMjQ3NDRiYTc2ZmNmNGIxYzRmNTk0XzItNi0xLTEtMTAwMDAy_5075ff4a-3f1a-42c0-9596-ce2f67a73927"
      unitRef="usd">27357000</us-gaap:OperatingLeaseCost>
    <us-gaap:OperatingLeaseCost
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmM2UzNjUxZTg5YTI0NzQ0YmE3NmZjZjRiMWM0ZjU5NC90YWJsZXJhbmdlOmYzZTM2NTFlODlhMjQ3NDRiYTc2ZmNmNGIxYzRmNTk0XzItOC0xLTEtMTAwMDAy_0ec7d72a-4194-4a12-8e0d-26b3b087c1c5"
      unitRef="usd">23454000</us-gaap:OperatingLeaseCost>
    <us-gaap:FinanceLeaseRightOfUseAssetAmortization
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmM2UzNjUxZTg5YTI0NzQ0YmE3NmZjZjRiMWM0ZjU5NC90YWJsZXJhbmdlOmYzZTM2NTFlODlhMjQ3NDRiYTc2ZmNmNGIxYzRmNTk0XzQtNC0xLTEtMTAwMDAy_009801b5-5e12-4a91-aa03-7695305aa335"
      unitRef="usd">3241000</us-gaap:FinanceLeaseRightOfUseAssetAmortization>
    <us-gaap:FinanceLeaseRightOfUseAssetAmortization
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmM2UzNjUxZTg5YTI0NzQ0YmE3NmZjZjRiMWM0ZjU5NC90YWJsZXJhbmdlOmYzZTM2NTFlODlhMjQ3NDRiYTc2ZmNmNGIxYzRmNTk0XzQtNi0xLTEtMTAwMDAy_b241c5b6-8e58-4a47-a95f-14d8092fb690"
      unitRef="usd">3083000</us-gaap:FinanceLeaseRightOfUseAssetAmortization>
    <us-gaap:FinanceLeaseRightOfUseAssetAmortization
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmM2UzNjUxZTg5YTI0NzQ0YmE3NmZjZjRiMWM0ZjU5NC90YWJsZXJhbmdlOmYzZTM2NTFlODlhMjQ3NDRiYTc2ZmNmNGIxYzRmNTk0XzQtOC0xLTEtMTAwMDAy_c25d2478-7ec6-45bf-99f6-f668e7b67b68"
      unitRef="usd">3645000</us-gaap:FinanceLeaseRightOfUseAssetAmortization>
    <us-gaap:FinanceLeaseInterestExpense
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmM2UzNjUxZTg5YTI0NzQ0YmE3NmZjZjRiMWM0ZjU5NC90YWJsZXJhbmdlOmYzZTM2NTFlODlhMjQ3NDRiYTc2ZmNmNGIxYzRmNTk0XzUtNC0xLTEtMTAwMDAy_45729bcf-4f60-4bab-b46d-142b64be90b0"
      unitRef="usd">324000</us-gaap:FinanceLeaseInterestExpense>
    <us-gaap:FinanceLeaseInterestExpense
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmM2UzNjUxZTg5YTI0NzQ0YmE3NmZjZjRiMWM0ZjU5NC90YWJsZXJhbmdlOmYzZTM2NTFlODlhMjQ3NDRiYTc2ZmNmNGIxYzRmNTk0XzUtNi0xLTEtMTAwMDAy_9924bcc1-c051-4568-846a-88da3ee49d47"
      unitRef="usd">218000</us-gaap:FinanceLeaseInterestExpense>
    <us-gaap:FinanceLeaseInterestExpense
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmM2UzNjUxZTg5YTI0NzQ0YmE3NmZjZjRiMWM0ZjU5NC90YWJsZXJhbmdlOmYzZTM2NTFlODlhMjQ3NDRiYTc2ZmNmNGIxYzRmNTk0XzUtOC0xLTEtMTAwMDAy_1cb92bc4-0d6d-4ff1-9f99-841172708d49"
      unitRef="usd">268000</us-gaap:FinanceLeaseInterestExpense>
    <us-gaap:LeaseCost
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmM2UzNjUxZTg5YTI0NzQ0YmE3NmZjZjRiMWM0ZjU5NC90YWJsZXJhbmdlOmYzZTM2NTFlODlhMjQ3NDRiYTc2ZmNmNGIxYzRmNTk0XzYtNC0xLTEtMTAwMDAy_f99eecec-01ae-42e6-b3d4-07f849e8b298"
      unitRef="usd">36723000</us-gaap:LeaseCost>
    <us-gaap:LeaseCost
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmM2UzNjUxZTg5YTI0NzQ0YmE3NmZjZjRiMWM0ZjU5NC90YWJsZXJhbmdlOmYzZTM2NTFlODlhMjQ3NDRiYTc2ZmNmNGIxYzRmNTk0XzYtNi0xLTEtMTAwMDAy_cf7deb72-8e39-4b43-9b2c-97987b68bf38"
      unitRef="usd">30658000</us-gaap:LeaseCost>
    <us-gaap:LeaseCost
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpmM2UzNjUxZTg5YTI0NzQ0YmE3NmZjZjRiMWM0ZjU5NC90YWJsZXJhbmdlOmYzZTM2NTFlODlhMjQ3NDRiYTc2ZmNmNGIxYzRmNTk0XzYtOC0xLTEtMTAwMDAy_1d85982b-87b8-4790-b1ea-797d6b66f45b"
      unitRef="usd">27367000</us-gaap:LeaseCost>
    <us-gaap:VariableLeaseCost
      contextRef="i44030115f3dc47f394d19aada0ec45cc_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90ZXh0cmVnaW9uOmUxMDBjZjczMjJhNjQxNjk5YWI4OTU2ZWY2Y2ExYmQ1XzcwOA_59265237-6812-4ff5-b350-6fafb2fbf62f"
      unitRef="usd">3700000</us-gaap:VariableLeaseCost>
    <us-gaap:VariableLeaseCost
      contextRef="i9722915df0974c458f470a40cb51bcc3_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90ZXh0cmVnaW9uOmUxMDBjZjczMjJhNjQxNjk5YWI4OTU2ZWY2Y2ExYmQ1XzcxMg_ea9e7dd5-969a-4dbe-957d-760140d8bd06"
      unitRef="usd">3000000</us-gaap:VariableLeaseCost>
    <us-gaap:VariableLeaseCost
      contextRef="i23f641ea860741b4898eb88a1038ed66_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90ZXh0cmVnaW9uOmUxMDBjZjczMjJhNjQxNjk5YWI4OTU2ZWY2Y2ExYmQ1XzcxOQ_c4a1777f-1b49-4109-a9c6-c9fc17dd01cb"
      unitRef="usd">2900000</us-gaap:VariableLeaseCost>
    <us-gaap:ShortTermLeaseCost
      contextRef="i44030115f3dc47f394d19aada0ec45cc_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90ZXh0cmVnaW9uOmUxMDBjZjczMjJhNjQxNjk5YWI4OTU2ZWY2Y2ExYmQ1XzgwMQ_86049be0-def5-4428-9b94-cd97b7fb8b7c"
      unitRef="usd">1100000</us-gaap:ShortTermLeaseCost>
    <us-gaap:ShortTermLeaseCost
      contextRef="i9722915df0974c458f470a40cb51bcc3_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90ZXh0cmVnaW9uOmUxMDBjZjczMjJhNjQxNjk5YWI4OTU2ZWY2Y2ExYmQ1XzgwNQ_22ee150b-ce23-4205-a655-5af99fcffd96"
      unitRef="usd">1100000</us-gaap:ShortTermLeaseCost>
    <us-gaap:ShortTermLeaseCost
      contextRef="i23f641ea860741b4898eb88a1038ed66_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90ZXh0cmVnaW9uOmUxMDBjZjczMjJhNjQxNjk5YWI4OTU2ZWY2Y2ExYmQ1XzgxMg_4a30fdb6-b2c1-4fb7-ada9-71fdbd4c3c9f"
      unitRef="usd">800000</us-gaap:ShortTermLeaseCost>
    <us-gaap:VariableLeaseCost
      contextRef="i08920745a8f5413683e3316127588e2a_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90ZXh0cmVnaW9uOmUxMDBjZjczMjJhNjQxNjk5YWI4OTU2ZWY2Y2ExYmQ1XzkwOQ_bb77f3c4-3d99-49fb-a1e0-e72fc58e2d09"
      unitRef="usd">700000</us-gaap:VariableLeaseCost>
    <us-gaap:OperatingLeasePayments
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpiM2M2ZDZhZWNjMTY0MGQxODk1ZjdhZWU1NzQ4OTViNi90YWJsZXJhbmdlOmIzYzZkNmFlY2MxNjQwZDE4OTVmN2FlZTU3NDg5NWI2XzMtMS0xLTEtMTAwMDAy_795d2888-53e9-4b7b-bb73-308e7ce6d01e"
      unitRef="usd">27710000</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeasePayments
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpiM2M2ZDZhZWNjMTY0MGQxODk1ZjdhZWU1NzQ4OTViNi90YWJsZXJhbmdlOmIzYzZkNmFlY2MxNjQwZDE4OTVmN2FlZTU3NDg5NWI2XzMtMy0xLTEtMTAwMDAy_8296fd88-3c89-446f-a6a9-899f300b3d54"
      unitRef="usd">22930000</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeasePayments
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpiM2M2ZDZhZWNjMTY0MGQxODk1ZjdhZWU1NzQ4OTViNi90YWJsZXJhbmdlOmIzYzZkNmFlY2MxNjQwZDE4OTVmN2FlZTU3NDg5NWI2XzMtNS0xLTEtMTAwMDAy_045f6e4b-ccc3-45a9-871e-52825e4ee735"
      unitRef="usd">19668000</us-gaap:OperatingLeasePayments>
    <us-gaap:FinanceLeaseInterestPaymentOnLiability
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpiM2M2ZDZhZWNjMTY0MGQxODk1ZjdhZWU1NzQ4OTViNi90YWJsZXJhbmdlOmIzYzZkNmFlY2MxNjQwZDE4OTVmN2FlZTU3NDg5NWI2XzQtMS0xLTEtMTAwMDAy_c27c530f-80fb-4520-b85d-6bf0b8424657"
      unitRef="usd">324000</us-gaap:FinanceLeaseInterestPaymentOnLiability>
    <us-gaap:FinanceLeaseInterestPaymentOnLiability
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpiM2M2ZDZhZWNjMTY0MGQxODk1ZjdhZWU1NzQ4OTViNi90YWJsZXJhbmdlOmIzYzZkNmFlY2MxNjQwZDE4OTVmN2FlZTU3NDg5NWI2XzQtMy0xLTEtMTAwMDAy_33c1e685-4fbe-4e52-857e-3caa1cfc1e53"
      unitRef="usd">218000</us-gaap:FinanceLeaseInterestPaymentOnLiability>
    <us-gaap:FinanceLeaseInterestPaymentOnLiability
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpiM2M2ZDZhZWNjMTY0MGQxODk1ZjdhZWU1NzQ4OTViNi90YWJsZXJhbmdlOmIzYzZkNmFlY2MxNjQwZDE4OTVmN2FlZTU3NDg5NWI2XzQtNS0xLTEtMTAwMDAy_0a295e41-0c95-426c-9526-387c4369ac38"
      unitRef="usd">268000</us-gaap:FinanceLeaseInterestPaymentOnLiability>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpiM2M2ZDZhZWNjMTY0MGQxODk1ZjdhZWU1NzQ4OTViNi90YWJsZXJhbmdlOmIzYzZkNmFlY2MxNjQwZDE4OTVmN2FlZTU3NDg5NWI2XzUtMS0xLTEtMTAwMDAy_d7e0a27d-f053-4413-b9b4-74e21bbc98b6"
      unitRef="usd">2306000</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpiM2M2ZDZhZWNjMTY0MGQxODk1ZjdhZWU1NzQ4OTViNi90YWJsZXJhbmdlOmIzYzZkNmFlY2MxNjQwZDE4OTVmN2FlZTU3NDg5NWI2XzUtMy0xLTEtMTAwMDAy_45d955c4-d6e4-473c-9b2d-5957a49f6276"
      unitRef="usd">2125000</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTpiM2M2ZDZhZWNjMTY0MGQxODk1ZjdhZWU1NzQ4OTViNi90YWJsZXJhbmdlOmIzYzZkNmFlY2MxNjQwZDE4OTVmN2FlZTU3NDg5NWI2XzUtNS0xLTEtMTAwMDAy_0e41ea2f-c387-4682-8765-212fffb8a7de"
      unitRef="usd">2632000</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90ZXh0cmVnaW9uOmUxMDBjZjczMjJhNjQxNjk5YWI4OTU2ZWY2Y2ExYmQ1XzEzNDg_03ca2487-ec19-4751-8fc8-44ff7cc8e426">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The table below reconciles the undiscounted cash flows for each of the first five years and total of the remaining years for the finance lease obligations and operating lease obligations recorded on the Consolidated Balance Sheet as of December&#160;31, 2022:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:97.953%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:43.676%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.183%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.546%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.885%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.546%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.885%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.546%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.633%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance&#160;Leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating Leases&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Related&#160;Party&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&#160;Operating&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,954&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,421&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,512&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;28,933&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,438&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,175&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,222&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,397&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,075&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,017&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,837&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,854&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,745&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,114&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,114&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2027&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;774&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,252&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,252&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,559&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,559&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total minimum lease payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,986&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,613&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;79,496&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;83,109&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: Amounts representing executory costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: Amounts representing interest&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,075)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(7,175)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Present value of future minimum lease payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,905&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;75,934&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: Current obligation under leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,508)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(26,145)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term lease obligations&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,397&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;49,789&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90ZXh0cmVnaW9uOmUxMDBjZjczMjJhNjQxNjk5YWI4OTU2ZWY2Y2ExYmQ1XzEzNDk_04920df1-f317-408e-b602-ba19a5a78dd3">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The table below reconciles the undiscounted cash flows for each of the first five years and total of the remaining years for the finance lease obligations and operating lease obligations recorded on the Consolidated Balance Sheet as of December&#160;31, 2022:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:97.953%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:43.676%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.183%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.546%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.885%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.546%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.885%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.546%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.633%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance&#160;Leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating Leases&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Related&#160;Party&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&#160;Operating&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,954&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,421&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,512&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;28,933&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,438&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,175&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,222&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,397&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,075&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,017&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,837&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,854&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,745&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,114&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,114&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2027&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;774&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,252&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,252&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,559&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,559&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total minimum lease payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,986&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,613&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;79,496&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;83,109&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: Amounts representing executory costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: Amounts representing interest&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,075)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(7,175)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Present value of future minimum lease payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,905&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;75,934&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: Current obligation under leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,508)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(26,145)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term lease obligations&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,397&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;49,789&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzItMS0xLTEtMTAwMDAy_9eb2aacb-88eb-42f7-8cd5-3d87618b70ae"
      unitRef="usd">2954000</us-gaap:FinanceLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="i25b223b5601449dca61b5ffe8caa493f_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzItMy0xLTEtMTAwMDAy_4061962f-f744-4c92-aa9b-5568f186dee9"
      unitRef="usd">1421000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="i2a806add24c44945bfa06ae48dc2a5fb_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzItNS0xLTEtMTAwMDAy_7c03c2d9-75bf-4d8b-9df0-e98f5d418c41"
      unitRef="usd">27512000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzItNy0xLTEtMTAwMDAy_1721c51f-9072-4419-b3d5-2b317c30972b"
      unitRef="usd">28933000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueYearTwo
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzMtMS0xLTEtMTAwMDAy_fbdecc8b-26dc-4ad3-af3b-6651e5045ff4"
      unitRef="usd">2438000</us-gaap:FinanceLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="i25b223b5601449dca61b5ffe8caa493f_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzMtMy0xLTEtMTAwMDAy_bd5c5fa5-4419-4ba6-8119-a3678668e418"
      unitRef="usd">1175000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="i2a806add24c44945bfa06ae48dc2a5fb_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzMtNS0xLTEtMTAwMDAy_31b02862-5b33-42b3-9d51-c9b6cce551f9"
      unitRef="usd">19222000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzMtNy0xLTEtMTAwMDAy_0a6a16c7-20b9-4a34-b7c9-0f8047fba3c9"
      unitRef="usd">20397000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueYearThree
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzQtMS0xLTEtMTAwMDAy_a85c33ff-fefa-44b8-b577-5908970e321c"
      unitRef="usd">2075000</us-gaap:FinanceLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree
      contextRef="i25b223b5601449dca61b5ffe8caa493f_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzQtMy0xLTEtMTAwMDAy_f4e8afe8-a7f0-4ec7-bdd1-a1ba1e65382e"
      unitRef="usd">1017000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree
      contextRef="i2a806add24c44945bfa06ae48dc2a5fb_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzQtNS0xLTEtMTAwMDAy_f22c78b5-1252-4efa-8e99-0ac8cd7ff998"
      unitRef="usd">12837000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzQtNy0xLTEtMTAwMDAy_852c09e7-85e2-445c-af28-667a21024c61"
      unitRef="usd">13854000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueYearFour
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzUtMS0xLTEtMTAwMDAy_d9592e96-488a-4484-bccb-a7e9d18f5e1b"
      unitRef="usd">1745000</us-gaap:FinanceLeaseLiabilityPaymentsDueYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour
      contextRef="i25b223b5601449dca61b5ffe8caa493f_I20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzUtMy0xLTEtMTAwMDAy_d34533a5-5019-427f-b649-9f19d710a87e"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour
      contextRef="i2a806add24c44945bfa06ae48dc2a5fb_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzUtNS0xLTEtMTAwMDAy_5f53b954-2691-4033-846e-943b40030285"
      unitRef="usd">9114000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzUtNy0xLTEtMTAwMDAy_b18fad1b-1c2f-4d07-8cda-aed696c78f45"
      unitRef="usd">9114000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueYearFive
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzYtMS0xLTEtMTAwMDAy_d80d2df3-6586-4682-87d2-42d7e05b311e"
      unitRef="usd">774000</us-gaap:FinanceLeaseLiabilityPaymentsDueYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive
      contextRef="i25b223b5601449dca61b5ffe8caa493f_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzYtMy0xLTEtMTAwMDAy_3001c353-fbe0-4dfa-8d64-1b7f9bdec4eb"
      unitRef="usd">0</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive
      contextRef="i2a806add24c44945bfa06ae48dc2a5fb_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzYtNS0xLTEtMTAwMDAy_16623ca9-b71e-4134-871d-4aae30effecf"
      unitRef="usd">5252000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzYtNy0xLTEtMTAwMDAy_edb876b1-fba6-4b4b-9484-4a63b2cf46ef"
      unitRef="usd">5252000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueAfterYearFive
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzctMS0xLTEtMTAwMDAy_3ef76b94-f7bf-4eaa-b3d5-506619ec1049"
      unitRef="usd">0</us-gaap:FinanceLeaseLiabilityPaymentsDueAfterYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive
      contextRef="i25b223b5601449dca61b5ffe8caa493f_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzctMy0xLTEtMTAwMDAy_ca68ed30-1d3f-4ba7-8118-4a45ea1eb62e"
      unitRef="usd">0</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive
      contextRef="i2a806add24c44945bfa06ae48dc2a5fb_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzctNS0xLTEtMTAwMDAy_3853aa13-6c02-4a29-b084-bae6fb9ecb8a"
      unitRef="usd">5559000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzctNy0xLTEtMTAwMDAy_9eb0ab49-0c37-4cd2-8a50-5ee3b84d78ea"
      unitRef="usd">5559000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive>
    <us-gaap:FinanceLeaseLiabilityPaymentsDue
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzgtMS0xLTEtMTAwMDAy_fb2a485b-43af-4717-ad00-23fceed47c71"
      unitRef="usd">9986000</us-gaap:FinanceLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="i25b223b5601449dca61b5ffe8caa493f_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzgtMy0xLTEtMTAwMDAy_23d5a6a4-d60d-4dae-ba47-7c9de573b85d"
      unitRef="usd">3613000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="i2a806add24c44945bfa06ae48dc2a5fb_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzgtNS0xLTEtMTAwMDAy_c1d05bd1-608d-4dff-9f2d-d1452283ca4c"
      unitRef="usd">79496000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzgtNy0xLTEtMTAwMDAy_fd0c9b89-26b9-4221-82de-c81e1db849d4"
      unitRef="usd">83109000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <ibp:FinanceLeaseExecutoryCosts
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzktMS0xLTEtMTAwMDAy_70e29f42-4a78-477b-978d-286d5d74b262"
      unitRef="usd">6000</ibp:FinanceLeaseExecutoryCosts>
    <us-gaap:FinanceLeaseLiabilityUndiscountedExcessAmount
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzEwLTEtMS0xLTEwMDAwMg_7bf0eecb-82ef-480e-b583-7eec238b1ef6"
      unitRef="usd">1075000</us-gaap:FinanceLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzEwLTctMS0xLTEwMDAwMg_ce052b2d-8db9-4518-bf14-e3f1084dfd7c"
      unitRef="usd">7175000</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:FinanceLeaseLiability
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzExLTEtMS0xLTEwMDAwMg_bc95af12-58e6-4523-88a0-9251e61faf11"
      unitRef="usd">8905000</us-gaap:FinanceLeaseLiability>
    <us-gaap:OperatingLeaseLiability
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzExLTctMS0xLTEwMDAwMg_86bbdfa2-556a-45e8-830b-f409fc809a50"
      unitRef="usd">75934000</us-gaap:OperatingLeaseLiability>
    <us-gaap:FinanceLeaseLiabilityCurrent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzEyLTEtMS0xLTEwMDAwMg_0e0d8b2e-5ae9-43d5-ab86-956d65b9b931"
      unitRef="usd">2508000</us-gaap:FinanceLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzEyLTctMS0xLTEwMDAwMg_9b8b67ce-9e9e-4f09-8fa0-f5c3a0d8e6cc"
      unitRef="usd">26145000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:FinanceLeaseLiabilityNoncurrent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzEzLTEtMS0xLTEwMDAwMg_16956803-2c81-4aab-9146-c4c5c9e12592"
      unitRef="usd">6397000</us-gaap:FinanceLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMDkvZnJhZzplMTAwY2Y3MzIyYTY0MTY5OWFiODk1NmVmNmNhMWJkNS90YWJsZTo3ZTQyODliNmE3OTI0NGMyOTJhMjFlMTlkMmU2NGQ4Zi90YWJsZXJhbmdlOjdlNDI4OWI2YTc5MjQ0YzI5MmEyMWUxOWQyZTY0ZDhmXzEzLTctMS0xLTEwMDAwMg_e60e87ca-b303-414f-90ee-02c749cb81c0"
      unitRef="usd">49789000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:FairValueDisclosuresTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90ZXh0cmVnaW9uOjcyYjQzMjQzZGRkOTQzNjM5MmNkZjNkYWE4NmRiMDQxXzUwMTc_b865259e-a891-4b52-bcc7-f8d007494df4">FAIR VALUE MEASUREMENTS&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Fair Values&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Fair value is the price that would be received for an asset or paid to transfer a liability (an exit price) in the principal or most advantageous market for the asset or liability in an orderly transaction between market participants on the measurement date.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;ASC 820, &#x201c;Fair Value Measurement,&#x201d; establishes a fair value hierarchy that requires an entity to maximize the use of observable inputs and minimize the use of unobservable inputs when measuring fair value. The standard describes three levels of inputs that may be used to measure fair value:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;padding-left:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Level 1: Quoted prices (unadjusted) for identical assets or liabilities in active markets that the entity has the ability to access as of the measurement date.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;padding-left:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Level 2: Significant other observable inputs other than Level 1 prices such as quoted prices for similar assets or liabilities; quoted prices in markets that are not active; or other inputs that are observable or can be corroborated by observable market data.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;padding-left:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Level 3: Significant unobservable inputs that reflect a reporting entity&#x2019;s own assumptions about the assumptions that market participants would use in pricing an asset or liability.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Assets and Liabilities Measured at Fair Value on a Recurring Basis&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In many cases, a valuation technique used to measure fair value includes inputs from multiple levels of the fair value hierarchy. The lowest level of significant input determines the placement of the entire fair value measurement in the hierarchy. During the periods presented, there were no transfers between fair value hierarchical levels.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Assets Measured at Fair Value on a Nonrecurring Basis&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Certain assets, specifically other intangible and long-lived assets, are measured at fair value on a nonrecurring basis in periods subsequent to initial recognition. Assets measured at fair value on a nonrecurring basis as of December&#160;31, 2022 and 2021 are categorized based on the lowest level of significant input to the valuation. The assets are measured at fair value when our impairment assessment indicates a carrying value for each of the assets in excess of the asset&#x2019;s estimated fair value. Undiscounted cash flows, a Level 3 input, are utilized in determining estimated fair values. During each of the years ended December&#160;31, 2022, 2021 and 2020, we did not record any impairments on these assets required to be measured at fair value on a nonrecurring basis.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Estimated Fair Value of Financial Instruments&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accounts receivable, accounts payable and accrued liabilities as of December&#160;31, 2022 and 2021 approximate fair value due to the short-term maturities of these financial instruments. The carrying amounts of certain long-term debt, including the Term Loan and ABL Revolver as of December&#160;31, 2022 and 2021, approximate fair value due to the variable rate nature of the agreements. The carrying amounts of our operating lease right-of-use assets and the obligations associated with our operating and finance leases as well as our vehicle and equipment notes approximate fair value as of December&#160;31, 2022 and 2021. All debt classifications represent Level 2 fair value measurements. Derivative financial instruments are measured at fair value based on observable market information and appropriate valuation methods. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Contingent consideration liabilities arise from future earnout payments to the sellers associated with certain acquisitions and are based on predetermined calculations of certain future results. These future payments are estimated by considering various factors, including business risk and projections. The contingent consideration liabilities are measured at fair value by discounting estimated future payments to their net present value. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The fair values of financial assets and liabilities that are recorded at fair value in the Consolidated Balance Sheets and not described above were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:27.408%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.671%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.671%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.233%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.233%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.379%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.233%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.233%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.951%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Level&#160;1&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Level&#160;2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Level&#160;3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Level&#160;1&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Level&#160;2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Level&#160;3&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Financial assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash equivalents&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;191,881&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;191,881&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;258,055&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;258,055&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Derivative financial instruments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38,671&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38,671&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,830&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,830&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzUtMC0xLTEtMTAwMDAy_2f118e6b-355c-4162-8970-b998a5ae5450"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzUtMC0xLTEtMTAwMDAy_70c840c6-6a79-4f97-a58a-b08f6f1bdbef"&gt;Total financial assets&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;230,552&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;191,881&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38,671&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;272,885&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;258,055&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,830&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Financial liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Contingent consideration&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,858&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,858&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,170&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,170&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Derivative financial instruments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,937&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,937&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzktMC0xLTEtMTAwMDAy_18ae74f0-19f1-4416-a30d-86ea73bdfe06"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzktMC0xLTEtMTAwMDAy_c8d93f89-6621-4092-8404-217ee2466660"&gt;Total financial liabilities&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,858&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,858&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,107&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,937&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,170&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;See Note 5, Cash and Cash Equivalents, for more information on cash equivalents included in the table above. Also see Note 12, Derivatives and Hedging Activities, for more information on derivative financial instruments.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The change in fair value of the contingent consideration (a Level 3 input) was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:60.526%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:77.885%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.915%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Contingent consideration liability&#x2014;January 1, 2022&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,170&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Preliminary purchase price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,039&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fair value adjustments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(994)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accretion in value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;743&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gains on acquisition earnouts&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(16,109)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Settlement adjustments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(505)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amounts paid to sellers&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(7,486)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Contingent consideration liability&#x2014;December&#160;31, 2022&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,858&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The gains on acquisition earnouts in the above table include a $15.1 million gain that occurred in the fourth quarter on an earnout that was determined to no longer be probable of payment as a result of revised earnout target expectations. The earnout related to one of our 2022 acquisitions and is included within &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90ZXh0cmVnaW9uOjcyYjQzMjQzZGRkOTQzNjM5MmNkZjNkYWE4NmRiMDQxXzE2NDkyNjc0NTIzMDk_23ad3ebf-7c72-49be-a046-37d9cc2eb568"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90ZXh0cmVnaW9uOjcyYjQzMjQzZGRkOTQzNjM5MmNkZjNkYWE4NmRiMDQxXzE2NDkyNjc0NTIzMDk_639b19f3-3770-44c4-883d-81cef8dd0039"&gt;gains on acquisition earnouts&lt;/span&gt;&lt;/span&gt; in operating expenses on the Consolidated Statements of Operations and Comprehensive Income. See Note 18, Business Combinations, for further information. The accretion in value of contingent consideration liabilities is included within administrative expenses on the Consolidated Statements of Operations and Comprehensive Income.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The carrying values and associated fair values of financial assets and liabilities that are not recorded at fair value in the Consolidated Balance Sheets and not described above include our Senior Notes. To estimate fair value of our Senior Notes, we utilized third-party quotes which are derived all or in part from model prices, external sources or market prices. The Senior Notes represent a Level 2 fair value measurement and are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:69.883%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:21.284%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.937%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.846%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.100%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.846%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.937%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.846%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.104%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Carrying&#160;Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fair&#160;Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Carrying&#160;Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fair&#160;Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Senior Notes &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;300,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;270,993&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;300,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;311,028&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="padding-left:27pt;text-indent:49.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(1)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:19.84pt"&gt;Excludes the impact of unamortized debt issuance costs.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Also see Note 8, Long-Term Debt, for more information on our Senior Notes.&lt;/span&gt;&lt;/div&gt;</us-gaap:FairValueDisclosuresTextBlock>
    <us-gaap:FairValueOfFinancialInstrumentsPolicy
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90ZXh0cmVnaW9uOjcyYjQzMjQzZGRkOTQzNjM5MmNkZjNkYWE4NmRiMDQxXzUwMTg_1700d5b5-db35-4573-b395-d874b8ee4e8f">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Fair value is the price that would be received for an asset or paid to transfer a liability (an exit price) in the principal or most advantageous market for the asset or liability in an orderly transaction between market participants on the measurement date.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;ASC 820, &#x201c;Fair Value Measurement,&#x201d; establishes a fair value hierarchy that requires an entity to maximize the use of observable inputs and minimize the use of unobservable inputs when measuring fair value. The standard describes three levels of inputs that may be used to measure fair value:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;padding-left:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Level 1: Quoted prices (unadjusted) for identical assets or liabilities in active markets that the entity has the ability to access as of the measurement date.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;padding-left:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Level 2: Significant other observable inputs other than Level 1 prices such as quoted prices for similar assets or liabilities; quoted prices in markets that are not active; or other inputs that are observable or can be corroborated by observable market data.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;padding-left:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Level 3: Significant unobservable inputs that reflect a reporting entity&#x2019;s own assumptions about the assumptions that market participants would use in pricing an asset or liability.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Assets and Liabilities Measured at Fair Value on a Recurring Basis&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In many cases, a valuation technique used to measure fair value includes inputs from multiple levels of the fair value hierarchy. The lowest level of significant input determines the placement of the entire fair value measurement in the hierarchy. During the periods presented, there were no transfers between fair value hierarchical levels.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Assets Measured at Fair Value on a Nonrecurring Basis&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Certain assets, specifically other intangible and long-lived assets, are measured at fair value on a nonrecurring basis in periods subsequent to initial recognition. Assets measured at fair value on a nonrecurring basis as of December&#160;31, 2022 and 2021 are categorized based on the lowest level of significant input to the valuation. The assets are measured at fair value when our impairment assessment indicates a carrying value for each of the assets in excess of the asset&#x2019;s estimated fair value. Undiscounted cash flows, a Level 3 input, are utilized in determining estimated fair values. During each of the years ended December&#160;31, 2022, 2021 and 2020, we did not record any impairments on these assets required to be measured at fair value on a nonrecurring basis.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Estimated Fair Value of Financial Instruments&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accounts receivable, accounts payable and accrued liabilities as of December&#160;31, 2022 and 2021 approximate fair value due to the short-term maturities of these financial instruments. The carrying amounts of certain long-term debt, including the Term Loan and ABL Revolver as of December&#160;31, 2022 and 2021, approximate fair value due to the variable rate nature of the agreements. The carrying amounts of our operating lease right-of-use assets and the obligations associated with our operating and finance leases as well as our vehicle and equipment notes approximate fair value as of December&#160;31, 2022 and 2021. All debt classifications represent Level 2 fair value measurements. Derivative financial instruments are measured at fair value based on observable market information and appropriate valuation methods. &lt;/span&gt;&lt;/div&gt;Contingent consideration liabilities arise from future earnout payments to the sellers associated with certain acquisitions and are based on predetermined calculations of certain future results. These future payments are estimated by considering various factors, including business risk and projections. The contingent consideration liabilities are measured at fair value by discounting estimated future payments to their net present value.</us-gaap:FairValueOfFinancialInstrumentsPolicy>
    <us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90ZXh0cmVnaW9uOjcyYjQzMjQzZGRkOTQzNjM5MmNkZjNkYWE4NmRiMDQxXzUwMTk_34bf4a0c-88d9-4277-a474-3652e7b5121f">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The fair values of financial assets and liabilities that are recorded at fair value in the Consolidated Balance Sheets and not described above were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:27.408%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.671%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.671%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.233%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.233%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.379%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.233%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.233%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.951%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Level&#160;1&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Level&#160;2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Level&#160;3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Level&#160;1&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Level&#160;2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Level&#160;3&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Financial assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash equivalents&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;191,881&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;191,881&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;258,055&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;258,055&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Derivative financial instruments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38,671&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38,671&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,830&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,830&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzUtMC0xLTEtMTAwMDAy_2f118e6b-355c-4162-8970-b998a5ae5450"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzUtMC0xLTEtMTAwMDAy_70c840c6-6a79-4f97-a58a-b08f6f1bdbef"&gt;Total financial assets&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;230,552&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;191,881&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38,671&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;272,885&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;258,055&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,830&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Financial liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Contingent consideration&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,858&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,858&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,170&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,170&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Derivative financial instruments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,937&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,937&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzktMC0xLTEtMTAwMDAy_18ae74f0-19f1-4416-a30d-86ea73bdfe06"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzktMC0xLTEtMTAwMDAy_c8d93f89-6621-4092-8404-217ee2466660"&gt;Total financial liabilities&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,858&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,858&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,107&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,937&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,170&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzMtMS0xLTEtMTAwMDAy_caf7a98f-1a1f-4eeb-9890-5f409e56e644"
      unitRef="usd">191881000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i373c10e1730d46369af7a873abf1918a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzMtMy0xLTEtMTAwMDAy_b087d393-047d-4ffc-8102-a79cb2d7d99e"
      unitRef="usd">191881000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i7a34ba2de1b84650b248fe94476806f2_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzMtNS0xLTEtMTAwMDAy_6891790f-97dd-47e4-85fa-a9f98c7800f1"
      unitRef="usd">0</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="ib5c4594d67d3429582152cf3aeab11e4_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzMtNy0xLTEtMTAwMDAy_28aedc81-89da-4947-b728-fcd7ae447bd5"
      unitRef="usd">0</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzMtOS0xLTEtMTAwMDAy_111063e7-a46b-4733-849e-3c6b4442bf14"
      unitRef="usd">258055000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="id8b7a65da01c466384496dc24aeb67db_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzMtMTEtMS0xLTEwMDAwMg_46d4d604-7335-44b5-ac94-5271ad0bece0"
      unitRef="usd">258055000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i71c3fa225acf48de82e4fa30f1967289_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzMtMTMtMS0xLTEwMDAwMg_295a85ba-cbbd-4fa7-a72a-42544f82c80c"
      unitRef="usd">0</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i338142ec4a614695bfabab290899055c_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzMtMTUtMS0xLTEwMDAwMg_80ce6867-0a38-41cc-8b34-87946a7fb350"
      unitRef="usd">0</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:DerivativeAssets
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzQtMS0xLTEtMTAwMDAy_429c66be-1a1c-4c68-9c0c-42bb6f727bc8"
      unitRef="usd">38671000</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeAssets
      contextRef="i373c10e1730d46369af7a873abf1918a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzQtMy0xLTEtMTAwMDAy_f97288ee-a472-48cd-bc4b-569267e06119"
      unitRef="usd">0</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeAssets
      contextRef="i7a34ba2de1b84650b248fe94476806f2_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzQtNS0xLTEtMTAwMDAy_78333458-1190-42c8-876f-b6624242f245"
      unitRef="usd">38671000</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeAssets
      contextRef="ib5c4594d67d3429582152cf3aeab11e4_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzQtNy0xLTEtMTAwMDAy_5fba4142-d228-4d0b-946c-d5393d2552b1"
      unitRef="usd">0</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeAssets
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzQtOS0xLTEtMTAwMDAy_fe0a5fd1-9fca-48f2-bc41-517c31fd68c3"
      unitRef="usd">14830000</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeAssets
      contextRef="id8b7a65da01c466384496dc24aeb67db_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzQtMTEtMS0xLTEwMDAwMg_03ac5fe7-b0ed-46d9-9705-b43855f55275"
      unitRef="usd">0</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeAssets
      contextRef="i71c3fa225acf48de82e4fa30f1967289_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzQtMTMtMS0xLTEwMDAwMg_2ba3caf0-ff8f-4d7b-8816-4ce7aa10544c"
      unitRef="usd">14830000</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeAssets
      contextRef="i338142ec4a614695bfabab290899055c_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzQtMTUtMS0xLTEwMDAwMg_0f7c3daa-b068-483b-8f67-5c0456deb2b9"
      unitRef="usd">0</us-gaap:DerivativeAssets>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzUtMS0xLTEtMTAwMDAy_0dec2909-9c4d-4a48-9f96-c814141acff2"
      unitRef="usd">230552000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i373c10e1730d46369af7a873abf1918a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzUtMy0xLTEtMTAwMDAy_a9a8b526-3578-42f1-b43c-3db86c4c1b9d"
      unitRef="usd">191881000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i7a34ba2de1b84650b248fe94476806f2_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzUtNS0xLTEtMTAwMDAy_a43be496-7819-4f53-bbc0-8f9a70c8089a"
      unitRef="usd">38671000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="ib5c4594d67d3429582152cf3aeab11e4_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzUtNy0xLTEtMTAwMDAy_fdcbb5ea-b8ff-4e82-9d0b-20f5dc50db56"
      unitRef="usd">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzUtOS0xLTEtMTAwMDAy_67c48c51-c674-4807-809f-167bfbd4b9a0"
      unitRef="usd">272885000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="id8b7a65da01c466384496dc24aeb67db_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzUtMTEtMS0xLTEwMDAwMg_b475d636-c226-442c-a152-60cb5bd4abbc"
      unitRef="usd">258055000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i71c3fa225acf48de82e4fa30f1967289_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzUtMTMtMS0xLTEwMDAwMg_d1ae8c97-d827-48bd-8d88-dc363bc9a008"
      unitRef="usd">14830000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i338142ec4a614695bfabab290899055c_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzUtMTUtMS0xLTEwMDAwMg_f9c07b08-6d0f-44e3-83df-91fc722c7ae1"
      unitRef="usd">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:BusinessCombinationContingentConsiderationLiability
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzctMS0xLTEtMTAwMDAy_db23074c-17dd-406e-87f5-7dd7cdf960ea"
      unitRef="usd">1858000</us-gaap:BusinessCombinationContingentConsiderationLiability>
    <us-gaap:BusinessCombinationContingentConsiderationLiability
      contextRef="i373c10e1730d46369af7a873abf1918a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzctMy0xLTEtMTAwMDAy_d9869050-5cbf-43a8-8a56-7f9741233b70"
      unitRef="usd">0</us-gaap:BusinessCombinationContingentConsiderationLiability>
    <us-gaap:BusinessCombinationContingentConsiderationLiability
      contextRef="i7a34ba2de1b84650b248fe94476806f2_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzctNS0xLTEtMTAwMDAy_81ce7127-9324-434b-93e8-a27a2bb31a14"
      unitRef="usd">0</us-gaap:BusinessCombinationContingentConsiderationLiability>
    <us-gaap:BusinessCombinationContingentConsiderationLiability
      contextRef="ib5c4594d67d3429582152cf3aeab11e4_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzctNy0xLTEtMTAwMDAy_81a79bd9-a75c-49f9-a917-6e1c9d1309e3"
      unitRef="usd">1858000</us-gaap:BusinessCombinationContingentConsiderationLiability>
    <us-gaap:BusinessCombinationContingentConsiderationLiability
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzctOS0xLTEtMTAwMDAy_67657e29-480f-4f79-b54c-e019de553ee7"
      unitRef="usd">11170000</us-gaap:BusinessCombinationContingentConsiderationLiability>
    <us-gaap:BusinessCombinationContingentConsiderationLiability
      contextRef="id8b7a65da01c466384496dc24aeb67db_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzctMTEtMS0xLTEwMDAwMg_fa7f42a5-d4bf-43f1-8ef5-8a81b0bf2cf0"
      unitRef="usd">0</us-gaap:BusinessCombinationContingentConsiderationLiability>
    <us-gaap:BusinessCombinationContingentConsiderationLiability
      contextRef="i71c3fa225acf48de82e4fa30f1967289_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzctMTMtMS0xLTEwMDAwMg_9e3f4d2c-c91a-4260-9ad9-d790748c37b9"
      unitRef="usd">0</us-gaap:BusinessCombinationContingentConsiderationLiability>
    <us-gaap:BusinessCombinationContingentConsiderationLiability
      contextRef="i338142ec4a614695bfabab290899055c_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzctMTUtMS0xLTEwMDAwMg_a5053f20-17fb-4916-939f-0bc5494a80ea"
      unitRef="usd">11170000</us-gaap:BusinessCombinationContingentConsiderationLiability>
    <us-gaap:DerivativeLiabilities
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzgtMS0xLTEtMTAwMDAy_8151f5f8-aede-44bb-870c-eb0ed1f442a2"
      unitRef="usd">0</us-gaap:DerivativeLiabilities>
    <us-gaap:DerivativeLiabilities
      contextRef="i373c10e1730d46369af7a873abf1918a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzgtMy0xLTEtMTAwMDAy_00eb96d3-894b-4646-bf92-e87ec938839e"
      unitRef="usd">0</us-gaap:DerivativeLiabilities>
    <us-gaap:DerivativeLiabilities
      contextRef="i7a34ba2de1b84650b248fe94476806f2_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzgtNS0xLTEtMTAwMDAy_209448be-a5c0-42b9-845e-8a4ab5ee3a4c"
      unitRef="usd">0</us-gaap:DerivativeLiabilities>
    <us-gaap:DerivativeLiabilities
      contextRef="ib5c4594d67d3429582152cf3aeab11e4_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzgtNy0xLTEtMTAwMDAy_faec5cee-f9e7-4aa0-99bc-df6713d31a88"
      unitRef="usd">0</us-gaap:DerivativeLiabilities>
    <us-gaap:DerivativeLiabilities
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzgtOS0xLTEtMTAwMDAy_7357c88f-398b-43ca-bc6d-595e8d31daf7"
      unitRef="usd">1937000</us-gaap:DerivativeLiabilities>
    <us-gaap:DerivativeLiabilities
      contextRef="id8b7a65da01c466384496dc24aeb67db_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzgtMTEtMS0xLTEwMDAwMg_4f3e2d93-7ed5-490e-b269-40fa32ede56a"
      unitRef="usd">0</us-gaap:DerivativeLiabilities>
    <us-gaap:DerivativeLiabilities
      contextRef="i71c3fa225acf48de82e4fa30f1967289_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzgtMTMtMS0xLTEwMDAwMg_58451c8c-41eb-4794-9b46-024949f1393f"
      unitRef="usd">1937000</us-gaap:DerivativeLiabilities>
    <us-gaap:DerivativeLiabilities
      contextRef="i338142ec4a614695bfabab290899055c_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzgtMTUtMS0xLTEwMDAwMg_7e70d02a-25e2-4eec-a31e-9be9f26a3025"
      unitRef="usd">0</us-gaap:DerivativeLiabilities>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzktMS0xLTEtMTAwMDAy_c08c976c-34b7-42dc-99d4-8b99da8c5acf"
      unitRef="usd">1858000</us-gaap:LiabilitiesFairValueDisclosure>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="i373c10e1730d46369af7a873abf1918a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzktMy0xLTEtMTAwMDAy_70e08dec-1ec4-432b-900c-5db9440085b3"
      unitRef="usd">0</us-gaap:LiabilitiesFairValueDisclosure>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="i7a34ba2de1b84650b248fe94476806f2_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzktNS0xLTEtMTAwMDAy_6a936099-1a11-4122-b5b1-3abc8e446949"
      unitRef="usd">0</us-gaap:LiabilitiesFairValueDisclosure>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="ib5c4594d67d3429582152cf3aeab11e4_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzktNy0xLTEtMTAwMDAy_7675cb79-bbe1-4abe-b8f7-a599a57795d2"
      unitRef="usd">1858000</us-gaap:LiabilitiesFairValueDisclosure>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzktOS0xLTEtMTAwMDAy_33e723a0-45f4-430e-93aa-df968ad1f861"
      unitRef="usd">13107000</us-gaap:LiabilitiesFairValueDisclosure>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="id8b7a65da01c466384496dc24aeb67db_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzktMTEtMS0xLTEwMDAwMg_c8824375-1600-49a7-a961-b752d0959eac"
      unitRef="usd">0</us-gaap:LiabilitiesFairValueDisclosure>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="i71c3fa225acf48de82e4fa30f1967289_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzktMTMtMS0xLTEwMDAwMg_4f5c6b00-d3fe-417a-8640-a10e1fa06b0a"
      unitRef="usd">1937000</us-gaap:LiabilitiesFairValueDisclosure>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="i338142ec4a614695bfabab290899055c_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZToxZWMxYzExNDdlZGE0OWIxOTQzMWY0ZjY5YTc1NGZmNS90YWJsZXJhbmdlOjFlYzFjMTE0N2VkYTQ5YjE5NDMxZjRmNjlhNzU0ZmY1XzktMTUtMS0xLTEwMDAwMg_dfecf59c-3996-415f-b479-d9bbc89addbd"
      unitRef="usd">11170000</us-gaap:LiabilitiesFairValueDisclosure>
    <us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90ZXh0cmVnaW9uOjcyYjQzMjQzZGRkOTQzNjM5MmNkZjNkYWE4NmRiMDQxXzUwMjA_3b4ad44e-6720-4ef9-a0aa-6b7ae47da527">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The change in fair value of the contingent consideration (a Level 3 input) was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:60.526%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:77.885%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.915%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Contingent consideration liability&#x2014;January 1, 2022&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,170&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Preliminary purchase price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,039&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fair value adjustments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(994)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accretion in value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;743&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gains on acquisition earnouts&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(16,109)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Settlement adjustments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(505)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amounts paid to sellers&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(7,486)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Contingent consideration liability&#x2014;December&#160;31, 2022&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,858&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZTpiZGIwOTFiMjVlNjQ0OWRjOGI1MGI2ODZkYWNlZTkwOS90YWJsZXJhbmdlOmJkYjA5MWIyNWU2NDQ5ZGM4YjUwYjY4NmRhY2VlOTA5XzAtMS0xLTEtMTAwMDAy_dd443d3b-1e73-4416-9f8a-cc6909fb1935"
      unitRef="usd">11170000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZTpiZGIwOTFiMjVlNjQ0OWRjOGI1MGI2ODZkYWNlZTkwOS90YWJsZXJhbmdlOmJkYjA5MWIyNWU2NDQ5ZGM4YjUwYjY4NmRhY2VlOTA5XzEtMS0xLTEtMTAwMDAy_82b1efdc-e87a-4368-a551-af8f560fb6c2"
      unitRef="usd">15039000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZTpiZGIwOTFiMjVlNjQ0OWRjOGI1MGI2ODZkYWNlZTkwOS90YWJsZXJhbmdlOmJkYjA5MWIyNWU2NDQ5ZGM4YjUwYjY4NmRhY2VlOTA5XzItMS0xLTEtMTAwMDAy_a126835b-d78a-4cdb-bd6b-be3f58e80bda"
      unitRef="usd">-994000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings>
    <ibp:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityAccretionExpense
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZTpiZGIwOTFiMjVlNjQ0OWRjOGI1MGI2ODZkYWNlZTkwOS90YWJsZXJhbmdlOmJkYjA5MWIyNWU2NDQ5ZGM4YjUwYjY4NmRhY2VlOTA5XzMtMS0xLTEtMTAwMDAy_135b89de-e641-4d0d-bdfe-6e06bc28f8e7"
      unitRef="usd">743000</ibp:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityAccretionExpense>
    <ibp:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnContingentConsideration
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZTpiZGIwOTFiMjVlNjQ0OWRjOGI1MGI2ODZkYWNlZTkwOS90YWJsZXJhbmdlOmJkYjA5MWIyNWU2NDQ5ZGM4YjUwYjY4NmRhY2VlOTA5XzQtMS0xLTEtMTAwMDAy_74e9a319-c402-4055-926f-a9ffa410a23c"
      unitRef="usd">16109000</ibp:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnContingentConsideration>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZTpiZGIwOTFiMjVlNjQ0OWRjOGI1MGI2ODZkYWNlZTkwOS90YWJsZXJhbmdlOmJkYjA5MWIyNWU2NDQ5ZGM4YjUwYjY4NmRhY2VlOTA5XzUtMS0xLTEtMTA3Mzg4_9b6ee3be-01d2-4eab-acd2-971d934a6cc1"
      unitRef="usd">505000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchasesSalesIssuancesSettlements
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZTpiZGIwOTFiMjVlNjQ0OWRjOGI1MGI2ODZkYWNlZTkwOS90YWJsZXJhbmdlOmJkYjA5MWIyNWU2NDQ5ZGM4YjUwYjY4NmRhY2VlOTA5XzUtMS0xLTEtMTAwMDAy_182f02a4-efcd-4230-a15f-841166f7167d"
      unitRef="usd">7486000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchasesSalesIssuancesSettlements>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZTpiZGIwOTFiMjVlNjQ0OWRjOGI1MGI2ODZkYWNlZTkwOS90YWJsZXJhbmdlOmJkYjA5MWIyNWU2NDQ5ZGM4YjUwYjY4NmRhY2VlOTA5XzYtMS0xLTEtMTAwMDAy_6b2fcc8a-d738-4d19-ae17-cd93b8fa609c"
      unitRef="usd">1858000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue>
    <ibp:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnEarnoutLiability
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90ZXh0cmVnaW9uOjcyYjQzMjQzZGRkOTQzNjM5MmNkZjNkYWE4NmRiMDQxXzU0OTc1NTgxODk1Mg_073e6e26-13d6-41ca-a1ac-4b254fd390c7"
      unitRef="usd">15100000</ibp:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnEarnoutLiability>
    <us-gaap:FairValueByBalanceSheetGroupingTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90ZXh0cmVnaW9uOjcyYjQzMjQzZGRkOTQzNjM5MmNkZjNkYWE4NmRiMDQxXzUwMjE_81dc6c05-03bf-4a8e-b05a-3429a3fa2cb2">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The carrying values and associated fair values of financial assets and liabilities that are not recorded at fair value in the Consolidated Balance Sheets and not described above include our Senior Notes. To estimate fair value of our Senior Notes, we utilized third-party quotes which are derived all or in part from model prices, external sources or market prices. The Senior Notes represent a Level 2 fair value measurement and are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:69.883%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:21.284%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.937%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.846%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.100%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.846%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.937%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.846%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.104%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Carrying&#160;Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fair&#160;Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Carrying&#160;Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fair&#160;Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Senior Notes &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;300,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;270,993&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;300,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;311,028&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="padding-left:27pt;text-indent:49.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(1)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:19.84pt"&gt;Excludes the impact of unamortized debt issuance costs.&lt;/span&gt;&lt;/div&gt;</us-gaap:FairValueByBalanceSheetGroupingTextBlock>
    <us-gaap:LongTermDebtFairValue
      contextRef="i1ecef401d2d54e20b0a5fd6493a9fdee_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZTo0OGRiNDdiMGFmMDU0MDQwOThjYjRlN2ZkNDNlNTVmMi90YWJsZXJhbmdlOjQ4ZGI0N2IwYWYwNTQwNDA5OGNiNGU3ZmQ0M2U1NWYyXzMtMS0xLTEtMTAwMDAy_9e015b27-34ab-42cc-965b-62204ce24627"
      unitRef="usd">300000000</us-gaap:LongTermDebtFairValue>
    <us-gaap:LongTermDebtFairValue
      contextRef="ib72425e5789e464eb55e91e39f29472a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZTo0OGRiNDdiMGFmMDU0MDQwOThjYjRlN2ZkNDNlNTVmMi90YWJsZXJhbmdlOjQ4ZGI0N2IwYWYwNTQwNDA5OGNiNGU3ZmQ0M2U1NWYyXzMtMy0xLTEtMTAwMDAy_7ceecfad-7b1c-4640-93a1-0e8620ab5f00"
      unitRef="usd">270993000</us-gaap:LongTermDebtFairValue>
    <us-gaap:LongTermDebtFairValue
      contextRef="iee04fb3fcd05431d9f4a24a96a9218c6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZTo0OGRiNDdiMGFmMDU0MDQwOThjYjRlN2ZkNDNlNTVmMi90YWJsZXJhbmdlOjQ4ZGI0N2IwYWYwNTQwNDA5OGNiNGU3ZmQ0M2U1NWYyXzMtNS0xLTEtMTAwMDAy_1601e7d6-77a6-40e0-abe4-39b829a63f43"
      unitRef="usd">300000000</us-gaap:LongTermDebtFairValue>
    <us-gaap:LongTermDebtFairValue
      contextRef="i3033586cc36f48f0b3220b9deb8b4ed2_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTIvZnJhZzo3MmI0MzI0M2RkZDk0MzYzOTJjZGYzZGFhODZkYjA0MS90YWJsZTo0OGRiNDdiMGFmMDU0MDQwOThjYjRlN2ZkNDNlNTVmMi90YWJsZXJhbmdlOjQ4ZGI0N2IwYWYwNTQwNDA5OGNiNGU3ZmQ0M2U1NWYyXzMtNy0xLTEtMTAwMDAy_ce8ce41c-e709-4a02-a9a1-b4855b6a30ec"
      unitRef="usd">311028000</us-gaap:LongTermDebtFairValue>
    <us-gaap:SegmentReportingDisclosureTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGV4dHJlZ2lvbjpjOWM0MGMwYjIwZjY0YTI2YTQ2NzQ4MjRkMjBhMzBlM18xNjQ5MjY3NDQ0ODIz_fadbffd2-ce28-4139-bbfc-6bc76bfc0154">INFORMATION ON SEGMENTS&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the first quarter of 2022, our Chief Executive Officer, who is also our Chief Operating Decision Maker ("CODM"), changed the manner in which he reviews financial information for purposes of assessing business performance, managing the business and allocating resources. In conjunction with this change, we realigned our segment structure resulting in our Company having three operating segments consisting of Installation, Distribution and Manufacturing. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our Installation operating segment represents the majority of our net revenue and gross profit and forms our one reportable segment. This operating segment represents the service-based installation of insulation and complementary building products in the residential new construction, repair and remodel and commercial construction end markets from our national network of branch locations. These branch locations have similar economic and operating characteristics including the nature of products and services offered, operating procedures and risks, customer bases, employee incentives, material procurement and shared corporate resources which led us to conclude that they combine to form one operating segment. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Other category reported below reflects the operations of our two remaining operating segments, Distribution and Manufacturing, which do not meet the quantitative thresholds for separate reporting. Our Distribution operating segment includes our recently acquired distribution businesses that sell insulation, gutters and accessories primarily to installers of these products who operate in multiple end markets. Our Manufacturing operating segment consists of our cellulose insulation manufacturing operation which was previously combined with our Installation operating segment. In addition to sales of cellulose insulation, revenues from this operating segment consist of sales of asphalt and industrial fibers to distributors and installers of these products. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Installation reportable segment includes substantially all of our net revenue from services while net revenue included in the Other category includes substantially all of our net revenue from sales of products. The intercompany sales from the Other category to the Installation reportable segment include a profit margin while our Installation segment records these transactions at cost. These transactions are shown in the Eliminations column in the tables below.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The key metrics used to assess the performance of our operating segments are revenue and segment gross profit as these are the metrics used by our CODM to review results, assess performance and allocate resources. We define segment gross profit as revenue less cost of sales, excluding depreciation and amortization. We do not report total assets, depreciation and amortization expenses included in reported cost of sales, operating expenses or other expense, net by segment because our CODM does not use this information to assess segment performance or allocate resources. The following tables represents our segment information for the years ended December&#160;31, 2022, 2021 and 2020 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:38.666%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.525%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Year ended December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Installation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Eliminations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Consolidated&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,513,557&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;162,433&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,146)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,669,844&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cost of sales &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,678,771&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;123,705&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,826)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,797,650&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Segment gross profit&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;834,786&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38,728&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,320)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;872,194&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Segment gross profit percentage&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33.2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23.8&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21.5&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32.7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:38.666%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.525%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Year ended December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Installation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Eliminations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Consolidated&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,941,543&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29,332&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,225)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,968,650&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cost of sales &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,317,739&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,155&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,701)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,338,193&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Segment gross profit&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;623,804&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,177&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(524)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;630,457&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Segment gross profit percentage&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32.1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24.5&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23.6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:38.666%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.525%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Year ended December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Installation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Eliminations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Consolidated&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,636,361&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,762&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(898)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,653,225&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cost of sales &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,092,139&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,771&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(670)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,104,240&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Segment gross profit&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;544,222&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,991&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(228)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;548,985&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Segment gross profit percentage&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33.3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;28.1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25.4&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33.2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;padding-left:27pt;text-indent:-27pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(1)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:15.34pt"&gt;Cost of sales included in segment gross profit is exclusive of depreciation and amortization for the years ended December&#160;31, 2022, 2021 and 2020. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The prior period disclosures in the above tables have been recast to conform to the current period segment presentation. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The reconciliation between consolidated segment gross profit for each period as shown in the tables above to consolidated income before income taxes is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:53.870%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.524%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Segment gross profit - Consolidated&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;872,194&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;630,457&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;548,985&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;44,410&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;40,938&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39,011&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gross profit, as reported&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;827,784&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;589,519&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;509,974&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;482,373&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;401,639&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;348,107&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating income&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;345,411&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;187,880&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;161,867&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other expense, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;42,104&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,405&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;30,690&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Income before income taxes&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;303,307&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;155,475&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;131,177&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;(1)Cost of sales included in segment gross profit is exclusive of depreciation and amortization for the years ended December&#160;31, 2022, 2021 and 2020.</us-gaap:SegmentReportingDisclosureTextBlock>
    <us-gaap:NumberOfOperatingSegments
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGV4dHJlZ2lvbjpjOWM0MGMwYjIwZjY0YTI2YTQ2NzQ4MjRkMjBhMzBlM181NDk3NTU4MTQzMDU_6f8b3661-acff-4acd-bb48-a92703c84699"
      unitRef="segment">3</us-gaap:NumberOfOperatingSegments>
    <us-gaap:NumberOfReportableSegments
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGV4dHJlZ2lvbjpjOWM0MGMwYjIwZjY0YTI2YTQ2NzQ4MjRkMjBhMzBlM181NDk3NTU4MTQ0OTg_688d0332-34e6-46e2-8912-775ad024f742"
      unitRef="segment">1</us-gaap:NumberOfReportableSegments>
    <us-gaap:NumberOfOperatingSegments
      contextRef="i7ee60c6c46b64377a7d9ef1866ddf1f4_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGV4dHJlZ2lvbjpjOWM0MGMwYjIwZjY0YTI2YTQ2NzQ4MjRkMjBhMzBlM181NDk3NTU4MTUwODI_bf3212b3-f19d-4494-bb32-ccab47015246"
      unitRef="segment">1</us-gaap:NumberOfOperatingSegments>
    <us-gaap:NumberOfOperatingSegments
      contextRef="ie4442c3f4fa34930817b0baa33f7126e_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGV4dHJlZ2lvbjpjOWM0MGMwYjIwZjY0YTI2YTQ2NzQ4MjRkMjBhMzBlM181NDk3NTU4MTUxNzE_e7fcc4d1-58a4-4ac5-be09-24618282d4f0"
      unitRef="segment">2</us-gaap:NumberOfOperatingSegments>
    <us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGV4dHJlZ2lvbjpjOWM0MGMwYjIwZjY0YTI2YTQ2NzQ4MjRkMjBhMzBlM18xNjQ5MjY3NDQ0ODI0_6c5cad89-7cc8-42f8-9fc6-d6c4a0f7b63e">The following tables represents our segment information for the years ended December&#160;31, 2022, 2021 and 2020 (in thousands):&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:38.666%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.525%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Year ended December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Installation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Eliminations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Consolidated&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,513,557&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;162,433&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,146)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,669,844&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cost of sales &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,678,771&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;123,705&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,826)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,797,650&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Segment gross profit&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;834,786&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38,728&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,320)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;872,194&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Segment gross profit percentage&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33.2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23.8&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21.5&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32.7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:38.666%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.525%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Year ended December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Installation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Eliminations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Consolidated&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,941,543&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29,332&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,225)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,968,650&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cost of sales &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,317,739&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,155&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,701)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,338,193&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Segment gross profit&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;623,804&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,177&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(524)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;630,457&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Segment gross profit percentage&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32.1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24.5&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23.6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:38.666%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.525%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Year ended December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Installation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Eliminations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Consolidated&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,636,361&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,762&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(898)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,653,225&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cost of sales &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,092,139&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,771&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(670)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,104,240&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Segment gross profit&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;544,222&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,991&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(228)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;548,985&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Segment gross profit percentage&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33.3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;28.1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25.4&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33.2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;padding-left:27pt;text-indent:-27pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(1)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:15.34pt"&gt;Cost of sales included in segment gross profit is exclusive of depreciation and amortization for the years ended December&#160;31, 2022, 2021 and 2020. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The prior period disclosures in the above tables have been recast to conform to the current period segment presentation. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The reconciliation between consolidated segment gross profit for each period as shown in the tables above to consolidated income before income taxes is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:53.870%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.524%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Segment gross profit - Consolidated&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;872,194&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;630,457&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;548,985&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;44,410&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;40,938&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39,011&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gross profit, as reported&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;827,784&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;589,519&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;509,974&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;482,373&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;401,639&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;348,107&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating income&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;345,411&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;187,880&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;161,867&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other expense, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;42,104&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,405&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;30,690&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Income before income taxes&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;303,307&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;155,475&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;131,177&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;(1)Cost of sales included in segment gross profit is exclusive of depreciation and amortization for the years ended December&#160;31, 2022, 2021 and 2020.</us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i2b3c149ccdaf411abf7c699fed56e802_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6YTIyODlhMzU2ZTAzNGE4Yjg4NzBkYzAxMjk3OTMwYjcvdGFibGVyYW5nZTphMjI4OWEzNTZlMDM0YThiODg3MGRjMDEyOTc5MzBiN18yLTEtMS0xLTEwMTU2Mg_9c36fce7-2290-4f9d-80f9-1ed60fd47cd3"
      unitRef="usd">2513557000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i25a7fdace7a84c2d9575a891f8027ac0_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6YTIyODlhMzU2ZTAzNGE4Yjg4NzBkYzAxMjk3OTMwYjcvdGFibGVyYW5nZTphMjI4OWEzNTZlMDM0YThiODg3MGRjMDEyOTc5MzBiN18yLTMtMS0xLTEwMTU2Mg_5c7a8e0d-40a1-4464-931c-5f5146f49d0d"
      unitRef="usd">162433000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i18b77c51bf3a4f958b8b0f2900724f08_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6YTIyODlhMzU2ZTAzNGE4Yjg4NzBkYzAxMjk3OTMwYjcvdGFibGVyYW5nZTphMjI4OWEzNTZlMDM0YThiODg3MGRjMDEyOTc5MzBiN18yLTUtMS0xLTEwMTU2Mg_b176dfa3-4080-4dea-805f-b5bdf324d90e"
      unitRef="usd">-6146000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6YTIyODlhMzU2ZTAzNGE4Yjg4NzBkYzAxMjk3OTMwYjcvdGFibGVyYW5nZTphMjI4OWEzNTZlMDM0YThiODg3MGRjMDEyOTc5MzBiN18yLTctMS0xLTEwMTU2Mg_0bff2f19-40d3-47f1-9c95-67384ea74688"
      unitRef="usd">2669844000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization
      contextRef="i2b3c149ccdaf411abf7c699fed56e802_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6YTIyODlhMzU2ZTAzNGE4Yjg4NzBkYzAxMjk3OTMwYjcvdGFibGVyYW5nZTphMjI4OWEzNTZlMDM0YThiODg3MGRjMDEyOTc5MzBiN18zLTEtMS0xLTEwMTU2Mg_d5daba2b-cd1b-434e-bda9-b4228b0cddb6"
      unitRef="usd">1678771000</us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization>
    <us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization
      contextRef="i25a7fdace7a84c2d9575a891f8027ac0_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6YTIyODlhMzU2ZTAzNGE4Yjg4NzBkYzAxMjk3OTMwYjcvdGFibGVyYW5nZTphMjI4OWEzNTZlMDM0YThiODg3MGRjMDEyOTc5MzBiN18zLTMtMS0xLTEwMTU2Mg_37894871-d7bd-41bf-9973-97b150e60362"
      unitRef="usd">123705000</us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization>
    <us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization
      contextRef="i18b77c51bf3a4f958b8b0f2900724f08_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6YTIyODlhMzU2ZTAzNGE4Yjg4NzBkYzAxMjk3OTMwYjcvdGFibGVyYW5nZTphMjI4OWEzNTZlMDM0YThiODg3MGRjMDEyOTc5MzBiN18zLTUtMS0xLTEwMTU2Mg_bd943f07-e8c2-415d-b163-9bcc5d0f618b"
      unitRef="usd">-4826000</us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization>
    <us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6YTIyODlhMzU2ZTAzNGE4Yjg4NzBkYzAxMjk3OTMwYjcvdGFibGVyYW5nZTphMjI4OWEzNTZlMDM0YThiODg3MGRjMDEyOTc5MzBiN18zLTctMS0xLTEwMTU2Mg_0e3afc9b-bbd9-4afe-8e15-d9ff9cfa7754"
      unitRef="usd">1797650000</us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization>
    <ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion
      contextRef="i2b3c149ccdaf411abf7c699fed56e802_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6YTIyODlhMzU2ZTAzNGE4Yjg4NzBkYzAxMjk3OTMwYjcvdGFibGVyYW5nZTphMjI4OWEzNTZlMDM0YThiODg3MGRjMDEyOTc5MzBiN180LTEtMS0xLTEwMTU2Mg_59096e8f-2c0a-4633-ae1e-f569a17162af"
      unitRef="usd">834786000</ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion>
    <ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion
      contextRef="i25a7fdace7a84c2d9575a891f8027ac0_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6YTIyODlhMzU2ZTAzNGE4Yjg4NzBkYzAxMjk3OTMwYjcvdGFibGVyYW5nZTphMjI4OWEzNTZlMDM0YThiODg3MGRjMDEyOTc5MzBiN180LTMtMS0xLTEwMTU2Mg_3f2d621b-70ac-46da-9c4c-47edd57ed8e8"
      unitRef="usd">38728000</ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion>
    <ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion
      contextRef="i18b77c51bf3a4f958b8b0f2900724f08_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6YTIyODlhMzU2ZTAzNGE4Yjg4NzBkYzAxMjk3OTMwYjcvdGFibGVyYW5nZTphMjI4OWEzNTZlMDM0YThiODg3MGRjMDEyOTc5MzBiN180LTUtMS0xLTEwMTU2Mg_cfbd81bd-26ab-4c3a-bb44-4323e2a5f23b"
      unitRef="usd">-1320000</ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion>
    <ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion
      contextRef="i8575354b2fbb4902ae0b5a815b512e19_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6YTIyODlhMzU2ZTAzNGE4Yjg4NzBkYzAxMjk3OTMwYjcvdGFibGVyYW5nZTphMjI4OWEzNTZlMDM0YThiODg3MGRjMDEyOTc5MzBiN180LTctMS0xLTEwMTU2Mg_19556562-53f4-49f2-a1b4-9faf897cd236"
      unitRef="usd">872194000</ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion>
    <ibp:AdjustedGrossProfitPercentage
      contextRef="i2b3c149ccdaf411abf7c699fed56e802_D20220101-20221231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6YTIyODlhMzU2ZTAzNGE4Yjg4NzBkYzAxMjk3OTMwYjcvdGFibGVyYW5nZTphMjI4OWEzNTZlMDM0YThiODg3MGRjMDEyOTc5MzBiN181LTEtMS0xLTExNzE2Mg_06eefbe5-7226-4f6d-9925-bfebe0efc5a5"
      unitRef="number">0.332</ibp:AdjustedGrossProfitPercentage>
    <ibp:AdjustedGrossProfitPercentage
      contextRef="i25a7fdace7a84c2d9575a891f8027ac0_D20220101-20221231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6YTIyODlhMzU2ZTAzNGE4Yjg4NzBkYzAxMjk3OTMwYjcvdGFibGVyYW5nZTphMjI4OWEzNTZlMDM0YThiODg3MGRjMDEyOTc5MzBiN181LTMtMS0xLTExNzE2Mg_393a7322-5b09-425d-a30b-59c41cc7fc6e"
      unitRef="number">0.238</ibp:AdjustedGrossProfitPercentage>
    <ibp:AdjustedGrossProfitPercentage
      contextRef="i18b77c51bf3a4f958b8b0f2900724f08_D20220101-20221231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6YTIyODlhMzU2ZTAzNGE4Yjg4NzBkYzAxMjk3OTMwYjcvdGFibGVyYW5nZTphMjI4OWEzNTZlMDM0YThiODg3MGRjMDEyOTc5MzBiN181LTUtMS0xLTExNzE2Mg_bca32be5-3266-4e31-a901-2c6f2e79f2a1"
      unitRef="number">0.215</ibp:AdjustedGrossProfitPercentage>
    <ibp:AdjustedGrossProfitPercentage
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6YTIyODlhMzU2ZTAzNGE4Yjg4NzBkYzAxMjk3OTMwYjcvdGFibGVyYW5nZTphMjI4OWEzNTZlMDM0YThiODg3MGRjMDEyOTc5MzBiN181LTctMS0xLTExNzE2Mg_d0910f15-a726-4913-9cc8-af025fb06133"
      unitRef="number">0.327</ibp:AdjustedGrossProfitPercentage>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0a90c295d4394ee39a429acf25490e2c_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ZTgwNGQ3M2JlODA0NDYyN2IyZGJjMjhlMDM3ZDhkYTUvdGFibGVyYW5nZTplODA0ZDczYmU4MDQ0NjI3YjJkYmMyOGUwMzdkOGRhNV8yLTEtMS0xLTEwMTYxMA_78069de4-c659-4fac-8f50-149c86f8b6e4"
      unitRef="usd">1941543000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i553d5969138e460a9bf309e11f5f8a26_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ZTgwNGQ3M2JlODA0NDYyN2IyZGJjMjhlMDM3ZDhkYTUvdGFibGVyYW5nZTplODA0ZDczYmU4MDQ0NjI3YjJkYmMyOGUwMzdkOGRhNV8yLTMtMS0xLTEwMTYxMA_ca5837d0-5db6-4244-9b1a-9b65409d4ff2"
      unitRef="usd">29332000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia59f114338e14376874dfbd1aaebd2a7_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ZTgwNGQ3M2JlODA0NDYyN2IyZGJjMjhlMDM3ZDhkYTUvdGFibGVyYW5nZTplODA0ZDczYmU4MDQ0NjI3YjJkYmMyOGUwMzdkOGRhNV8yLTUtMS0xLTEwMTYxMA_afe99753-a82c-4167-81df-41a797efd32e"
      unitRef="usd">-2225000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ZTgwNGQ3M2JlODA0NDYyN2IyZGJjMjhlMDM3ZDhkYTUvdGFibGVyYW5nZTplODA0ZDczYmU4MDQ0NjI3YjJkYmMyOGUwMzdkOGRhNV8yLTctMS0xLTEwMTYxMA_8af0540b-bfb1-43c2-95d6-80eaa08735fb"
      unitRef="usd">1968650000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization
      contextRef="i0a90c295d4394ee39a429acf25490e2c_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ZTgwNGQ3M2JlODA0NDYyN2IyZGJjMjhlMDM3ZDhkYTUvdGFibGVyYW5nZTplODA0ZDczYmU4MDQ0NjI3YjJkYmMyOGUwMzdkOGRhNV8zLTEtMS0xLTEwMTYxMA_785d774c-2b86-439f-95a1-3bdb5ab6c60f"
      unitRef="usd">1317739000</us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization>
    <us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization
      contextRef="i553d5969138e460a9bf309e11f5f8a26_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ZTgwNGQ3M2JlODA0NDYyN2IyZGJjMjhlMDM3ZDhkYTUvdGFibGVyYW5nZTplODA0ZDczYmU4MDQ0NjI3YjJkYmMyOGUwMzdkOGRhNV8zLTMtMS0xLTEwMTYxMA_6b2a9815-c833-495c-9e4e-7c4fb692b169"
      unitRef="usd">22155000</us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization>
    <us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization
      contextRef="ia59f114338e14376874dfbd1aaebd2a7_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ZTgwNGQ3M2JlODA0NDYyN2IyZGJjMjhlMDM3ZDhkYTUvdGFibGVyYW5nZTplODA0ZDczYmU4MDQ0NjI3YjJkYmMyOGUwMzdkOGRhNV8zLTUtMS0xLTEwMTYxMA_9df7830e-29e1-4d67-a38c-c6fb7f0c71bd"
      unitRef="usd">-1701000</us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization>
    <us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ZTgwNGQ3M2JlODA0NDYyN2IyZGJjMjhlMDM3ZDhkYTUvdGFibGVyYW5nZTplODA0ZDczYmU4MDQ0NjI3YjJkYmMyOGUwMzdkOGRhNV8zLTctMS0xLTEwMTYxMA_3d16ffb7-6454-4769-8b88-235a30002f3b"
      unitRef="usd">1338193000</us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization>
    <ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion
      contextRef="i0a90c295d4394ee39a429acf25490e2c_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ZTgwNGQ3M2JlODA0NDYyN2IyZGJjMjhlMDM3ZDhkYTUvdGFibGVyYW5nZTplODA0ZDczYmU4MDQ0NjI3YjJkYmMyOGUwMzdkOGRhNV80LTEtMS0xLTEwMTYxMA_71f4be4c-9fb9-46ab-b1d3-12cf9430634a"
      unitRef="usd">623804000</ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion>
    <ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion
      contextRef="i553d5969138e460a9bf309e11f5f8a26_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ZTgwNGQ3M2JlODA0NDYyN2IyZGJjMjhlMDM3ZDhkYTUvdGFibGVyYW5nZTplODA0ZDczYmU4MDQ0NjI3YjJkYmMyOGUwMzdkOGRhNV80LTMtMS0xLTEwMTYxMA_3febd83e-d129-487c-90cc-a247e6409bc5"
      unitRef="usd">7177000</ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion>
    <ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion
      contextRef="ia59f114338e14376874dfbd1aaebd2a7_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ZTgwNGQ3M2JlODA0NDYyN2IyZGJjMjhlMDM3ZDhkYTUvdGFibGVyYW5nZTplODA0ZDczYmU4MDQ0NjI3YjJkYmMyOGUwMzdkOGRhNV80LTUtMS0xLTEwMTYxMA_13099b47-b27f-4634-988a-afa7de5d3283"
      unitRef="usd">-524000</ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion>
    <ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion
      contextRef="ie5905ba0719040438b112fb99f9b953c_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ZTgwNGQ3M2JlODA0NDYyN2IyZGJjMjhlMDM3ZDhkYTUvdGFibGVyYW5nZTplODA0ZDczYmU4MDQ0NjI3YjJkYmMyOGUwMzdkOGRhNV80LTctMS0xLTEwMTYxMA_1e9da2a8-c651-4da0-8cdc-8aa409fd02dd"
      unitRef="usd">630457000</ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion>
    <ibp:AdjustedGrossProfitPercentage
      contextRef="i0a90c295d4394ee39a429acf25490e2c_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ZTgwNGQ3M2JlODA0NDYyN2IyZGJjMjhlMDM3ZDhkYTUvdGFibGVyYW5nZTplODA0ZDczYmU4MDQ0NjI3YjJkYmMyOGUwMzdkOGRhNV81LTEtMS0xLTExNzIxMg_66732278-a583-4615-af27-8c46bc6ed3ac"
      unitRef="number">0.321</ibp:AdjustedGrossProfitPercentage>
    <ibp:AdjustedGrossProfitPercentage
      contextRef="i553d5969138e460a9bf309e11f5f8a26_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ZTgwNGQ3M2JlODA0NDYyN2IyZGJjMjhlMDM3ZDhkYTUvdGFibGVyYW5nZTplODA0ZDczYmU4MDQ0NjI3YjJkYmMyOGUwMzdkOGRhNV81LTMtMS0xLTExNzIxMg_f1197e93-20c9-4919-9854-d8ff62d37096"
      unitRef="number">0.245</ibp:AdjustedGrossProfitPercentage>
    <ibp:AdjustedGrossProfitPercentage
      contextRef="ia59f114338e14376874dfbd1aaebd2a7_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ZTgwNGQ3M2JlODA0NDYyN2IyZGJjMjhlMDM3ZDhkYTUvdGFibGVyYW5nZTplODA0ZDczYmU4MDQ0NjI3YjJkYmMyOGUwMzdkOGRhNV81LTUtMS0xLTExNzIxMg_1898c38a-8c46-4798-b995-6b945f6d5806"
      unitRef="number">0.236</ibp:AdjustedGrossProfitPercentage>
    <ibp:AdjustedGrossProfitPercentage
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ZTgwNGQ3M2JlODA0NDYyN2IyZGJjMjhlMDM3ZDhkYTUvdGFibGVyYW5nZTplODA0ZDczYmU4MDQ0NjI3YjJkYmMyOGUwMzdkOGRhNV81LTctMS0xLTExNzIxMg_0a379e92-187c-4786-8d5d-be2a9f38b3af"
      unitRef="number">0.320</ibp:AdjustedGrossProfitPercentage>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ic7e64d94fc2142a586ef4f2fe8cabba2_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6MmNiOGVjNGJlZjU3NDVhY2I3Y2UxYjJkNjA1MDhiZjgvdGFibGVyYW5nZToyY2I4ZWM0YmVmNTc0NWFjYjdjZTFiMmQ2MDUwOGJmOF8yLTEtMS0xLTEwMTYzNg_e2ac8e39-86d8-470f-b72a-753b77cec519"
      unitRef="usd">1636361000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i83b10d3c03c148f6843d6898a799af1b_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6MmNiOGVjNGJlZjU3NDVhY2I3Y2UxYjJkNjA1MDhiZjgvdGFibGVyYW5nZToyY2I4ZWM0YmVmNTc0NWFjYjdjZTFiMmQ2MDUwOGJmOF8yLTMtMS0xLTEwMTYzNg_22affeb8-09d2-4aad-882b-8804745f6a68"
      unitRef="usd">17762000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i2a61f156f4a841368d04ac31fb199848_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6MmNiOGVjNGJlZjU3NDVhY2I3Y2UxYjJkNjA1MDhiZjgvdGFibGVyYW5nZToyY2I4ZWM0YmVmNTc0NWFjYjdjZTFiMmQ2MDUwOGJmOF8yLTUtMS0xLTEwMTYzNg_a8a16676-cf62-4657-aaaf-1f0641c31e3c"
      unitRef="usd">-898000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6MmNiOGVjNGJlZjU3NDVhY2I3Y2UxYjJkNjA1MDhiZjgvdGFibGVyYW5nZToyY2I4ZWM0YmVmNTc0NWFjYjdjZTFiMmQ2MDUwOGJmOF8yLTctMS0xLTEwMTYzNg_3e0c9525-8652-4775-8658-52dfc91d4320"
      unitRef="usd">1653225000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization
      contextRef="ic7e64d94fc2142a586ef4f2fe8cabba2_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6MmNiOGVjNGJlZjU3NDVhY2I3Y2UxYjJkNjA1MDhiZjgvdGFibGVyYW5nZToyY2I4ZWM0YmVmNTc0NWFjYjdjZTFiMmQ2MDUwOGJmOF8zLTEtMS0xLTEwMTYzNg_5db501ec-5556-48ed-ba58-7a2d74290621"
      unitRef="usd">1092139000</us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization>
    <us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization
      contextRef="i83b10d3c03c148f6843d6898a799af1b_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6MmNiOGVjNGJlZjU3NDVhY2I3Y2UxYjJkNjA1MDhiZjgvdGFibGVyYW5nZToyY2I4ZWM0YmVmNTc0NWFjYjdjZTFiMmQ2MDUwOGJmOF8zLTMtMS0xLTEwMTYzNg_6964e658-6042-451a-99d4-868eb33aaa9f"
      unitRef="usd">12771000</us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization>
    <us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization
      contextRef="i2a61f156f4a841368d04ac31fb199848_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6MmNiOGVjNGJlZjU3NDVhY2I3Y2UxYjJkNjA1MDhiZjgvdGFibGVyYW5nZToyY2I4ZWM0YmVmNTc0NWFjYjdjZTFiMmQ2MDUwOGJmOF8zLTUtMS0xLTEwMTYzNg_1fef78b2-2bee-462f-96d1-3e3146ad10e8"
      unitRef="usd">-670000</us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization>
    <us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6MmNiOGVjNGJlZjU3NDVhY2I3Y2UxYjJkNjA1MDhiZjgvdGFibGVyYW5nZToyY2I4ZWM0YmVmNTc0NWFjYjdjZTFiMmQ2MDUwOGJmOF8zLTctMS0xLTEwMTYzNg_b87a7d38-868d-4f1e-bd4b-c14ce68bee3e"
      unitRef="usd">1104240000</us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization>
    <ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion
      contextRef="ic7e64d94fc2142a586ef4f2fe8cabba2_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6MmNiOGVjNGJlZjU3NDVhY2I3Y2UxYjJkNjA1MDhiZjgvdGFibGVyYW5nZToyY2I4ZWM0YmVmNTc0NWFjYjdjZTFiMmQ2MDUwOGJmOF80LTEtMS0xLTEwMTYzNg_7f067085-4536-4aa0-88ee-1344f8498b93"
      unitRef="usd">544222000</ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion>
    <ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion
      contextRef="i83b10d3c03c148f6843d6898a799af1b_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6MmNiOGVjNGJlZjU3NDVhY2I3Y2UxYjJkNjA1MDhiZjgvdGFibGVyYW5nZToyY2I4ZWM0YmVmNTc0NWFjYjdjZTFiMmQ2MDUwOGJmOF80LTMtMS0xLTEwMTYzNg_c016c73b-eadd-44d7-b283-fb30ab4f0790"
      unitRef="usd">4991000</ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion>
    <ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion
      contextRef="i2a61f156f4a841368d04ac31fb199848_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6MmNiOGVjNGJlZjU3NDVhY2I3Y2UxYjJkNjA1MDhiZjgvdGFibGVyYW5nZToyY2I4ZWM0YmVmNTc0NWFjYjdjZTFiMmQ2MDUwOGJmOF80LTUtMS0xLTEwMTYzNg_4db5875e-180b-4dd3-bfb5-9adbf0809c33"
      unitRef="usd">-228000</ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion>
    <ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion
      contextRef="ie274fecd3dfd42dfbef01a03d192c162_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6MmNiOGVjNGJlZjU3NDVhY2I3Y2UxYjJkNjA1MDhiZjgvdGFibGVyYW5nZToyY2I4ZWM0YmVmNTc0NWFjYjdjZTFiMmQ2MDUwOGJmOF80LTctMS0xLTEwMTYzNg_c0b8b8a2-2570-4513-85cf-aa8d570b3243"
      unitRef="usd">548985000</ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion>
    <ibp:AdjustedGrossProfitPercentage
      contextRef="ic7e64d94fc2142a586ef4f2fe8cabba2_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6MmNiOGVjNGJlZjU3NDVhY2I3Y2UxYjJkNjA1MDhiZjgvdGFibGVyYW5nZToyY2I4ZWM0YmVmNTc0NWFjYjdjZTFiMmQ2MDUwOGJmOF81LTEtMS0xLTExNzI1Mg_a7a0d64b-72ab-45d8-aa95-b95b1e5b0dbd"
      unitRef="number">0.333</ibp:AdjustedGrossProfitPercentage>
    <ibp:AdjustedGrossProfitPercentage
      contextRef="i83b10d3c03c148f6843d6898a799af1b_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6MmNiOGVjNGJlZjU3NDVhY2I3Y2UxYjJkNjA1MDhiZjgvdGFibGVyYW5nZToyY2I4ZWM0YmVmNTc0NWFjYjdjZTFiMmQ2MDUwOGJmOF81LTMtMS0xLTExNzI1Mg_35868e0a-c9d7-4631-934b-72746d578e37"
      unitRef="number">0.281</ibp:AdjustedGrossProfitPercentage>
    <ibp:AdjustedGrossProfitPercentage
      contextRef="i2a61f156f4a841368d04ac31fb199848_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6MmNiOGVjNGJlZjU3NDVhY2I3Y2UxYjJkNjA1MDhiZjgvdGFibGVyYW5nZToyY2I4ZWM0YmVmNTc0NWFjYjdjZTFiMmQ2MDUwOGJmOF81LTUtMS0xLTExNzI1Mg_dcc607ba-424a-4c8a-8863-5b62fdea607a"
      unitRef="number">0.254</ibp:AdjustedGrossProfitPercentage>
    <ibp:AdjustedGrossProfitPercentage
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6MmNiOGVjNGJlZjU3NDVhY2I3Y2UxYjJkNjA1MDhiZjgvdGFibGVyYW5nZToyY2I4ZWM0YmVmNTc0NWFjYjdjZTFiMmQ2MDUwOGJmOF81LTctMS0xLTExNzI1Mg_e93dbd0d-120e-4659-9b7c-f69e4cd5625b"
      unitRef="number">0.332</ibp:AdjustedGrossProfitPercentage>
    <ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion
      contextRef="i8575354b2fbb4902ae0b5a815b512e19_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl8yLTEtMS0xLTExNTkzNw_19556562-53f4-49f2-a1b4-9faf897cd236"
      unitRef="usd">872194000</ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion>
    <ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion
      contextRef="ie5905ba0719040438b112fb99f9b953c_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl8yLTMtMS0xLTExNTkzNw_1e9da2a8-c651-4da0-8cdc-8aa409fd02dd"
      unitRef="usd">630457000</ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion>
    <ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion
      contextRef="ie274fecd3dfd42dfbef01a03d192c162_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl8yLTUtMS0xLTExNTkzNw_c0b8b8a2-2570-4513-85cf-aa8d570b3243"
      unitRef="usd">548985000</ibp:GrossProfitExcludingDepreciationAmortizationAndDepletion>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl8zLTEtMS0xLTExNzIyNA_06ab632c-2e1d-4efb-8693-42004d4eec09"
      unitRef="usd">44410000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl8zLTMtMS0xLTExNzIzMA_f14f0144-2e31-48da-a553-b26d35d5ca28"
      unitRef="usd">40938000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl8zLTUtMS0xLTExNzIzNQ_ca89b78f-3d82-400b-a905-72fbfcb9bb16"
      unitRef="usd">39011000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:GrossProfit
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl80LTEtMS0xLTExNzIyNA_41d4120e-6f05-411b-8097-e20101593677"
      unitRef="usd">827784000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl80LTMtMS0xLTExNzIzMA_5955464d-eaf7-4100-b407-b6722fa59f4d"
      unitRef="usd">589519000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl80LTUtMS0xLTExNzIzNQ_e0a17293-200d-419d-bca6-b72b949864c4"
      unitRef="usd">509974000</us-gaap:GrossProfit>
    <us-gaap:OperatingExpenses
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl81LTEtMS0xLTExNzIyNA_0d42be35-ce7d-47ca-a150-8bd630f33467"
      unitRef="usd">482373000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl81LTMtMS0xLTExNzIzMA_afe49993-c092-405c-ad15-ed7a1ce61b60"
      unitRef="usd">401639000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl81LTUtMS0xLTExNzIzNQ_ec61715b-24d0-484d-b2de-b9e901dbbf3f"
      unitRef="usd">348107000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingIncomeLoss
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl82LTEtMS0xLTExNzIyNA_31da7281-4651-4b92-9fb7-0f73d21b743d"
      unitRef="usd">345411000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl82LTMtMS0xLTExNzIzMA_3811c4a6-bac2-4b6f-8f59-5179c3e257b3"
      unitRef="usd">187880000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl82LTUtMS0xLTExNzIzNQ_638d046c-96a5-4a07-8181-018f10b7ddad"
      unitRef="usd">161867000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OtherNonoperatingExpense
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl83LTEtMS0xLTExNzIyNA_eba5b305-9c43-4f23-81c2-9b53aa75e8bb"
      unitRef="usd">42104000</us-gaap:OtherNonoperatingExpense>
    <us-gaap:OtherNonoperatingExpense
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl83LTMtMS0xLTExNzIzMA_9ff63c7e-25e5-40a4-a574-3e106ee62d9f"
      unitRef="usd">32405000</us-gaap:OtherNonoperatingExpense>
    <us-gaap:OtherNonoperatingExpense
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl83LTUtMS0xLTExNzIzNQ_133fa54c-382f-4fc9-aad0-5402b2dde6c9"
      unitRef="usd">30690000</us-gaap:OtherNonoperatingExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl84LTEtMS0xLTExNzIyNA_0c14181a-39f9-43de-9ace-2d5935371293"
      unitRef="usd">303307000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl84LTMtMS0xLTExNzIzMA_731565c1-e798-4fa1-8eb8-2f8a0fd09855"
      unitRef="usd">155475000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNTE0L2ZyYWc6YzljNDBjMGIyMGY2NGEyNmE0Njc0ODI0ZDIwYTMwZTMvdGFibGU6ODc0OTQ1NzMzOTkxNGMwZmIzZGNkMzgwZmUzYWE3MWYvdGFibGVyYW5nZTo4NzQ5NDU3MzM5OTE0YzBmYjNkY2QzODBmZTNhYTcxZl84LTUtMS0xLTExNzIzNQ_2d28f3e0-655c-4f1c-84db-27176a15916b"
      unitRef="usd">131177000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzQ3MTE_c11b6048-fec9-4d15-9a53-9d9f49869bd4">DERIVATIVES AND HEDGING ACTIVITIES&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Risk Management Objective of Using Derivatives&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We are exposed to certain risks arising from both our business operations and economic conditions. We manage exposure to a wide variety of business and operational risks through our core business activities. We manage economic risks, including interest rate, liquidity and credit risk primarily by overseeing the amount, sources and duration of debt funding and the use of &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;derivative financial instruments. Specifically, we have entered into derivative financial instruments to manage exposure to interest rate movements that result in the receipt or payment of future known and uncertain cash amounts, the value of which are determined by interest rates. Our derivative financial instruments are used to manage differences in the amount, timing and duration of our known or expected cash receipts and known or expected cash payments principally related to our investments and borrowings.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Cash Flow Hedges of Interest Rate Risk&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our purpose for using interest rate derivatives is to add stability to interest expense and to manage our exposure to interest rate movements. During the year ended December&#160;31, 2022, we used interest rate swaps to hedge the variable cash flows associated with existing variable-rate debt. Interest rate swaps designated as cash flow hedges involve the receipt of variable amounts from a counterparty in exchange for making fixed-rate payments over the life of the agreements without exchange of the underlying notional amount. We do not use derivatives for trading or speculative purposes and we currently do not have any derivatives that are not designated as hedges. As of December&#160;31, 2022, we have not posted any collateral related to these agreements.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of December&#160;31, 2022, we had the following interest rate swap derivatives (notional amount in millions): &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:23.461%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:23.461%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:23.461%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:23.465%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Effective Date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Notional Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fixed Rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Maturity Date&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;July 30, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;200.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2025&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;100.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.37&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2025&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;100.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.37&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2025&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;300.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.09&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 14, 2028&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;100.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2.98&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 14, 2028&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of December&#160;31, 2021, we had the following interest rate swap derivatives (notional amount in millions): &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:23.461%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:23.461%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:23.461%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:23.465%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Effective Date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Notional Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fixed Rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Maturity Date&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;July 30, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;200.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 15, 2030&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;100.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.37&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2028&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;100.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.37&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2028&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On July 8, 2022, we amended the maturity date of each of our three active interest rate swaps to December 31, 2025 with other terms remaining unchanged. Collectively, the swap had unrealized gains of $51.2 million at the amendment date of July 8, 2022. These unrealized gains will be amortized as a decrease to interest expense, net through the original maturity dates of April 15, 2030 and December 15, 2028. For the year ended December&#160;31, 2022, we amortized $3.4 million of these unrealized gains as a decrease to interest expense, net. In conjunction with the amendments, we received cash of $25.5 million from swap counterparties, which is presented in cash flows from operating activities in the Consolidated Statements of Cash Flow for the year ended December&#160;31, 2022. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The amended swaps include off-market terms at inception and contained a $25.7 million other-than-insignificant financing element which will amortize to interest expense, net through the new December 31, 2025 maturity date of the amended swaps. As of December&#160;31, 2022, we amortized $3.6 million of the financing element as an increase to interest expense, net. Future net cash settlements are recognized through cash flows from investing activities in the Consolidated Statements of Cash Flows due to the other-than-insignificant financing element.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Also in July 2022, we entered into two new forward interest rate swaps. As of December&#160;31, 2022, these two forward interest rate swaps, combined with our three amended swaps, serve to hedge $400.0 million of the variable cash flows on our variable rate Term Loan through maturity. The assets and liabilities associated with these interest rate swaps are included in other current assets, other non-current assets and other current liabilities on the Consolidated Balance Sheets at their fair value amounts as described in Note 10, Fair Value Measurements.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In August 2020, we terminated two then-existing interest rate swaps and one then-existing forward interest rate swap. During the years ended December&#160;31, 2022, 2021 and 2020, we amortized $3.8 million, $3.2 million and $1.3 million, respectively, of the $17.8 million unrealized loss that existed at the time of termination as an increase to interest expense, net. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The changes in the fair value of derivatives designated, and that qualify, as cash flow hedges are recorded in other comprehensive gain (loss), net of tax on the Consolidated Statements of Operations and Comprehensive Income and in &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;accumulated other comprehensive income (loss) on the Consolidated Balance Sheets and subsequently reclassified into earnings in the period that the hedged forecasted transaction affects earnings. We had no such changes during the years ended December&#160;31, 2022 and 2021.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Amounts reported in accumulated other comprehensive income (loss) related to derivatives will be reclassified to interest expense, net as interest payments are made on our variable-rate debt, and as our terminated and amended swaps are amortized. Over the next twelve months, we estimate that an additional $11.1 million will be reclassified as a decrease to interest expense, net.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes amounts recorded to &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDUx_3580f4e1-9b51-444e-9a35-60d80703421b"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDUx_b0d386bd-7d5d-4b4d-b157-231830ca5700"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDUx_f2565731-dcbc-4849-afbc-408fac97be5e"&gt;interest expense&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;, net included in the Condensed Consolidated Statements of Operations and Comprehensive Income related to our interest rate swaps (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:53.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.525%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(Benefit) expense associated with swap net settlements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,128)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;370&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,453&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expense associated with amortization of amended/terminated swaps&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,928&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,223&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,326&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;LIBOR is used as a reference rate for our interest rate swap agreements we use to hedge our interest rate exposure. The Intercontinental Exchange Benchmark Administration, the administrator of LIBOR, announced in March 2021 its intention to extend the publication of certain LIBOR settings, including the setting we use as a reference rate, to June 2023. In January 2020, the FASB issued ASU 2020-04, Reference Rate Reform: Facilitation of the Effects of Reference Rate Reform on Financial Reporting (Topic 848) and in January 2021, the FASB subsequently issued ASU 2021-01, Reference Rate Reform - Scope, which clarified the scope and application of the original guidance. During the year ended December&#160;31, 2022, we adopted ASU 2022-06, Reference Rate Reform: Deferral of the Sunset Date of Topic 848 (Topic 848) which extends the sunset date of previous adopted guidance under ASU 2020-04 to December 31, 2024. The purpose of this guidance is to provide relief for impacted areas as it relates to impending reference rate reform. We elected to apply the hedge accounting expedients related to probability and the assessments of effectiveness for future LIBOR-indexed cash flows to assume that the index upon which future hedged transactions will be based matches the index on the corresponding derivatives. Application of these expedients preserves the presentation of derivatives consistent with past presentation.&lt;/span&gt;&lt;/div&gt;</us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock>
    <us-gaap:ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDA3_cadf699c-9dbe-4c78-86a9-178b55a12cbf">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of December&#160;31, 2022, we had the following interest rate swap derivatives (notional amount in millions): &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:23.461%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:23.461%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:23.461%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:23.465%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Effective Date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Notional Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fixed Rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Maturity Date&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;July 30, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;200.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2025&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;100.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.37&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2025&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;100.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.37&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2025&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;300.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.09&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 14, 2028&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;100.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2.98&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 14, 2028&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of December&#160;31, 2021, we had the following interest rate swap derivatives (notional amount in millions): &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:23.461%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:23.461%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:23.461%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:23.465%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Effective Date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Notional Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fixed Rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Maturity Date&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;July 30, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;200.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 15, 2030&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;100.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.37&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2028&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;100.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.37&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2028&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock>
    <us-gaap:DerivativeNotionalAmount
      contextRef="ibee1a74171604fea9600eff85349f6c6_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTpmYjVlN2Y5MDkxYzg0Y2Q2YTZlNDMyMDMxZWYyMzc4Mi90YWJsZXJhbmdlOmZiNWU3ZjkwOTFjODRjZDZhNmU0MzIwMzFlZjIzNzgyXzItMi0xLTEtMTE2NDky_60e58659-a365-4bbe-8113-b51621d00efb"
      unitRef="usd">200000000.0</us-gaap:DerivativeNotionalAmount>
    <us-gaap:DerivativeFixedInterestRate
      contextRef="ibee1a74171604fea9600eff85349f6c6_I20221231"
      decimals="5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTpmYjVlN2Y5MDkxYzg0Y2Q2YTZlNDMyMDMxZWYyMzc4Mi90YWJsZXJhbmdlOmZiNWU3ZjkwOTFjODRjZDZhNmU0MzIwMzFlZjIzNzgyXzItNC0xLTEtMTE2NDky_3b89231f-fc28-4568-95b2-5ce784cf0e49"
      unitRef="number">0.0051</us-gaap:DerivativeFixedInterestRate>
    <us-gaap:DerivativeNotionalAmount
      contextRef="ifabecb9e61e345918b677899e47caab9_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTpmYjVlN2Y5MDkxYzg0Y2Q2YTZlNDMyMDMxZWYyMzc4Mi90YWJsZXJhbmdlOmZiNWU3ZjkwOTFjODRjZDZhNmU0MzIwMzFlZjIzNzgyXzMtMi0xLTEtMTE2NDky_4220ce4b-59d8-4fdf-b963-d5ca8541466a"
      unitRef="usd">100000000.0</us-gaap:DerivativeNotionalAmount>
    <us-gaap:DerivativeFixedInterestRate
      contextRef="ifabecb9e61e345918b677899e47caab9_I20221231"
      decimals="5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTpmYjVlN2Y5MDkxYzg0Y2Q2YTZlNDMyMDMxZWYyMzc4Mi90YWJsZXJhbmdlOmZiNWU3ZjkwOTFjODRjZDZhNmU0MzIwMzFlZjIzNzgyXzMtNC0xLTEtMTE2NDky_c2343023-1006-4d92-bab9-2a00a04af7aa"
      unitRef="number">0.0137</us-gaap:DerivativeFixedInterestRate>
    <us-gaap:DerivativeNotionalAmount
      contextRef="i3770042c69554337aa145a020b149bcd_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTpmYjVlN2Y5MDkxYzg0Y2Q2YTZlNDMyMDMxZWYyMzc4Mi90YWJsZXJhbmdlOmZiNWU3ZjkwOTFjODRjZDZhNmU0MzIwMzFlZjIzNzgyXzQtMi0xLTEtMTE2NDky_2bd8a16d-829b-44d7-bece-17a2d66c4d80"
      unitRef="usd">100000000.0</us-gaap:DerivativeNotionalAmount>
    <us-gaap:DerivativeFixedInterestRate
      contextRef="i3770042c69554337aa145a020b149bcd_I20221231"
      decimals="5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTpmYjVlN2Y5MDkxYzg0Y2Q2YTZlNDMyMDMxZWYyMzc4Mi90YWJsZXJhbmdlOmZiNWU3ZjkwOTFjODRjZDZhNmU0MzIwMzFlZjIzNzgyXzQtNC0xLTEtMTE2NDky_a1a01ccd-bcd1-4509-8987-20dfcd7ec021"
      unitRef="number">0.0137</us-gaap:DerivativeFixedInterestRate>
    <us-gaap:DerivativeNotionalAmount
      contextRef="i1672765a5f964c51ab755b498631ad23_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTpmYjVlN2Y5MDkxYzg0Y2Q2YTZlNDMyMDMxZWYyMzc4Mi90YWJsZXJhbmdlOmZiNWU3ZjkwOTFjODRjZDZhNmU0MzIwMzFlZjIzNzgyXzUtMi0xLTEtMTE2NDky_b5c73ecb-96fb-4c34-968b-226b1699b55a"
      unitRef="usd">300000000.0</us-gaap:DerivativeNotionalAmount>
    <us-gaap:DerivativeFixedInterestRate
      contextRef="i1672765a5f964c51ab755b498631ad23_I20221231"
      decimals="5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTpmYjVlN2Y5MDkxYzg0Y2Q2YTZlNDMyMDMxZWYyMzc4Mi90YWJsZXJhbmdlOmZiNWU3ZjkwOTFjODRjZDZhNmU0MzIwMzFlZjIzNzgyXzUtNC0xLTEtMTE2NDky_12f333d8-0d98-491c-9db3-266848e0aeda"
      unitRef="number">0.0309</us-gaap:DerivativeFixedInterestRate>
    <us-gaap:DerivativeNotionalAmount
      contextRef="idf0befe7ce8a45db81c1e364433b2346_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTpmYjVlN2Y5MDkxYzg0Y2Q2YTZlNDMyMDMxZWYyMzc4Mi90YWJsZXJhbmdlOmZiNWU3ZjkwOTFjODRjZDZhNmU0MzIwMzFlZjIzNzgyXzYtMi0xLTEtMTE2NDky_f101648d-80b8-4a8f-baca-3d52fab14a8d"
      unitRef="usd">100000000.0</us-gaap:DerivativeNotionalAmount>
    <us-gaap:DerivativeFixedInterestRate
      contextRef="idf0befe7ce8a45db81c1e364433b2346_I20221231"
      decimals="5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTpmYjVlN2Y5MDkxYzg0Y2Q2YTZlNDMyMDMxZWYyMzc4Mi90YWJsZXJhbmdlOmZiNWU3ZjkwOTFjODRjZDZhNmU0MzIwMzFlZjIzNzgyXzYtNC0xLTEtMTE2NDky_5391f34b-54ea-4511-b908-13c126191be6"
      unitRef="number">0.0298</us-gaap:DerivativeFixedInterestRate>
    <us-gaap:DerivativeNotionalAmount
      contextRef="ic2cf2e52ccd646ef9a9d36906001e517_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTpjYTFiYmM4NThiYTY0M2EwOGY5ODY0NzE2MzdjNjQwYy90YWJsZXJhbmdlOmNhMWJiYzg1OGJhNjQzYTA4Zjk4NjQ3MTYzN2M2NDBjXzItMi0xLTEtMTE2NTQ4_6dc83824-9580-4f32-bbe4-66466167f8d0"
      unitRef="usd">200000000.0</us-gaap:DerivativeNotionalAmount>
    <us-gaap:DerivativeFixedInterestRate
      contextRef="ic2cf2e52ccd646ef9a9d36906001e517_I20211231"
      decimals="5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTpjYTFiYmM4NThiYTY0M2EwOGY5ODY0NzE2MzdjNjQwYy90YWJsZXJhbmdlOmNhMWJiYzg1OGJhNjQzYTA4Zjk4NjQ3MTYzN2M2NDBjXzItNC0xLTEtMTE2NTQ4_73c83930-2097-4ad4-b1ee-65edcedd896b"
      unitRef="number">0.0051</us-gaap:DerivativeFixedInterestRate>
    <us-gaap:DerivativeNotionalAmount
      contextRef="i1301eb6a5fc549069945be411b5afa6b_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTpjYTFiYmM4NThiYTY0M2EwOGY5ODY0NzE2MzdjNjQwYy90YWJsZXJhbmdlOmNhMWJiYzg1OGJhNjQzYTA4Zjk4NjQ3MTYzN2M2NDBjXzMtMi0xLTEtMTE2NTQ4_01797c22-db4d-44b5-a3ad-20a97003f134"
      unitRef="usd">100000000.0</us-gaap:DerivativeNotionalAmount>
    <us-gaap:DerivativeFixedInterestRate
      contextRef="i1301eb6a5fc549069945be411b5afa6b_I20211231"
      decimals="5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTpjYTFiYmM4NThiYTY0M2EwOGY5ODY0NzE2MzdjNjQwYy90YWJsZXJhbmdlOmNhMWJiYzg1OGJhNjQzYTA4Zjk4NjQ3MTYzN2M2NDBjXzMtNC0xLTEtMTE2NTQ4_cf5cb8b4-9923-4307-be5b-8d5d1561649d"
      unitRef="number">0.0137</us-gaap:DerivativeFixedInterestRate>
    <us-gaap:DerivativeNotionalAmount
      contextRef="i553a93f70bb8496aa0ff5b74f2f9ea55_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTpjYTFiYmM4NThiYTY0M2EwOGY5ODY0NzE2MzdjNjQwYy90YWJsZXJhbmdlOmNhMWJiYzg1OGJhNjQzYTA4Zjk4NjQ3MTYzN2M2NDBjXzQtMi0xLTEtMTE2NTQ4_03450116-203c-47e5-86ba-100cb1e89e47"
      unitRef="usd">100000000.0</us-gaap:DerivativeNotionalAmount>
    <us-gaap:DerivativeFixedInterestRate
      contextRef="i553a93f70bb8496aa0ff5b74f2f9ea55_I20211231"
      decimals="5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTpjYTFiYmM4NThiYTY0M2EwOGY5ODY0NzE2MzdjNjQwYy90YWJsZXJhbmdlOmNhMWJiYzg1OGJhNjQzYTA4Zjk4NjQ3MTYzN2M2NDBjXzQtNC0xLTEtMTE2NTQ4_09d2578d-b8a7-4eae-af89-a17f4de2a05d"
      unitRef="number">0.0137</us-gaap:DerivativeFixedInterestRate>
    <us-gaap:DerivativeNumberOfInstrumentsHeld
      contextRef="iab01235b40dd45c6927bbad026dd9938_I20220708"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDE1_0c9ffb8d-ac76-4e53-a66a-2f566e9bc0dc"
      unitRef="instrument">3</us-gaap:DerivativeNumberOfInstrumentsHeld>
    <us-gaap:UnrealizedGainLossOnDerivatives
      contextRef="i442df108481d486093e987ae0ab7f3de_D20220708-20220708"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzQzOTgwNDY1MzE3Njk_1f609546-a9b9-43dd-9586-8d63bf7076c3"
      unitRef="usd">51200000</us-gaap:UnrealizedGainLossOnDerivatives>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationTax
      contextRef="ib89a7646ef1240b0a5ab77c7f353f692_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzQzOTgwNDY1MzE3Nzc_03dcea56-eb77-40b9-9784-63411bd63a22"
      unitRef="usd">3400000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationTax>
    <ibp:ProceedsFromTerminationOfDerivativeInstruments
      contextRef="ib89a7646ef1240b0a5ab77c7f353f692_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzU0OTc1NTgzNDQyMw_3408f842-2b17-4e6d-9521-c50050721c6f"
      unitRef="usd">25500000</ibp:ProceedsFromTerminationOfDerivativeInstruments>
    <ibp:SwapOffMarketTermsCapitalized
      contextRef="i56181c5a7f2d4a8391dd92fea36879d4_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzQzOTgwNDY1MzE3OTc_fccec013-2834-4e5a-b226-680f4255e61f"
      unitRef="usd">25700000</ibp:SwapOffMarketTermsCapitalized>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsTax
      contextRef="ib89a7646ef1240b0a5ab77c7f353f692_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzQzOTgwNDY1MzE4MTg_d0b52f5b-99e0-49dd-a14f-0cfcbe94a686"
      unitRef="usd">3600000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsTax>
    <us-gaap:DerivativeNumberOfInstrumentsHeld
      contextRef="i3dc49179ed7c4a1baba5f2c76bfe1f2d_I20220728"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDMy_a7f763bb-1c4f-40cc-8020-c073c19e7dbc"
      unitRef="instrument">2</us-gaap:DerivativeNumberOfInstrumentsHeld>
    <us-gaap:DerivativeNumberOfInstrumentsHeld
      contextRef="i3dc49179ed7c4a1baba5f2c76bfe1f2d_I20220728"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDM3_a7f763bb-1c4f-40cc-8020-c073c19e7dbc"
      unitRef="instrument">2</us-gaap:DerivativeNumberOfInstrumentsHeld>
    <us-gaap:DerivativeNumberOfInstrumentsHeld
      contextRef="iab01235b40dd45c6927bbad026dd9938_I20220708"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDIw_0c9ffb8d-ac76-4e53-a66a-2f566e9bc0dc"
      unitRef="instrument">3</us-gaap:DerivativeNumberOfInstrumentsHeld>
    <us-gaap:DerivativeNotionalAmount
      contextRef="i0d2108f549d34ce5bfda96eeaa0b81bf_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzQzOTgwNDY1MzE4ODI_e038326c-57a4-4e52-beb1-58c149f9606e"
      unitRef="usd">400000000</us-gaap:DerivativeNotionalAmount>
    <ibp:NumberOfSwaps
      contextRef="if1142baf02ff4a46880be63e5f3a091c_I20200831"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDQ3_37377fda-20ed-4149-82bd-133852f8895c"
      unitRef="swap">2</ibp:NumberOfSwaps>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax
      contextRef="ib89a7646ef1240b0a5ab77c7f353f692_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzQzOTgwNDY1MzE5MjE_8e96b560-4a1d-4670-a3eb-01127fdb6d9f"
      unitRef="usd">3800000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax
      contextRef="ia81262dad5e84fed93f6a279d84424fe_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzQzOTgwNDY1MzE5MzY_b6a203bf-1f5b-4c06-bccb-0b359b34561c"
      unitRef="usd">3200000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax
      contextRef="ic91a6a4159b341b193c39b699641e966_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzQzOTgwNDY1MzIwMjQ_e70ba575-16e8-4814-a189-faf158babbb1"
      unitRef="usd">1300000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax
      contextRef="iefd77e98cbe14c7a925d42dfe158f974_D20210801-20210831"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzQzOTgwNDY1MzE5MDI_d90fec8c-0a23-492a-b040-de55cce09304"
      unitRef="usd">17800000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax>
    <us-gaap:DerivativeInstrumentsGainLossReclassificationFromAccumulatedOCIToIncomeEstimatedNetAmountToBeTransferred
      contextRef="i0a10819a03884112b683b41306168549_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzQzOTgwNDY1MzIxNjk_ff15da5b-a687-492a-be7e-a52829cf1008"
      unitRef="usd">11100000</us-gaap:DerivativeInstrumentsGainLossReclassificationFromAccumulatedOCIToIncomeEstimatedNetAmountToBeTransferred>
    <us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDUw_d0a9b206-3578-4998-b036-78fba60bdfab">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes amounts recorded to &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDUx_3580f4e1-9b51-444e-9a35-60d80703421b"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDUx_b0d386bd-7d5d-4b4d-b157-231830ca5700"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90ZXh0cmVnaW9uOjVjY2RiZjE5MjFlOTRhYzJhOTNjYWM4YTQ3YzVmNWMxXzEyNjQ0MzgzNzQzMDUx_f2565731-dcbc-4849-afbc-408fac97be5e"&gt;interest expense&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;, net included in the Condensed Consolidated Statements of Operations and Comprehensive Income related to our interest rate swaps (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:53.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.525%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(Benefit) expense associated with swap net settlements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,128)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;370&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,453&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expense associated with amortization of amended/terminated swaps&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,928&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,223&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,326&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock>
    <ibp:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax
      contextRef="i22b861620ef3464eb72be526ade264aa_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTowZDlhNGJhZTYwNDM0MzRkYjg2NDk3MmNlYTBhMTUxMi90YWJsZXJhbmdlOjBkOWE0YmFlNjA0MzQzNGRiODY0OTcyY2VhMGExNTEyXzItMi0xLTEtMTE2Njc4_0b37f5dc-6f69-4c31-bc76-91955ea934cd"
      unitRef="usd">-3128000</ibp:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax>
    <ibp:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax
      contextRef="iff2e5d359b374823988dd0110d4470cf_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTowZDlhNGJhZTYwNDM0MzRkYjg2NDk3MmNlYTBhMTUxMi90YWJsZXJhbmdlOjBkOWE0YmFlNjA0MzQzNGRiODY0OTcyY2VhMGExNTEyXzItNC0xLTEtMTE2Njc4_eb0e1ca4-3ecb-4908-a122-7f4ccc57b2db"
      unitRef="usd">370000</ibp:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax>
    <ibp:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax
      contextRef="if24349dd43b048f68bf4cc030d2889da_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTowZDlhNGJhZTYwNDM0MzRkYjg2NDk3MmNlYTBhMTUxMi90YWJsZXJhbmdlOjBkOWE0YmFlNjA0MzQzNGRiODY0OTcyY2VhMGExNTEyXzItNi0xLTEtMTE4MTA4_f63bca80-6bac-4a06-a58f-1eb018fba23b"
      unitRef="usd">1453000</ibp:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax
      contextRef="i22b861620ef3464eb72be526ade264aa_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTowZDlhNGJhZTYwNDM0MzRkYjg2NDk3MmNlYTBhMTUxMi90YWJsZXJhbmdlOjBkOWE0YmFlNjA0MzQzNGRiODY0OTcyY2VhMGExNTEyXzMtMi0xLTEtMTE2Njc4_bbd70148-6caa-4757-a4fa-6b2cbcbe8908"
      unitRef="usd">3928000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax
      contextRef="iff2e5d359b374823988dd0110d4470cf_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTowZDlhNGJhZTYwNDM0MzRkYjg2NDk3MmNlYTBhMTUxMi90YWJsZXJhbmdlOjBkOWE0YmFlNjA0MzQzNGRiODY0OTcyY2VhMGExNTEyXzMtNC0xLTEtMTE2Njc4_0d0c8b01-6563-46e2-bbc1-d34fd6cec850"
      unitRef="usd">3223000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax
      contextRef="if24349dd43b048f68bf4cc030d2889da_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTUvZnJhZzo1Y2NkYmYxOTIxZTk0YWMyYTkzY2FjOGE0N2M1ZjVjMS90YWJsZTowZDlhNGJhZTYwNDM0MzRkYjg2NDk3MmNlYTBhMTUxMi90YWJsZXJhbmdlOjBkOWE0YmFlNjA0MzQzNGRiODY0OTcyY2VhMGExNTEyXzMtNi0xLTEtMTE4MTA4_9bbb672b-95b0-469c-90a8-316cb55c9327"
      unitRef="usd">1326000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax>
    <us-gaap:StockholdersEquityNoteDisclosureTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90ZXh0cmVnaW9uOjAwZTg4MmU0ZjI4NjRmYjdiNDkzODRhZjFlMzA5YjJlXzI1ODQ_0761b44f-230b-48d9-8185-0bdffa0be199">STOCKHOLDERS&#x2019; EQUITY&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Accumulated other comprehensive income (loss)&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The change in accumulated other comprehensive income (loss) related to our interest rate derivatives, net of taxes, was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:18pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:53.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.525%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Year Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accumulated loss at beginning of period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(227)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(8,763)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(7,143)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unrealized gain (loss) in fair value of interest rate derivatives&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;37,885&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,151&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,601)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Reclassification of realized net losses to earnings&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,902&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,385&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;981&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accumulated gain (loss) at end of period &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;40,560&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(227)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(8,763)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The reclassifications of realized net losses to earnings in the above table are recorded within interest expense, net.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Share repurchases&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On February 24, 2022, we announced that our board of directors authorized an extension of our previous stock repurchase program through March 1, 2023 and concurrently authorized an increase in the total amount of our outstanding common stock we can purchase up to $200.0&#160;million. On August 4, 2022, we announced that our board of directors authorized a new stock repurchase program which replaces our previous program. The new stock repurchase program allows for the repurchase of up to $200.0&#160;million of our outstanding common stock through August 10, 2023. As of December 31, 2022, we had $162.1&#160;million remaining on that stock repurchase program. On February 22, 2023, we announced that our board of directors authorized a new &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;stock repurchase program that allows for the repurchase of up to $200.0&#160;million of our outstanding common stock. The new program replaces the previous program and is in effect through March 1, 2024. The effect of these treasury shares in reducing the number of common shares outstanding is reflected in our earnings per share calculation. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the year ended December&#160;31, 2022, we repurchased approximately 1.5 million shares of our common stock with an aggregate price of approximately $137.6 million, or $91.54 average price per share. During the year ended December&#160;31, 2020 we repurchased 633&#160;thousand shares of our outstanding common stock with an aggregate price of approximately $33.9 million, or $53.57 average price per share. We did not repurchase any shares during the year ended December 31, 2021. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Dividends&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the year ended December 31, 2022, we declared and paid the following cash dividends (amount declared and amount paid in thousands): &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:7pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.958%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.274%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.274%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.297%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.835%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.842%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Declaration Date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Record Date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Payment Date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Dividend Per Share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amount Declared&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amount Paid &lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2/24/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3/15/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3/31/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.90&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,585&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,242&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2/24/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3/15/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3/31/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.315&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,305&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,184&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5/5/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6/15/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6/30/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.315&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,054&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,982&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8/4/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9/15/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9/30/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.315&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,018&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,945&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11/03/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12/15/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12/31/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.315&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,917&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,845&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:7pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the year ended December 31, 2021, we declared and paid the following cash dividends (amount declared and amount paid in thousands): &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.543%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.543%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.835%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.115%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.005%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.835%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.842%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Declaration Date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Record Date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Payment Date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Dividend Per Share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amount Declared&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amount Paid &lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2/23/2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3/15/2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3/31/2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.30&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 13pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,907&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,786&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5/5/2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6/15/2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6/30/2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.30&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 13pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,910&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,821&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8/5/2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9/15/2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9/30/2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.30&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 13pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,912&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,821&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11/4/2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12/15/2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12/31/2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.30&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 13pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,911&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,866&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The amount of dividends declared may vary from the amount of dividends paid in a period due to the vesting of restricted stock awards and performance share awards, which accrue dividend equivalent rights that are paid when the award vests. During the year ended December&#160;31, 2022, we also paid $0.5 million in accrued dividends not included in the table above related to the vesting of these awards. The payment of future dividends will be at the discretion of our board of directors and will depend on our future earnings, capital requirements, financial condition, future prospects, results of operations, contractual restrictions, legal requirements, and other factors deemed relevant by our board of directors. We did not declare or pay any cash dividends on our capital stock during the year ended December 31, 2020. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our credit facilities place restrictions on the amount of dividends and stock repurchases we can make during a fiscal year. See Note 8, Long-Term Debt, for more information.&lt;/span&gt;&lt;/div&gt;</us-gaap:StockholdersEquityNoteDisclosureTextBlock>
    <us-gaap:ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90ZXh0cmVnaW9uOjAwZTg4MmU0ZjI4NjRmYjdiNDkzODRhZjFlMzA5YjJlXzE2NDkyNjc0NTA1MzM_638c171a-06e1-42f6-a0d4-f9ea13b2dfdd">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The change in accumulated other comprehensive income (loss) related to our interest rate derivatives, net of taxes, was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:18pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:53.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.525%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Year Ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accumulated loss at beginning of period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(227)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(8,763)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(7,143)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unrealized gain (loss) in fair value of interest rate derivatives&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;37,885&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,151&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,601)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Reclassification of realized net losses to earnings&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,902&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,385&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;981&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accumulated gain (loss) at end of period &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;40,560&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(227)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(8,763)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock>
    <us-gaap:StockholdersEquity
      contextRef="ic7d96b76684448ca8dc8d5eb2af2aa51_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTowM2M4NjcwNmFjMTI0MTg2YTBkMDY1ODc0Mjk2ZTBlYy90YWJsZXJhbmdlOjAzYzg2NzA2YWMxMjQxODZhMGQwNjU4NzQyOTZlMGVjXzItMi0xLTEtMTA5NTM2_4fb6f4c3-99ae-4b40-96cc-a7e4e9f1dde0"
      unitRef="usd">-227000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="iddedffc4e5144507a507008593a6873b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTowM2M4NjcwNmFjMTI0MTg2YTBkMDY1ODc0Mjk2ZTBlYy90YWJsZXJhbmdlOjAzYzg2NzA2YWMxMjQxODZhMGQwNjU4NzQyOTZlMGVjXzItNC0xLTEtMTA5NTM2_02e7831b-3a8a-43b6-9a43-7d8d9c70f474"
      unitRef="usd">-8763000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ib6ac4b7d2a984343a2a2675dcd2e6938_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTowM2M4NjcwNmFjMTI0MTg2YTBkMDY1ODc0Mjk2ZTBlYy90YWJsZXJhbmdlOjAzYzg2NzA2YWMxMjQxODZhMGQwNjU4NzQyOTZlMGVjXzItNi0xLTEtMTE2Nzg4_e4743048-7982-4319-8521-341e0fd730f4"
      unitRef="usd">-7143000</us-gaap:StockholdersEquity>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="i8f1fc2a7afff401a89603047426d6933_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTowM2M4NjcwNmFjMTI0MTg2YTBkMDY1ODc0Mjk2ZTBlYy90YWJsZXJhbmdlOjAzYzg2NzA2YWMxMjQxODZhMGQwNjU4NzQyOTZlMGVjXzMtMi0xLTEtMTA5NTM2_a2c2d78d-defe-4b2e-8966-805f698c9cb7"
      unitRef="usd">37885000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="i181ad4bd7adf4caa9f759ca2b9c63e8b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTowM2M4NjcwNmFjMTI0MTg2YTBkMDY1ODc0Mjk2ZTBlYy90YWJsZXJhbmdlOjAzYzg2NzA2YWMxMjQxODZhMGQwNjU4NzQyOTZlMGVjXzMtNC0xLTEtMTA5NTM2_94abf1d3-4ab1-4797-a885-ed69b0c14a86"
      unitRef="usd">6151000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax
      contextRef="ib71212c1449342498cafafbd95744e94_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTowM2M4NjcwNmFjMTI0MTg2YTBkMDY1ODc0Mjk2ZTBlYy90YWJsZXJhbmdlOjAzYzg2NzA2YWMxMjQxODZhMGQwNjU4NzQyOTZlMGVjXzMtNi0xLTEtMTE2Nzg4_4ab2aa95-6e65-4081-b167-05f4979b3ff6"
      unitRef="usd">-2601000</us-gaap:OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax>
    <us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
      contextRef="i8f1fc2a7afff401a89603047426d6933_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTowM2M4NjcwNmFjMTI0MTg2YTBkMDY1ODc0Mjk2ZTBlYy90YWJsZXJhbmdlOjAzYzg2NzA2YWMxMjQxODZhMGQwNjU4NzQyOTZlMGVjXzQtMi0xLTEtMTA5NTM2_36ce1b21-966f-4231-8bf6-ca6c0a0075a8"
      unitRef="usd">2902000</us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax>
    <us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
      contextRef="i181ad4bd7adf4caa9f759ca2b9c63e8b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTowM2M4NjcwNmFjMTI0MTg2YTBkMDY1ODc0Mjk2ZTBlYy90YWJsZXJhbmdlOjAzYzg2NzA2YWMxMjQxODZhMGQwNjU4NzQyOTZlMGVjXzQtNC0xLTEtMTA5NTM2_ce404377-d1cb-4ee2-92af-f6588704a892"
      unitRef="usd">2385000</us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax>
    <us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax
      contextRef="ib71212c1449342498cafafbd95744e94_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTowM2M4NjcwNmFjMTI0MTg2YTBkMDY1ODc0Mjk2ZTBlYy90YWJsZXJhbmdlOjAzYzg2NzA2YWMxMjQxODZhMGQwNjU4NzQyOTZlMGVjXzQtNi0xLTEtMTE2Nzg4_09c0e2e2-dfb3-429e-8b92-61ebe7982f43"
      unitRef="usd">981000</us-gaap:ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax>
    <us-gaap:StockholdersEquity
      contextRef="i7333bb6e9aa345eaae9049c458a08bcb_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTowM2M4NjcwNmFjMTI0MTg2YTBkMDY1ODc0Mjk2ZTBlYy90YWJsZXJhbmdlOjAzYzg2NzA2YWMxMjQxODZhMGQwNjU4NzQyOTZlMGVjXzUtMi0xLTEtMTA5NTM2_abdf2459-5c4e-4bd7-b577-de2f322f2560"
      unitRef="usd">40560000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ic7d96b76684448ca8dc8d5eb2af2aa51_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTowM2M4NjcwNmFjMTI0MTg2YTBkMDY1ODc0Mjk2ZTBlYy90YWJsZXJhbmdlOjAzYzg2NzA2YWMxMjQxODZhMGQwNjU4NzQyOTZlMGVjXzUtNC0xLTEtMTA5NTM2_6cd36839-16dd-49a9-92d1-3137683722be"
      unitRef="usd">-227000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="iddedffc4e5144507a507008593a6873b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTowM2M4NjcwNmFjMTI0MTg2YTBkMDY1ODc0Mjk2ZTBlYy90YWJsZXJhbmdlOjAzYzg2NzA2YWMxMjQxODZhMGQwNjU4NzQyOTZlMGVjXzUtNi0xLTEtMTE2Nzg4_695f132f-7ebe-4d50-88d6-0bba86b8d7bc"
      unitRef="usd">-8763000</us-gaap:StockholdersEquity>
    <us-gaap:StockRepurchaseProgramAuthorizedAmount1
      contextRef="i100c14fc5dac409cbdb1dacc3ea4f5a3_I20220224"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90ZXh0cmVnaW9uOjAwZTg4MmU0ZjI4NjRmYjdiNDkzODRhZjFlMzA5YjJlXzEwOTk1MTE2Mzc4NDM_0868029e-1524-4854-ae0e-3890c0a533b9"
      unitRef="usd">200000000</us-gaap:StockRepurchaseProgramAuthorizedAmount1>
    <us-gaap:StockRepurchaseProgramAuthorizedAmount1
      contextRef="i100c14fc5dac409cbdb1dacc3ea4f5a3_I20220224"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90ZXh0cmVnaW9uOjAwZTg4MmU0ZjI4NjRmYjdiNDkzODRhZjFlMzA5YjJlXzEwOTk1MTE2MzgwNTU_0868029e-1524-4854-ae0e-3890c0a533b9"
      unitRef="usd">200000000</us-gaap:StockRepurchaseProgramAuthorizedAmount1>
    <us-gaap:StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90ZXh0cmVnaW9uOjAwZTg4MmU0ZjI4NjRmYjdiNDkzODRhZjFlMzA5YjJlXzEwOTk1MTE2MzgxNDg_301ebeb2-d339-42f7-8bad-38c6f7b4f812"
      unitRef="usd">162100000</us-gaap:StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1>
    <us-gaap:StockRepurchaseProgramAuthorizedAmount1
      contextRef="iaf7f2985f94c4c49bd394258ac3e1c59_I20230222"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90ZXh0cmVnaW9uOjAwZTg4MmU0ZjI4NjRmYjdiNDkzODRhZjFlMzA5YjJlXzEwOTk1MTE2MzgzNDE_1a0a92f2-09f1-44d6-9be6-123b30e49d94"
      unitRef="usd">200000000</us-gaap:StockRepurchaseProgramAuthorizedAmount1>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90ZXh0cmVnaW9uOjAwZTg4MmU0ZjI4NjRmYjdiNDkzODRhZjFlMzA5YjJlXzU0OTc1NTgxOTk2MQ_d1df8ca1-ea25-443a-a1c4-d271b0dc4f1e"
      unitRef="shares">1500000</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90ZXh0cmVnaW9uOjAwZTg4MmU0ZjI4NjRmYjdiNDkzODRhZjFlMzA5YjJlXzU0OTc1NTgxOTk3OQ_10ba5f49-ed2a-420f-82c6-47da9beaf9ca"
      unitRef="usd">137600000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockAcquiredAverageCostPerShare
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90ZXh0cmVnaW9uOjAwZTg4MmU0ZjI4NjRmYjdiNDkzODRhZjFlMzA5YjJlXzU0OTc1NTgxOTk5Mg_33d6701a-a819-426e-b6cd-118aad12f34c"
      unitRef="usdPerShare">91.54</us-gaap:TreasuryStockAcquiredAverageCostPerShare>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90ZXh0cmVnaW9uOjAwZTg4MmU0ZjI4NjRmYjdiNDkzODRhZjFlMzA5YjJlXzkzNDU4NDg4NDUwMjc_b6d88dbf-93ec-4556-888a-7ddfdcc31483"
      unitRef="shares">633000</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90ZXh0cmVnaW9uOjAwZTg4MmU0ZjI4NjRmYjdiNDkzODRhZjFlMzA5YjJlXzkzNDU4NDg4NDUxMTc_ab2e4b7f-6da7-40a4-a43b-e95b6356b918"
      unitRef="usd">33900000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockAcquiredAverageCostPerShare
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90ZXh0cmVnaW9uOjAwZTg4MmU0ZjI4NjRmYjdiNDkzODRhZjFlMzA5YjJlXzkzNDU4NDg4NDUxMzA_cf9acc91-aaf0-493d-875b-bf15d2c88197"
      unitRef="usdPerShare">53.57</us-gaap:TreasuryStockAcquiredAverageCostPerShare>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90ZXh0cmVnaW9uOjAwZTg4MmU0ZjI4NjRmYjdiNDkzODRhZjFlMzA5YjJlXzE2NDkyNjc0NTM1MTg_ddebaa4a-da4c-4c6d-a361-b85ae89e3c38"
      unitRef="shares">0</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:DividendsDeclaredTableTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90ZXh0cmVnaW9uOjAwZTg4MmU0ZjI4NjRmYjdiNDkzODRhZjFlMzA5YjJlXzE2NDkyNjc0NTA1MzQ_2f9ffc56-3bd4-4ad0-aa92-312ed1036247">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the year ended December 31, 2022, we declared and paid the following cash dividends (amount declared and amount paid in thousands): &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:7pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.958%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.274%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.274%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.297%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.835%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.842%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Declaration Date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Record Date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Payment Date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Dividend Per Share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amount Declared&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amount Paid &lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2/24/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3/15/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3/31/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.90&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,585&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,242&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2/24/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3/15/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3/31/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.315&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,305&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,184&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5/5/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6/15/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6/30/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.315&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,054&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,982&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8/4/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9/15/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9/30/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.315&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,018&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,945&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11/03/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12/15/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12/31/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.315&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,917&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,845&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:7pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the year ended December 31, 2021, we declared and paid the following cash dividends (amount declared and amount paid in thousands): &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.543%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.543%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.835%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.115%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.005%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.835%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.842%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Declaration Date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Record Date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Payment Date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Dividend Per Share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amount Declared&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amount Paid &lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2/23/2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3/15/2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3/31/2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.30&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 13pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,907&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,786&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5/5/2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6/15/2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6/30/2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.30&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 13pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,910&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,821&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8/5/2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9/15/2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9/30/2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.30&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 13pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,912&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,821&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11/4/2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12/15/2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12/31/2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.30&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 13pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,911&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,866&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:DividendsDeclaredTableTextBlock>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="ibad6e2952377482580495fbdda46fff0_D20220224-20220224"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZToxYWYwMTk1OGEzMmU0ZjVmYTA5ZTQ3Y2U2ODQ5NjgyMS90YWJsZXJhbmdlOjFhZjAxOTU4YTMyZTRmNWZhMDllNDdjZTY4NDk2ODIxXzEtNi0xLTEtMTAxNzU5_3ee7f747-5924-4bec-ad8d-f8f2cf51e54c"
      unitRef="usdPerShare">0.90</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:DividendsCommonStockCash
      contextRef="ibad6e2952377482580495fbdda46fff0_D20220224-20220224"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZToxYWYwMTk1OGEzMmU0ZjVmYTA5ZTQ3Y2U2ODQ5NjgyMS90YWJsZXJhbmdlOjFhZjAxOTU4YTMyZTRmNWZhMDllNDdjZTY4NDk2ODIxXzEtOC0xLTEtMTAxNzY3_d986c320-fdae-4c00-8fb0-32cb0f2fc16f"
      unitRef="usd">26585000</us-gaap:DividendsCommonStockCash>
    <us-gaap:PaymentsOfDividends
      contextRef="i91f16aadcc6b49d0b234caa9ff3ae064_D20220331-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZToxYWYwMTk1OGEzMmU0ZjVmYTA5ZTQ3Y2U2ODQ5NjgyMS90YWJsZXJhbmdlOjFhZjAxOTU4YTMyZTRmNWZhMDllNDdjZTY4NDk2ODIxXzEtMTAtMS0xLTEwMTc3NQ_07ee6d2c-61f9-4da3-adc0-0a76a445bcc0"
      unitRef="usd">26242000</us-gaap:PaymentsOfDividends>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="i7d1abcbaf16c4b7491e7966bcb70758b_D20220224-20220224"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZToxYWYwMTk1OGEzMmU0ZjVmYTA5ZTQ3Y2U2ODQ5NjgyMS90YWJsZXJhbmdlOjFhZjAxOTU4YTMyZTRmNWZhMDllNDdjZTY4NDk2ODIxXzItNi0xLTEtMTAxNzU5_533968c9-71e2-4240-9798-ae3c49cd52d6"
      unitRef="usdPerShare">0.315</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:DividendsCommonStockCash
      contextRef="i7d1abcbaf16c4b7491e7966bcb70758b_D20220224-20220224"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZToxYWYwMTk1OGEzMmU0ZjVmYTA5ZTQ3Y2U2ODQ5NjgyMS90YWJsZXJhbmdlOjFhZjAxOTU4YTMyZTRmNWZhMDllNDdjZTY4NDk2ODIxXzItOC0xLTEtMTAxNzY3_f982cdc9-1b48-4163-a4d7-47735fb8fb81"
      unitRef="usd">9305000</us-gaap:DividendsCommonStockCash>
    <us-gaap:PaymentsOfDividends
      contextRef="i8c4cbfe2e6e5412389b32c2d875dbef1_D20220331-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZToxYWYwMTk1OGEzMmU0ZjVmYTA5ZTQ3Y2U2ODQ5NjgyMS90YWJsZXJhbmdlOjFhZjAxOTU4YTMyZTRmNWZhMDllNDdjZTY4NDk2ODIxXzItMTAtMS0xLTEwMTc3NQ_49a77ae4-d7ee-433d-90a7-1cdd8998fc35"
      unitRef="usd">9184000</us-gaap:PaymentsOfDividends>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="iaf611f307b9f4c12a8b97cc19c405d84_D20220505-20220505"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZToxYWYwMTk1OGEzMmU0ZjVmYTA5ZTQ3Y2U2ODQ5NjgyMS90YWJsZXJhbmdlOjFhZjAxOTU4YTMyZTRmNWZhMDllNDdjZTY4NDk2ODIxXzMtNi0xLTEtMTAxNzU5_5de776b3-4531-46bc-92aa-210cd12651a2"
      unitRef="usdPerShare">0.315</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:DividendsCommonStockCash
      contextRef="iaf611f307b9f4c12a8b97cc19c405d84_D20220505-20220505"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZToxYWYwMTk1OGEzMmU0ZjVmYTA5ZTQ3Y2U2ODQ5NjgyMS90YWJsZXJhbmdlOjFhZjAxOTU4YTMyZTRmNWZhMDllNDdjZTY4NDk2ODIxXzMtOC0xLTEtMTAxNzY3_d93014d2-bba0-42bf-aa70-70285224a57e"
      unitRef="usd">9054000</us-gaap:DividendsCommonStockCash>
    <us-gaap:PaymentsOfDividends
      contextRef="i3f9b1494308e4b9c86f4c790c4f4979e_D20220630-20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZToxYWYwMTk1OGEzMmU0ZjVmYTA5ZTQ3Y2U2ODQ5NjgyMS90YWJsZXJhbmdlOjFhZjAxOTU4YTMyZTRmNWZhMDllNDdjZTY4NDk2ODIxXzMtMTAtMS0xLTEwMTc3NQ_325e8bc4-1571-4194-ae5d-9b30b1a6719a"
      unitRef="usd">8982000</us-gaap:PaymentsOfDividends>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="i807ff5d59f0d4cfeaaf38ac7f266c7f2_D20220804-20220804"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZToxYWYwMTk1OGEzMmU0ZjVmYTA5ZTQ3Y2U2ODQ5NjgyMS90YWJsZXJhbmdlOjFhZjAxOTU4YTMyZTRmNWZhMDllNDdjZTY4NDk2ODIxXzQtNi0xLTEtMTAxNzU5_e025dd5e-9d0c-485b-a760-3d5a86d8ce3c"
      unitRef="usdPerShare">0.315</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:DividendsCommonStockCash
      contextRef="i807ff5d59f0d4cfeaaf38ac7f266c7f2_D20220804-20220804"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZToxYWYwMTk1OGEzMmU0ZjVmYTA5ZTQ3Y2U2ODQ5NjgyMS90YWJsZXJhbmdlOjFhZjAxOTU4YTMyZTRmNWZhMDllNDdjZTY4NDk2ODIxXzQtOC0xLTEtMTAxNzY3_40fdc79c-7dd8-4fa7-8b0d-ceaf50ea82e2"
      unitRef="usd">9018000</us-gaap:DividendsCommonStockCash>
    <us-gaap:PaymentsOfDividends
      contextRef="i646b446c5cb0405f89d818e82b8c2c31_D20220930-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZToxYWYwMTk1OGEzMmU0ZjVmYTA5ZTQ3Y2U2ODQ5NjgyMS90YWJsZXJhbmdlOjFhZjAxOTU4YTMyZTRmNWZhMDllNDdjZTY4NDk2ODIxXzQtMTAtMS0xLTEwMTc3NQ_01a174fb-7361-4153-9363-ca106fc613fe"
      unitRef="usd">8945000</us-gaap:PaymentsOfDividends>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="i4d70c0967219428891e9b6845905a960_D20221103-20221103"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZToxYWYwMTk1OGEzMmU0ZjVmYTA5ZTQ3Y2U2ODQ5NjgyMS90YWJsZXJhbmdlOjFhZjAxOTU4YTMyZTRmNWZhMDllNDdjZTY4NDk2ODIxXzUtNi0xLTEtMTA5MzUy_da4d9a3f-3cb7-49d7-bc8f-74047d0c8171"
      unitRef="usdPerShare">0.315</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:DividendsCommonStockCash
      contextRef="i4d70c0967219428891e9b6845905a960_D20221103-20221103"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZToxYWYwMTk1OGEzMmU0ZjVmYTA5ZTQ3Y2U2ODQ5NjgyMS90YWJsZXJhbmdlOjFhZjAxOTU4YTMyZTRmNWZhMDllNDdjZTY4NDk2ODIxXzUtOC0xLTEtMTA5MzYy_2e20c5c9-3c21-45dc-8e40-6d90b6f5884a"
      unitRef="usd">8917000</us-gaap:DividendsCommonStockCash>
    <us-gaap:PaymentsOfDividends
      contextRef="i045defb974cc4bd585a4fe22efdd9936_D20221231-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZToxYWYwMTk1OGEzMmU0ZjVmYTA5ZTQ3Y2U2ODQ5NjgyMS90YWJsZXJhbmdlOjFhZjAxOTU4YTMyZTRmNWZhMDllNDdjZTY4NDk2ODIxXzUtMTAtMS0xLTEwOTM3MQ_0136d44d-d3f4-4a13-839b-316a3cb5b3c9"
      unitRef="usd">8845000</us-gaap:PaymentsOfDividends>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="id5dd847f8b58461a84949fa4421e07fb_D20210223-20210223"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTpiYzJiMmQ5NWU0ZmM0Y2RiODdkY2MxOTUwYzAwNmE5NC90YWJsZXJhbmdlOmJjMmIyZDk1ZTRmYzRjZGI4N2RjYzE5NTBjMDA2YTk0XzEtNi0xLTEtMTAwMDAy_92b3f87b-f339-4147-a28a-6144d604ddf4"
      unitRef="usdPerShare">0.30</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:DividendsCommonStockCash
      contextRef="id5dd847f8b58461a84949fa4421e07fb_D20210223-20210223"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTpiYzJiMmQ5NWU0ZmM0Y2RiODdkY2MxOTUwYzAwNmE5NC90YWJsZXJhbmdlOmJjMmIyZDk1ZTRmYzRjZGI4N2RjYzE5NTBjMDA2YTk0XzEtOC0xLTEtMTAwMDAy_9df59302-7331-4547-b357-b2ff53deedfe"
      unitRef="usd">8907000</us-gaap:DividendsCommonStockCash>
    <us-gaap:PaymentsOfDividends
      contextRef="i5b9da0853c824ac59047f949e36385ca_D20210331-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTpiYzJiMmQ5NWU0ZmM0Y2RiODdkY2MxOTUwYzAwNmE5NC90YWJsZXJhbmdlOmJjMmIyZDk1ZTRmYzRjZGI4N2RjYzE5NTBjMDA2YTk0XzEtMTAtMS0xLTEwMDAwMg_34d74150-883d-480f-957c-823254eccc60"
      unitRef="usd">8786000</us-gaap:PaymentsOfDividends>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="i991fdb41c8934ebfac0241c7e461a7f8_D20210505-20210505"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTpiYzJiMmQ5NWU0ZmM0Y2RiODdkY2MxOTUwYzAwNmE5NC90YWJsZXJhbmdlOmJjMmIyZDk1ZTRmYzRjZGI4N2RjYzE5NTBjMDA2YTk0XzItNi0xLTEtMTAwMDAy_48a84d8d-809b-46f8-aff3-4cc3cbd211de"
      unitRef="usdPerShare">0.30</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:DividendsCommonStockCash
      contextRef="i991fdb41c8934ebfac0241c7e461a7f8_D20210505-20210505"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTpiYzJiMmQ5NWU0ZmM0Y2RiODdkY2MxOTUwYzAwNmE5NC90YWJsZXJhbmdlOmJjMmIyZDk1ZTRmYzRjZGI4N2RjYzE5NTBjMDA2YTk0XzItOC0xLTEtMTAwMDAy_dd0e87c9-af97-4b1d-b65b-9bdd1080ec06"
      unitRef="usd">8910000</us-gaap:DividendsCommonStockCash>
    <us-gaap:PaymentsOfDividends
      contextRef="i29115886eaa9444a96a996b8cd9e65c0_D20210630-20210630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTpiYzJiMmQ5NWU0ZmM0Y2RiODdkY2MxOTUwYzAwNmE5NC90YWJsZXJhbmdlOmJjMmIyZDk1ZTRmYzRjZGI4N2RjYzE5NTBjMDA2YTk0XzItMTAtMS0xLTEwMDAwMg_bb4dc857-8b61-4763-b87c-965b41d4c2fb"
      unitRef="usd">8821000</us-gaap:PaymentsOfDividends>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="ifff31870d771421ea1aa10e55657fe72_D20210805-20210805"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTpiYzJiMmQ5NWU0ZmM0Y2RiODdkY2MxOTUwYzAwNmE5NC90YWJsZXJhbmdlOmJjMmIyZDk1ZTRmYzRjZGI4N2RjYzE5NTBjMDA2YTk0XzMtNi0xLTEtMTAwMDAy_94fcb5dc-a380-442e-a6d1-c2b1695fbaee"
      unitRef="usdPerShare">0.30</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:DividendsCommonStockCash
      contextRef="ifff31870d771421ea1aa10e55657fe72_D20210805-20210805"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTpiYzJiMmQ5NWU0ZmM0Y2RiODdkY2MxOTUwYzAwNmE5NC90YWJsZXJhbmdlOmJjMmIyZDk1ZTRmYzRjZGI4N2RjYzE5NTBjMDA2YTk0XzMtOC0xLTEtMTAwMDAy_8a7f3ba4-16c2-4ed8-89c0-fe1fd634f4f7"
      unitRef="usd">8912000</us-gaap:DividendsCommonStockCash>
    <us-gaap:PaymentsOfDividends
      contextRef="i56fc48d2ef2843d6a309770db2666814_D20210930-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTpiYzJiMmQ5NWU0ZmM0Y2RiODdkY2MxOTUwYzAwNmE5NC90YWJsZXJhbmdlOmJjMmIyZDk1ZTRmYzRjZGI4N2RjYzE5NTBjMDA2YTk0XzMtMTAtMS0xLTEwMDAwMg_6e4d9cdd-61b7-4b57-8dad-59999acfa23a"
      unitRef="usd">8821000</us-gaap:PaymentsOfDividends>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="i1dc79196e8854f7ab0466692c93a3e7c_D20211104-20211104"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTpiYzJiMmQ5NWU0ZmM0Y2RiODdkY2MxOTUwYzAwNmE5NC90YWJsZXJhbmdlOmJjMmIyZDk1ZTRmYzRjZGI4N2RjYzE5NTBjMDA2YTk0XzQtNi0xLTEtMTAwMDAy_80ddc776-714d-4c18-bcbf-40bdb7b813a9"
      unitRef="usdPerShare">0.30</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:DividendsCommonStockCash
      contextRef="i1dc79196e8854f7ab0466692c93a3e7c_D20211104-20211104"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTpiYzJiMmQ5NWU0ZmM0Y2RiODdkY2MxOTUwYzAwNmE5NC90YWJsZXJhbmdlOmJjMmIyZDk1ZTRmYzRjZGI4N2RjYzE5NTBjMDA2YTk0XzQtOC0xLTEtMTAwMDAy_1c484060-83e0-4015-8043-2f868edd649f"
      unitRef="usd">8911000</us-gaap:DividendsCommonStockCash>
    <us-gaap:PaymentsOfDividends
      contextRef="i21088968d2e44ef7b27c7fb852ac6ae3_D20211231-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90YWJsZTpiYzJiMmQ5NWU0ZmM0Y2RiODdkY2MxOTUwYzAwNmE5NC90YWJsZXJhbmdlOmJjMmIyZDk1ZTRmYzRjZGI4N2RjYzE5NTBjMDA2YTk0XzQtMTAtMS0xLTEwMDAwMg_8a182140-82e7-47b9-80b9-9826fa1e55f2"
      unitRef="usd">8866000</us-gaap:PaymentsOfDividends>
    <us-gaap:PaymentsOfDividends
      contextRef="i33d015c2b9c5400cb809209f62f9398e_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMTgvZnJhZzowMGU4ODJlNGYyODY0ZmI3YjQ5Mzg0YWYxZTMwOWIyZS90ZXh0cmVnaW9uOjAwZTg4MmU0ZjI4NjRmYjdiNDkzODRhZjFlMzA5YjJlXzkzNDU4NDg4NDUyMzU_c676054d-ef42-4d6c-bcef-219721e6cde0"
      unitRef="usd">500000</us-gaap:PaymentsOfDividends>
    <us-gaap:CompensationAndEmployeeBenefitPlansTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzkyNDQ_8b368c99-0ffa-43b1-a21a-e02bee889af1">EMPLOYEE BENEFITS&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Healthcare&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We participate in multiple healthcare plans, the largest of which is partially self-funded with an insurance company paying benefits in excess of stop loss limits per individual/family. Our healthcare benefit expense (net of employee contributions) was approximately $30.3 million, $28.4 million and $24.1 million for the years ended December&#160;31, 2022, 2021 and 2020, respectively, for all plans. An accrual for estimated healthcare claims incurred but not reported (&#x201c;IBNR&#x201d;) is included within accrued compensation on the Consolidated Balance Sheets and was $3.8 million and $3.3 million as of December&#160;31, 2022 and 2021, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Workers&#x2019; Compensation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We participate in multiple workers&#x2019; compensation plans. Under these plans, for a significant portion of our business, we use a high deductible program to cover losses above the deductible amount on a per claim basis. We accrue for the estimated losses occurring from both asserted and unasserted claims. Workers&#x2019; compensation liability for premiums is included in other current liabilities on the Consolidated Balance Sheets. Insurance claims and reserves include accruals of estimated settlements for known claims, as well as accruals of actuarial estimates of IBNR claims. In estimating these reserves, historical loss experience and judgments about the expected levels of costs per claim are considered. These claims are accounted for based on actuarial estimates of the undiscounted claims, including IBNR. We believe the use of actuarial methods to account for these liabilities provides a consistent and effective way to measure these highly judgmental accruals.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Workers&#x2019; compensation expense totaled $19.1 million, $17.6 million and $15.7 million for the years ended December&#160;31, 2022, 2021 and 2020, respectively, and is included in cost of sales on the Consolidated Statements of Operations and Comprehensive Income. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Workers&#x2019; compensation known claims and IBNR reserves included on the Consolidated Balance Sheets were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:66.812%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:54.261%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.781%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.675%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.783%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 5.5pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Included in other current liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,946&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,048&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Included in other long-term liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,730&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,397&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,676&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,445&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="padding-left:490.5pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We also had an insurance receivable for claims that exceeded the stop loss limit for fully insured policies included on the Consolidated Balance Sheets. This receivable offsets an equal liability included within the reserve amounts noted above and was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:67.105%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:54.455%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.686%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.671%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.688%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Included in other non-current assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,318&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,137&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Retirement Plans&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We participate in multiple 401(k) plans, whereby we provide a matching contribution of wages deferred by employees and can also make discretionary contributions to each plan. Certain plans allow for discretionary employer contributions only. These plans cover substantially all our eligible employees. During the years ended December&#160;31, 2022, 2021 and 2020, we recognized 401(k) plan expenses of $2.9 million, $2.5 million and $2.2 million, respectively, which is included in administrative expenses on the accompanying Consolidated Statements of Operations and Comprehensive Income.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Multiemployer Pension Plans&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:7pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We participate in various multiemployer pension plans under collective bargaining agreements in Washington, Oregon, California and Illinois with other companies in the construction industry. These plans cover our union-represented employees and contributions to these plans are expensed as incurred. These plans generally provide for retirement, death and/or termination benefits for eligible employees within the applicable collective bargaining units, based on specific eligibility/participation requirements, vesting periods and benefit formulas. We do not participate in any multiemployer pension plans that are considered to be individually significant.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The risks of participating in these multiemployer pension plans are different from single-employer pension plans. For example:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:7pt;padding-left:36pt;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Assets contributed to the multiemployer plan by one employer may be used to provide benefits to employees of other participating employers.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:7pt;padding-left:36pt;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;If a participating employer stops contributing to the multiemployer plan, the unfunded obligations of the plan may be borne by the remaining participating employers.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:7pt;padding-left:36pt;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;If a participating employer chooses to stop participating in these multiemployer plans, the employer may be required to pay those plans a withdrawal liability based upon the underfunded status of the plan.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We also participate in various multiemployer health and welfare plans that cover both active and retired participants. Health care benefits are provided to participants who meet certain eligibility requirements under the applicable collective bargaining unit.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our contributions to multiemployer pension and health and welfare benefit plans were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:7pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:70.760%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:35.057%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.561%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.833%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.561%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.626%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.562%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Pension plans&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,916&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,783&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,128&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Health &amp;amp; welfare plans&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,115&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,893&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;952&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total contributions&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,031&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,676&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,080&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The increase in contributions for the year ended December&#160;31, 2021 was driven by the acquisition of Alert Insulation in 2021 and a full year of operations for 2020 acquisitions Insulation Contractors/Magellan Insulation and Norkote, Inc. We did not acquire any businesses with union employees in the year-ended December&#160;31, 2022. See Note 18, Business Combinations for more information. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Share-Based Compensation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Common Stock Awards&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We periodically grant shares of our common stock under our 2014 Omnibus Incentive Plan to non-employee members of our board of directors and our employees. During the years ended December&#160;31, 2022, 2021 and 2020, we granted approximately six thousand, four thousand and six thousand shares of restricted stock, respectively, to non-employee members of our board of directors. Substantially all of the stock will vest over a one-year service period. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In addition, we granted approximately 0.1 million, 0.1 million and 0.2 million shares of our common stock to employees in each of the years ended December&#160;31, 2022, 2021 and 2020, respectively. Substantially all of the stock will vest in three equal installments (rounded to the nearest whole share) annually over a three-year service period. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Employees - Performance-Based Stock Awards&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We periodically grant nonvested stock awards subject to performance-based vesting conditions to certain officers. During the year ended December&#160;31, 2022, we issued approximately 41&#160;thousand shares of our common stock which vest in two equal installments on each of April 20, 2023 and April 20, 2024. In addition, during the year ended December&#160;31, 2022, we established, and our board of directors approved, performance-based targets in connection with common stock awards to be issued to certain officers in 2023 contingent upon achievement of these targets. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In addition, there are long-term performance-based restricted stock awards to be issued to certain employees annually through 2024 contingent upon achievement of certain performance targets. These awards are accounted for as liability-based awards since they represent a predominantly-fixed monetary amount that will be settled with a variable number of common shares in the first quarter of 2025 and as such are included in other long-term liabilities on the Consolidated Balance Sheets. During the years ended December&#160;31, 2022, 2021 and 2020 we granted approximately 39&#160;thousand, five&#160;thousand and seven&#160;thousand shares of our common stock, respectively, all of which vested in 2022.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Employees - Performance-Based Restricted Stock Units&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During 2021, we established, and our board of directors approved, performance-based restricted stock units in connection with common stock awards which were issued to certain employees in 2022 based upon achievement of a performance target. In addition, during the year ended December&#160;31, 2022, we established, and our board of directors approved, performance-based restricted stock units in connection with common stock awards to be issued to certain employees in 2023 based upon achievement of a performance target. These units will be accounted for as equity-based awards that will be settled with a fixed number of common shares. During the years ended December&#160;31, 2022, 2021 and 2020 we granted approximately 17&#160;thousand, eight&#160;thousand and 14&#160;thousand units, respectively, each of which will vest over a one-year service period.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Share-Based Compensation Summary&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Amounts and changes for each category of equity-based award were as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;padding-right:13.5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:37.350%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.695%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.695%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.695%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.695%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.695%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.555%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 4.37pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Common Stock Awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 3.25pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Performance-Based Stock Awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 4.37pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Performance-Based Restricted Stock Units&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 4.37pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted Average Grant Date Fair Value Per Share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 3.25pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted Average Grant Date Fair Value Per Share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 4.37pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted Average Grant Date Fair Value Per Share&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Nonvested awards/units at December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;199,353&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;68.99&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;143,401&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;81.30&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,252&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;126.89&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;109,189&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;89.32&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;54,585&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;102.98&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,618&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;80.55&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Vested&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(149,504)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;74.96&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(71,933)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;59.07&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(8,061)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;126.89&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Forfeited/Cancelled&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,921)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;79.60&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,098)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;88.61&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Nonvested awards/units at December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;157,117&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;77.31&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;126,053&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;103.37&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,711&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;80.55&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the share-based compensation expense recognized under our 2014 Omnibus Incentive Plan (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:84.064%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:45.334%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.291%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.291%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.294%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Common Stock Awards&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,247&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,285&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,116&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-Employee Common Stock Awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;547&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;465&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;333&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Performance-Based Stock Awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,337&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,528&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,869&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Liability Performance-Based Stock Awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;493&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,612&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,969&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Performance-Based Restricted Stock Units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,192&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;862&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;539&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,816&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,752&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,826&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We recorded the following stock compensation expense, by income statement category (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:84.064%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:45.334%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.291%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.291%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.294%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cost of sales&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;648&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;448&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;284&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Selling&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;478&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;204&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;202&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,690&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,340&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,816&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,752&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,826&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Administrative stock compensation expense includes all stock compensation earned by our administrative personnel, while cost of sales and selling stock compensation represents all stock compensation earned by our installation and sales employees, respectively. We recognized windfall tax benefits of $0.3 million and $1.7 million for the years ended December&#160;31, 2022 and 2021, and we recognized a tax shortfall of $0.3 million for the year ended December&#160;31, 2020, respectively, within the income tax provision in the Consolidated Statements of Operations and Comprehensive Income.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Unrecognized share-based compensation expense related to unvested awards was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:55.332%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.391%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.393%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unrecognized&lt;br/&gt;Compensation Expense&lt;br/&gt;on Unvested Awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted Average&lt;br/&gt;Remaining&lt;br/&gt;Vesting Period&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Common Stock Awards&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,259&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.7&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Performance-Based Stock Awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,825&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.6&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Performance-Based Restricted Stock Units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;348&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.3&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total unrecognized compensation expense related to unvested awards&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,432&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Total unrecognized compensation expense is subject to future adjustments for forfeitures. This expense is expected to be recognized over the remaining weighted-average period shown above on a straight-line basis except for the Performance-Based Stock Awards which uses the graded-vesting method. Shares forfeited are returned as treasury shares and available for future issuances.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the years ended December&#160;31, 2022, 2021 and 2020, our employees surrendered approximately 53&#160;thousand, 44 thousand and 25 thousand shares of our common stock under all plans, respectively, to satisfy tax withholding obligations arising in connection with the vesting of common stock awards issued under our 2014 Omnibus Incentive Plan.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of December&#160;31, 2022, approximately 1.7 million of the 3.0 million shares of common stock authorized for issuance were available for issuance under the 2014 Omnibus Incentive Plan.&lt;/span&gt;&lt;/div&gt;</us-gaap:CompensationAndEmployeeBenefitPlansTextBlock>
    <ibp:HealthInsuranceExpense
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzMxMQ_1e4c6b9f-abbe-4683-babd-65bc25c0295b"
      unitRef="usd">30300000</ibp:HealthInsuranceExpense>
    <ibp:HealthInsuranceExpense
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzMxNQ_66a1605a-e0c0-450a-bda3-1fc31dda974b"
      unitRef="usd">28400000</ibp:HealthInsuranceExpense>
    <ibp:HealthInsuranceExpense
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzMyMg_bc0fe39d-bfb4-49ce-9b5d-c158487501f4"
      unitRef="usd">24100000</ibp:HealthInsuranceExpense>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="i37aa17ee923446b1bfe336a10f721ba8_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzU1MA_ac3827ed-b626-40e3-b2e9-36dcbf436e19"
      unitRef="usd">3800000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="i8668cb4ddb8b4ece9852cd75fc2a112d_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzU1Nw_fa67c851-1f75-4973-8316-5958e09e7375"
      unitRef="usd">3300000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <ibp:WorkersCompensationExpense
      contextRef="i7a6eb5745a4144d2ab6e5aac808bcfc0_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzE2MjA_8a6af521-f4be-4a98-928b-cdb05e97076a"
      unitRef="usd">19100000</ibp:WorkersCompensationExpense>
    <ibp:WorkersCompensationExpense
      contextRef="i0a4200e47afe46c5b7d789f3f7974feb_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzE2MjQ_90dedc17-72b7-4ca3-973b-d857432840df"
      unitRef="usd">17600000</ibp:WorkersCompensationExpense>
    <ibp:WorkersCompensationExpense
      contextRef="i0c7f2b33da3b468daa7598e99d5f9d12_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzE2MzE_066eb82a-1674-4234-bbed-d1b8596e2168"
      unitRef="usd">15700000</ibp:WorkersCompensationExpense>
    <ibp:ScheduleOfEmployeeRelatedLiabilitiesTableTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzkyNDU_09b3a436-1d37-44d5-b74f-96d0d688b1c4">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Workers&#x2019; compensation known claims and IBNR reserves included on the Consolidated Balance Sheets were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:66.812%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:54.261%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.781%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.675%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.783%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 5.5pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Included in other current liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,946&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,048&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Included in other long-term liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,730&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,397&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,676&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,445&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</ibp:ScheduleOfEmployeeRelatedLiabilitiesTableTextBlock>
    <us-gaap:WorkersCompensationLiabilityCurrent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo0YjVhYjVlYTRlNjY0OTE0ODAwZTI0YTk2ZDczNDM0ZC90YWJsZXJhbmdlOjRiNWFiNWVhNGU2NjQ5MTQ4MDBlMjRhOTZkNzM0MzRkXzItMS0xLTEtMTAwMDAy_abe7a8c4-cae2-43e2-bd30-f073083c7663"
      unitRef="usd">9946000</us-gaap:WorkersCompensationLiabilityCurrent>
    <us-gaap:WorkersCompensationLiabilityCurrent
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo0YjVhYjVlYTRlNjY0OTE0ODAwZTI0YTk2ZDczNDM0ZC90YWJsZXJhbmdlOjRiNWFiNWVhNGU2NjQ5MTQ4MDBlMjRhOTZkNzM0MzRkXzItMy0xLTEtMTAwMDAy_e9f91540-e046-48bd-bf22-60f31a4dee66"
      unitRef="usd">8048000</us-gaap:WorkersCompensationLiabilityCurrent>
    <us-gaap:WorkersCompensationLiabilityNoncurrent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo0YjVhYjVlYTRlNjY0OTE0ODAwZTI0YTk2ZDczNDM0ZC90YWJsZXJhbmdlOjRiNWFiNWVhNGU2NjQ5MTQ4MDBlMjRhOTZkNzM0MzRkXzMtMS0xLTEtMTAwMDAy_85c00086-b3ef-4945-b71a-84176e5a4217"
      unitRef="usd">13730000</us-gaap:WorkersCompensationLiabilityNoncurrent>
    <us-gaap:WorkersCompensationLiabilityNoncurrent
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo0YjVhYjVlYTRlNjY0OTE0ODAwZTI0YTk2ZDczNDM0ZC90YWJsZXJhbmdlOjRiNWFiNWVhNGU2NjQ5MTQ4MDBlMjRhOTZkNzM0MzRkXzMtMy0xLTEtMTAwMDAy_33e8d0e0-7c24-4903-a4b1-e1b70efb5db4"
      unitRef="usd">13397000</us-gaap:WorkersCompensationLiabilityNoncurrent>
    <us-gaap:WorkersCompensationLiabilityCurrentAndNoncurrent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo0YjVhYjVlYTRlNjY0OTE0ODAwZTI0YTk2ZDczNDM0ZC90YWJsZXJhbmdlOjRiNWFiNWVhNGU2NjQ5MTQ4MDBlMjRhOTZkNzM0MzRkXzQtMS0xLTEtMTAwMDAy_6a6f3a7c-5d29-4565-8ddd-77571a319bff"
      unitRef="usd">23676000</us-gaap:WorkersCompensationLiabilityCurrentAndNoncurrent>
    <us-gaap:WorkersCompensationLiabilityCurrentAndNoncurrent
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo0YjVhYjVlYTRlNjY0OTE0ODAwZTI0YTk2ZDczNDM0ZC90YWJsZXJhbmdlOjRiNWFiNWVhNGU2NjQ5MTQ4MDBlMjRhOTZkNzM0MzRkXzQtMy0xLTEtMTAwMDAy_5b885c8d-f563-404b-9a24-bf66b4d9fbbf"
      unitRef="usd">21445000</us-gaap:WorkersCompensationLiabilityCurrentAndNoncurrent>
    <ibp:ScheduleOfInsuranceLossReservesForInsuredObligationsTableTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzkyMzg_912249cf-6b20-4449-8056-7d4d0c7a01ac">This receivable offsets an equal liability included within the reserve amounts noted above and was as follows (in thousands):&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:67.105%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:54.455%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.686%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.671%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.688%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Included in other non-current assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,318&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,137&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;</ibp:ScheduleOfInsuranceLossReservesForInsuredObligationsTableTextBlock>
    <us-gaap:InsuranceSettlementsReceivableNoncurrent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTowNTVjZGNmZDJkNzk0YzY1ODk4YWRhNjM0MTlhY2ZlZC90YWJsZXJhbmdlOjA1NWNkY2ZkMmQ3OTRjNjU4OThhZGE2MzQxOWFjZmVkXzItMS0xLTEtMTAwMDAy_0db38d58-7373-4fcc-99fb-474796cb3d55"
      unitRef="usd">2318000</us-gaap:InsuranceSettlementsReceivableNoncurrent>
    <us-gaap:InsuranceSettlementsReceivableNoncurrent
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTowNTVjZGNmZDJkNzk0YzY1ODk4YWRhNjM0MTlhY2ZlZC90YWJsZXJhbmdlOjA1NWNkY2ZkMmQ3OTRjNjU4OThhZGE2MzQxOWFjZmVkXzItMy0xLTEtMTAwMDAy_5bf6bb89-3808-4836-992f-3003d6485575"
      unitRef="usd">2137000</us-gaap:InsuranceSettlementsReceivableNoncurrent>
    <us-gaap:DefinedContributionPlanAdministrativeExpenses
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzI1OTg_4b253745-83aa-4cad-9074-a9feae96bb4f"
      unitRef="usd">2900000</us-gaap:DefinedContributionPlanAdministrativeExpenses>
    <us-gaap:DefinedContributionPlanAdministrativeExpenses
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzI2MDI_fc4d60d8-f1ec-4e1a-beeb-712b1f50a93c"
      unitRef="usd">2500000</us-gaap:DefinedContributionPlanAdministrativeExpenses>
    <us-gaap:DefinedContributionPlanAdministrativeExpenses
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzI2MDk_e0560578-603c-4d11-9f7e-00061c339876"
      unitRef="usd">2200000</us-gaap:DefinedContributionPlanAdministrativeExpenses>
    <us-gaap:ScheduleOfMultiemployerPlansTableTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzkyNDY_afd26ce7-cfc1-44ea-b9e5-e670edbe0f3a">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our contributions to multiemployer pension and health and welfare benefit plans were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:7pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:70.760%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:35.057%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.561%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.833%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.561%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.626%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.562%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Pension plans&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,916&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,783&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,128&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Health &amp;amp; welfare plans&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,115&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,893&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;952&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total contributions&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,031&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,676&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,080&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfMultiemployerPlansTableTextBlock>
    <us-gaap:MultiemployerPlanEmployerContributionCost
      contextRef="i84d46d07e8fc436e811a36c787935fce_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4MzUzZDBhZGFjOGU0MTNjYmE3ZmZhNzZiNmE5YmM0NS90YWJsZXJhbmdlOjgzNTNkMGFkYWM4ZTQxM2NiYTdmZmE3NmI2YTliYzQ1XzItMS0xLTEtMTAwMDAy_e799625d-dffd-462e-ac2f-42508e715ce3"
      unitRef="usd">2916000</us-gaap:MultiemployerPlanEmployerContributionCost>
    <us-gaap:MultiemployerPlanEmployerContributionCost
      contextRef="ib14c282b4f2f48aebb9e830c414e6b39_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4MzUzZDBhZGFjOGU0MTNjYmE3ZmZhNzZiNmE5YmM0NS90YWJsZXJhbmdlOjgzNTNkMGFkYWM4ZTQxM2NiYTdmZmE3NmI2YTliYzQ1XzItMy0xLTEtMTAwMDAy_ce16cb96-fe1e-4a43-8bbf-3304682afe71"
      unitRef="usd">2783000</us-gaap:MultiemployerPlanEmployerContributionCost>
    <us-gaap:MultiemployerPlanEmployerContributionCost
      contextRef="i16ed968772804a798c3c3d83320afabe_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4MzUzZDBhZGFjOGU0MTNjYmE3ZmZhNzZiNmE5YmM0NS90YWJsZXJhbmdlOjgzNTNkMGFkYWM4ZTQxM2NiYTdmZmE3NmI2YTliYzQ1XzItNS0xLTEtMTAwMDAy_1d9e0d72-3c40-44f8-81fb-9067de351ac6"
      unitRef="usd">1128000</us-gaap:MultiemployerPlanEmployerContributionCost>
    <us-gaap:MultiemployerPlanEmployerContributionCost
      contextRef="i34caeff1771e4360b540831f5a821888_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4MzUzZDBhZGFjOGU0MTNjYmE3ZmZhNzZiNmE5YmM0NS90YWJsZXJhbmdlOjgzNTNkMGFkYWM4ZTQxM2NiYTdmZmE3NmI2YTliYzQ1XzMtMS0xLTEtMTAwMDAy_d11c182a-d01d-4402-9eea-551e5cd3a4cb"
      unitRef="usd">3115000</us-gaap:MultiemployerPlanEmployerContributionCost>
    <us-gaap:MultiemployerPlanEmployerContributionCost
      contextRef="iff062208e3f64e0f991049b0d03b5a0e_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4MzUzZDBhZGFjOGU0MTNjYmE3ZmZhNzZiNmE5YmM0NS90YWJsZXJhbmdlOjgzNTNkMGFkYWM4ZTQxM2NiYTdmZmE3NmI2YTliYzQ1XzMtMy0xLTEtMTAwMDAy_e0eee4c9-ee84-4a3c-938d-eb4bf585d60c"
      unitRef="usd">2893000</us-gaap:MultiemployerPlanEmployerContributionCost>
    <us-gaap:MultiemployerPlanEmployerContributionCost
      contextRef="i7b2c037eb25246e2991f1d1397390f87_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4MzUzZDBhZGFjOGU0MTNjYmE3ZmZhNzZiNmE5YmM0NS90YWJsZXJhbmdlOjgzNTNkMGFkYWM4ZTQxM2NiYTdmZmE3NmI2YTliYzQ1XzMtNS0xLTEtMTAwMDAy_a520ce72-a66e-440e-b7bf-6715d1cd637f"
      unitRef="usd">952000</us-gaap:MultiemployerPlanEmployerContributionCost>
    <us-gaap:MultiemployerPlanEmployerContributionCost
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4MzUzZDBhZGFjOGU0MTNjYmE3ZmZhNzZiNmE5YmM0NS90YWJsZXJhbmdlOjgzNTNkMGFkYWM4ZTQxM2NiYTdmZmE3NmI2YTliYzQ1XzQtMS0xLTEtMTAwMDAy_b20d5baa-91a9-44bc-bd7c-0195c7dcfaf6"
      unitRef="usd">6031000</us-gaap:MultiemployerPlanEmployerContributionCost>
    <us-gaap:MultiemployerPlanEmployerContributionCost
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4MzUzZDBhZGFjOGU0MTNjYmE3ZmZhNzZiNmE5YmM0NS90YWJsZXJhbmdlOjgzNTNkMGFkYWM4ZTQxM2NiYTdmZmE3NmI2YTliYzQ1XzQtMy0xLTEtMTAwMDAy_c37c90b8-e24f-488c-b2c8-c056b8e45f00"
      unitRef="usd">5676000</us-gaap:MultiemployerPlanEmployerContributionCost>
    <us-gaap:MultiemployerPlanEmployerContributionCost
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4MzUzZDBhZGFjOGU0MTNjYmE3ZmZhNzZiNmE5YmM0NS90YWJsZXJhbmdlOjgzNTNkMGFkYWM4ZTQxM2NiYTdmZmE3NmI2YTliYzQ1XzQtNS0xLTEtMTAwMDAy_669af354-1d51-4923-9e41-848dcef0cfb3"
      unitRef="usd">2080000</us-gaap:MultiemployerPlanEmployerContributionCost>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="ie7bd015f778946acae59540104706b42_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzUwMDE_49c00979-df7c-4191-892e-a75a704eb17f"
      unitRef="shares">6000000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i757eef749bac4f2293e773f93a167e4f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzUwMDU_5670a1d2-85ae-412a-a02d-287977307d89"
      unitRef="shares">4000000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="ib9ef86a33c5c43bdbac9dadc13b78f6f_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzUwMTI_459e92fb-c2f2-469f-9146-ea9a2b9ef813"
      unitRef="shares">6000000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="ie7bd015f778946acae59540104706b42_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzkyNDc_ba6b57a6-4805-410b-815b-56445803419d">P1Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzUyMTk_27e7a129-b76e-4399-9689-d17f13ac684d"
      unitRef="shares">100000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzUyMjM_986bdf6e-c450-4599-9927-124250daaf0c"
      unitRef="shares">100000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzUyMzA_bf421381-065d-4bd7-a8e6-0c0e77f79fff"
      unitRef="shares">200000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <ibp:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfEqualInstallmentsForVestingOfStockAwards
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzUzNzM_e49355ad-dc39-41fd-883a-6d26f6a7533c"
      unitRef="installment">3</ibp:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfEqualInstallmentsForVestingOfStockAwards>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzkyNDg_bb55204c-db6f-42a1-a717-75485190d8fe">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i964a800227db4746b75656990ba9877b_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzU2Njg_2afd6bc7-ad51-4ecb-939e-0ff18f660d48"
      unitRef="shares">41000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <ibp:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfEqualInstallmentsForVestingOfStockAwards
      contextRef="i964a800227db4746b75656990ba9877b_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzU3MTI_a01a9e92-6b1b-44a3-ab0b-15c8418ea1ea"
      unitRef="installment">2</ibp:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfEqualInstallmentsForVestingOfStockAwards>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="i7fd8869fa57b44ef89607df7096ea515_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzkyMzk_a938ac4a-b214-4fdb-ac7a-53d00cbca2a5">P1Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzkyNDE_54349b4c-da0e-4de7-8170-1755ff418c71">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Amounts and changes for each category of equity-based award were as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;padding-right:13.5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:37.350%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.695%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.695%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.695%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.695%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.695%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.555%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 4.37pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Common Stock Awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 3.25pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Performance-Based Stock Awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 4.37pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Performance-Based Restricted Stock Units&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 4.37pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted Average Grant Date Fair Value Per Share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 3.25pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted Average Grant Date Fair Value Per Share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 4.37pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted Average Grant Date Fair Value Per Share&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Nonvested awards/units at December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;199,353&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;68.99&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;143,401&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;81.30&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,252&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;126.89&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;109,189&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;89.32&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;54,585&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;102.98&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,618&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;80.55&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Vested&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(149,504)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;74.96&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(71,933)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;59.07&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(8,061)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;126.89&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Forfeited/Cancelled&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,921)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;79.60&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,098)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;88.61&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Nonvested awards/units at December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;157,117&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;77.31&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;126,053&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;103.37&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,711&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;80.55&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares
      contextRef="i311beb28dee1454fa46dacf81c0daab9_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzItMS0xLTEtMTAwMDAy_f4f18da3-1236-496a-869c-391494a20955"
      unitRef="shares">199353</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i311beb28dee1454fa46dacf81c0daab9_I20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzItMy0xLTEtMTAwMDAy_f8a87e3b-1cdb-4f89-bc59-2ba67aa7960a"
      unitRef="usdPerShare">68.99</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i1d20a8c5c0044c2b905ac0fd361ed035_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzItNS0xLTEtMTAwMDAy_c346837a-48ad-49da-9e98-baa270274015"
      unitRef="shares">143401</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i1d20a8c5c0044c2b905ac0fd361ed035_I20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzItNy0xLTEtMTAwMDAy_e3d520fa-afc7-4fed-9b9d-3c54fc803df7"
      unitRef="usdPerShare">81.30</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="ib959d9a931e74a09bbfb204ed6489cb4_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzItOS0xLTEtMTAwMDAy_29b600ec-fc50-4c2a-bf5c-4f427b6f9276"
      unitRef="shares">8252</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="ib959d9a931e74a09bbfb204ed6489cb4_I20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzItMTEtMS0xLTEwMDAwMg_1a86adfa-90e9-47e1-98bc-e587aec2bb4a"
      unitRef="usdPerShare">126.89</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="i7b1daf5c317949f8b45bc9e3692eccda_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzMtMS0xLTEtMTAwMDAy_01b47eaa-9c97-45b1-acc6-514e1b152ab2"
      unitRef="shares">109189</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i7b1daf5c317949f8b45bc9e3692eccda_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzMtMy0xLTEtMTAwMDAy_f9f4fc7f-0cd2-4066-9966-c77dec802bb9"
      unitRef="usdPerShare">89.32</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i8336d9bd9d7e4ca8a36e5d674412d2ba_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzMtNS0xLTEtMTAwMDAy_6d8da33a-bee2-45eb-a4e1-998dde56fc7c"
      unitRef="shares">54585</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i8336d9bd9d7e4ca8a36e5d674412d2ba_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzMtNy0xLTEtMTAwMDAy_286705de-a4fc-4efc-8c0b-b7ccd5ef5a48"
      unitRef="usdPerShare">102.98</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="ic417962ed93249ada8257fa6ee36342e_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzMtOS0xLTEtMTAwMDAy_ef4e5924-71e5-4768-9f1f-493a80c222d3"
      unitRef="shares">16618</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="ic417962ed93249ada8257fa6ee36342e_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzMtMTEtMS0xLTEwMDAwMg_3bb34bcc-c4e4-4a74-9fa0-d7485abb6374"
      unitRef="usdPerShare">80.55</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares
      contextRef="i7b1daf5c317949f8b45bc9e3692eccda_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzQtMS0xLTEtMTAwMDAy_afcbddf8-a55f-453e-98bd-571776743ff0"
      unitRef="shares">149504</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue
      contextRef="i7b1daf5c317949f8b45bc9e3692eccda_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzQtMy0xLTEtMTAwMDAy_577341c7-d8c9-43c5-86cd-f25a3b9dee15"
      unitRef="usdPerShare">74.96</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="i8336d9bd9d7e4ca8a36e5d674412d2ba_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzQtNS0xLTEtMTAwMDAy_11cdef24-74a8-47a6-bcde-8dc974ed5ad9"
      unitRef="shares">71933</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="i8336d9bd9d7e4ca8a36e5d674412d2ba_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzQtNy0xLTEtMTAwMDAy_db4a7f2c-b7d6-4c98-a635-ce34c599968d"
      unitRef="usdPerShare">59.07</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="ic417962ed93249ada8257fa6ee36342e_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzQtOS0xLTEtMTAwMDAy_f4026ee7-e9a0-4d15-aab6-d38d58d51b0e"
      unitRef="shares">8061</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="ic417962ed93249ada8257fa6ee36342e_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzQtMTEtMS0xLTEwMDAwMg_186f0b39-88cd-4772-9565-f061d9288901"
      unitRef="usdPerShare">126.89</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares
      contextRef="i7b1daf5c317949f8b45bc9e3692eccda_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzUtMS0xLTEtMTAwMDAy_84c2a03c-ddce-4eed-ac71-4c3f6e24e5e6"
      unitRef="shares">1921</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue
      contextRef="i7b1daf5c317949f8b45bc9e3692eccda_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzUtMy0xLTEtMTAwMDAy_78cbb901-cb49-476a-b298-990999786e20"
      unitRef="usdPerShare">79.60</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="i8336d9bd9d7e4ca8a36e5d674412d2ba_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzUtNS0xLTEtMTAwMDAy_9516db7c-4c79-4681-9cf3-b9d201be09e3"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="i8336d9bd9d7e4ca8a36e5d674412d2ba_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzUtNy0xLTEtMTAwMDAy_73e895f0-82cf-41f5-86c9-34b78416a9ff"
      unitRef="usdPerShare">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="ic417962ed93249ada8257fa6ee36342e_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzUtOS0xLTEtMTAwMDAy_9bdec987-2837-426a-96bb-bf419cf17e5d"
      unitRef="shares">1098</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="ic417962ed93249ada8257fa6ee36342e_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzUtMTEtMS0xLTEwMDAwMg_5ea21016-71c6-40bb-98f5-a9b3bd34887d"
      unitRef="usdPerShare">88.61</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares
      contextRef="ic83e19ff3ed8464b82cff42a06460329_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzYtMS0xLTEtMTAwMDAy_f324e806-457a-461f-bd9f-77b24a4f33fa"
      unitRef="shares">157117</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="ic83e19ff3ed8464b82cff42a06460329_I20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzYtMy0xLTEtMTAwMDAy_9d004fb6-8d8a-43cd-893f-8ee174896736"
      unitRef="usdPerShare">77.31</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i742f1074f99d44938c1adea16c83563d_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzYtNS0xLTEtMTAwMDAy_ca42cc55-e61f-47f4-b0f8-6d42de03b3b1"
      unitRef="shares">126053</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i742f1074f99d44938c1adea16c83563d_I20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzYtNy0xLTEtMTAwMDAy_5f1e8aaa-981e-458d-9e03-57298dc05efa"
      unitRef="usdPerShare">103.37</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i4b661dbcee504056ab5f33633cd24870_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzYtOS0xLTEtMTAwMDAy_cba2de49-b7ee-4975-b70a-cd36e25d2b5c"
      unitRef="shares">15711</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i4b661dbcee504056ab5f33633cd24870_I20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo4OWMxZDI3OTAzMmQ0NTUyYjY0ZmRkYmM2ZTJmNGFkZi90YWJsZXJhbmdlOjg5YzFkMjc5MDMyZDQ1NTJiNjRmZGRiYzZlMmY0YWRmXzYtMTEtMS0xLTEwMDAwMg_4181ad88-6f06-4a7c-90b0-7d3919da6739"
      unitRef="usdPerShare">80.55</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzkyNDA_2a3bf63a-5b04-4a0e-b74e-5ec6749786cd">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the share-based compensation expense recognized under our 2014 Omnibus Incentive Plan (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:84.064%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:45.334%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.291%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.291%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.294%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Common Stock Awards&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,247&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,285&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,116&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-Employee Common Stock Awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;547&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;465&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;333&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Performance-Based Stock Awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,337&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,528&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,869&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Liability Performance-Based Stock Awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;493&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,612&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,969&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Performance-Based Restricted Stock Units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,192&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;862&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;539&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,816&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,752&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,826&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We recorded the following stock compensation expense, by income statement category (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:84.064%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:45.334%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.291%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.291%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.495%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.294%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cost of sales&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;648&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;448&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;284&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Selling&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;478&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;204&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;202&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,690&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,340&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,816&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,752&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,826&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i649b9d4497df46ed9b1a6f3021b6d668_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzItMS0xLTEtMTAwMDAy_1a2567bb-c7f8-4286-90b2-91a438d84140"
      unitRef="usd">6247000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i2ce667884711486896711601e0d7744e_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzItMy0xLTEtMTAwMDAy_225d9a87-956e-48c3-b0da-35eea6dfe510"
      unitRef="usd">5285000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i4304e324a56f4de0b1d80453e03b2437_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzItNS0xLTEtMTAwMDAy_080a12e7-f62d-4358-a607-c1dd719e4ebc"
      unitRef="usd">4116000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i70a43a7f84554c1fada56f420f4a3692_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzMtMS0xLTEtMTAwMDAy_164b0fa3-516a-45b0-842c-ef75ce9bca56"
      unitRef="usd">547000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i5538cc20e3be4bb29b233ad59bf792e4_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzMtMy0xLTEtMTAwMDAy_86041ccb-1be8-45fa-91e6-3e58de42be57"
      unitRef="usd">465000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i5a8f51ff7034417b959f2c0ac1fb3778_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzMtNS0xLTEtMTAwMDAy_823c56c0-8aa5-4e3d-bc65-83bc1c121100"
      unitRef="usd">333000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i0684e2d242a048a7b3b272be57da339c_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzQtMS0xLTEtMTAwMDAy_467e3232-76dd-4488-86d7-330b00bdb7a5"
      unitRef="usd">5337000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i1d61284a7ad44ff2b803dfe09bd346aa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzQtMy0xLTEtMTAwMDAy_b4cec9d6-71be-4e3a-9c2a-8d81c5910d4b"
      unitRef="usd">4528000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="iec022876581b4c4a929322821ee287ad_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzQtNS0xLTEtMTAwMDAy_3a89465d-bdba-4d6c-9afd-a918a9e0db56"
      unitRef="usd">3869000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i9a21ad0b0a5347f2a0a96a450c9cb43b_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzUtMS0xLTEtMTAwMDAy_f3346119-c95e-420e-933c-89a1ad9d7f81"
      unitRef="usd">493000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="ida28457a08b6472d93cc3ef911e3aabf_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzUtMy0xLTEtMTAwMDAy_8739316b-52de-4e89-b80e-87cc53ad5d55"
      unitRef="usd">2612000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i949037a6d9844183b5ee9656da9438a8_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzUtNS0xLTEtMTAwMDAy_28ebc5ee-4621-49ac-9c8a-4b6ec3eceb9a"
      unitRef="usd">1969000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i26413bdd4d944498a9cb24385ea2bba5_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzYtMS0xLTEtMTAwMDAy_f1d90946-3cb5-49f4-99b3-9150045b819a"
      unitRef="usd">1192000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i8bffe94a0d174cf0895d36c924b78e11_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzYtMy0xLTEtMTAwMDAy_4b3d0a97-a9b9-4799-9013-cbf810ba2e8b"
      unitRef="usd">862000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i0d80387483384372a7b55be16104656a_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzYtNS0xLTEtMTAwMDAy_b5845227-b80c-480d-8bcb-c50543bed550"
      unitRef="usd">539000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i3f1013f46e884aa88d94776dc7259876_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzctMS0xLTEtMTAwMDAy_2176b1d3-978e-4b6b-bf90-2e3b67cccf06"
      unitRef="usd">13816000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="ib1c3019a8253424588b74711b0099a7d_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzctMy0xLTEtMTAwMDAy_926d8734-409a-40e7-816f-a900a0de9a16"
      unitRef="usd">13752000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i2043d7b952f344cab1ed7372bd7e3966_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo3ZDg5YjRjMjg1MjA0NzY5YjQxMjhjY2I2MzQzMTQ1MC90YWJsZXJhbmdlOjdkODliNGMyODUyMDQ3NjliNDEyOGNjYjYzNDMxNDUwXzctNS0xLTEtMTAwMDAy_2b312f4b-1b22-469b-bf02-eed5b80ebd84"
      unitRef="usd">10826000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i7a6eb5745a4144d2ab6e5aac808bcfc0_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTpjZjg3MzlmYjZlMTQ0NTE1YTdiMGU4YjkwNzY4NTE4Yy90YWJsZXJhbmdlOmNmODczOWZiNmUxNDQ1MTVhN2IwZThiOTA3Njg1MThjXzItMS0xLTEtMTAwMDAy_c8da5b42-9f20-449e-9236-7a32c11ae061"
      unitRef="usd">648000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i0a4200e47afe46c5b7d789f3f7974feb_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTpjZjg3MzlmYjZlMTQ0NTE1YTdiMGU4YjkwNzY4NTE4Yy90YWJsZXJhbmdlOmNmODczOWZiNmUxNDQ1MTVhN2IwZThiOTA3Njg1MThjXzItMy0xLTEtMTAwMDAy_72a7b9aa-8698-4244-965e-dfe1f360caa0"
      unitRef="usd">448000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i0c7f2b33da3b468daa7598e99d5f9d12_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTpjZjg3MzlmYjZlMTQ0NTE1YTdiMGU4YjkwNzY4NTE4Yy90YWJsZXJhbmdlOmNmODczOWZiNmUxNDQ1MTVhN2IwZThiOTA3Njg1MThjXzItNS0xLTEtMTAwMDAy_359ecb23-f325-4ac3-988d-275b759dcf6d"
      unitRef="usd">284000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="ia919de0e1499476e871a395c2d14d460_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTpjZjg3MzlmYjZlMTQ0NTE1YTdiMGU4YjkwNzY4NTE4Yy90YWJsZXJhbmdlOmNmODczOWZiNmUxNDQ1MTVhN2IwZThiOTA3Njg1MThjXzMtMS0xLTEtMTAwMDAy_6baf7cf7-8e07-4e64-8e57-fd4573c19e60"
      unitRef="usd">478000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i5ab90870455340b398aee4bfaaea2615_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTpjZjg3MzlmYjZlMTQ0NTE1YTdiMGU4YjkwNzY4NTE4Yy90YWJsZXJhbmdlOmNmODczOWZiNmUxNDQ1MTVhN2IwZThiOTA3Njg1MThjXzMtMy0xLTEtMTAwMDAy_76135905-7fc8-4905-b18a-945ed0b6a8d8"
      unitRef="usd">204000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i3e0e0ad83f304043a202a9a47bb9391e_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTpjZjg3MzlmYjZlMTQ0NTE1YTdiMGU4YjkwNzY4NTE4Yy90YWJsZXJhbmdlOmNmODczOWZiNmUxNDQ1MTVhN2IwZThiOTA3Njg1MThjXzMtNS0xLTEtMTAwMDAy_7ecaf87b-cef1-4a29-9c5a-acae3d213637"
      unitRef="usd">202000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i27ed6a1bdefe43098a08d48f9a6aa198_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTpjZjg3MzlmYjZlMTQ0NTE1YTdiMGU4YjkwNzY4NTE4Yy90YWJsZXJhbmdlOmNmODczOWZiNmUxNDQ1MTVhN2IwZThiOTA3Njg1MThjXzQtMS0xLTEtMTAwMDAy_6876948b-4d04-4653-961c-a272c6b4a4c6"
      unitRef="usd">12690000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i8e9434eca1eb4912bd5cabf256b1ce98_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTpjZjg3MzlmYjZlMTQ0NTE1YTdiMGU4YjkwNzY4NTE4Yy90YWJsZXJhbmdlOmNmODczOWZiNmUxNDQ1MTVhN2IwZThiOTA3Njg1MThjXzQtMy0xLTEtMTAwMDAy_1627c844-a232-4b1d-9d4a-02cb0603c89a"
      unitRef="usd">13100000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i0696558d634d43589761ef303baf8924_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTpjZjg3MzlmYjZlMTQ0NTE1YTdiMGU4YjkwNzY4NTE4Yy90YWJsZXJhbmdlOmNmODczOWZiNmUxNDQ1MTVhN2IwZThiOTA3Njg1MThjXzQtNS0xLTEtMTAwMDAy_ec968753-b51a-4748-976b-90be11bf54f6"
      unitRef="usd">10340000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTpjZjg3MzlmYjZlMTQ0NTE1YTdiMGU4YjkwNzY4NTE4Yy90YWJsZXJhbmdlOmNmODczOWZiNmUxNDQ1MTVhN2IwZThiOTA3Njg1MThjXzUtMS0xLTEtMTAwMDAy_c3abf56d-24f8-497e-a751-9f2d633a7050"
      unitRef="usd">13816000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTpjZjg3MzlmYjZlMTQ0NTE1YTdiMGU4YjkwNzY4NTE4Yy90YWJsZXJhbmdlOmNmODczOWZiNmUxNDQ1MTVhN2IwZThiOTA3Njg1MThjXzUtMy0xLTEtMTAwMDAy_83fe3da7-ba8e-46c9-95b4-da81533fd6db"
      unitRef="usd">13752000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTpjZjg3MzlmYjZlMTQ0NTE1YTdiMGU4YjkwNzY4NTE4Yy90YWJsZXJhbmdlOmNmODczOWZiNmUxNDQ1MTVhN2IwZThiOTA3Njg1MThjXzUtNS0xLTEtMTAwMDAy_8361c381-4f03-45dc-a92c-fb104f2af88e"
      unitRef="usd">10826000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
      contextRef="i9b1b1e6dc9f04cbebf0af1df1e3336ee_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzgwODM_1773cea9-6b47-4eb8-8d26-41fcd261ff77"
      unitRef="usd">300000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
      contextRef="ie81373567f534c27a073ed483e7064c4_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzEwOTk1MTE2NDk2MzA_2cb48d0b-92e3-4998-9389-edee66103df5"
      unitRef="usd">1700000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
      contextRef="i9f6e77b454314e42a56975bd433a11b0_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzEwOTk1MTE2NDk2MzU_951f5e77-5d2e-4833-8a49-4bd9d8182d9f"
      unitRef="usd">-300000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
    <us-gaap:ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzkyNDM_9c60ff3a-7af5-407c-839f-149e4df3ae1f">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Unrecognized share-based compensation expense related to unvested awards was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:55.332%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.391%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.393%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unrecognized&lt;br/&gt;Compensation Expense&lt;br/&gt;on Unvested Awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted Average&lt;br/&gt;Remaining&lt;br/&gt;Vesting Period&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Common Stock Awards&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,259&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.7&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Performance-Based Stock Awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,825&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.6&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Performance-Based Restricted Stock Units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;348&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.3&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total unrecognized compensation expense related to unvested awards&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,432&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="ic83e19ff3ed8464b82cff42a06460329_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo2YWJkYjk5NmYxNGM0OTRmOTZmMGEzN2Y5ZDY2OTM0YS90YWJsZXJhbmdlOjZhYmRiOTk2ZjE0YzQ5NGY5NmYwYTM3ZjlkNjY5MzRhXzItMS0xLTEtMTAwMDAy_c9fb0801-7cad-4074-9457-48754efd0054"
      unitRef="usd">6259000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="i7b1daf5c317949f8b45bc9e3692eccda_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo2YWJkYjk5NmYxNGM0OTRmOTZmMGEzN2Y5ZDY2OTM0YS90YWJsZXJhbmdlOjZhYmRiOTk2ZjE0YzQ5NGY5NmYwYTM3ZjlkNjY5MzRhXzItMy0xLTEtMTAwMDAy_fd9343e2-0695-4191-86de-bc7e63cf128f">P1Y8M12D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="i742f1074f99d44938c1adea16c83563d_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo2YWJkYjk5NmYxNGM0OTRmOTZmMGEzN2Y5ZDY2OTM0YS90YWJsZXJhbmdlOjZhYmRiOTk2ZjE0YzQ5NGY5NmYwYTM3ZjlkNjY5MzRhXzMtMS0xLTEtMTAwMDAy_a7a3bb98-8a6a-49b3-8382-ac46128534de"
      unitRef="usd">5825000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="i8336d9bd9d7e4ca8a36e5d674412d2ba_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo2YWJkYjk5NmYxNGM0OTRmOTZmMGEzN2Y5ZDY2OTM0YS90YWJsZXJhbmdlOjZhYmRiOTk2ZjE0YzQ5NGY5NmYwYTM3ZjlkNjY5MzRhXzMtMy0xLTEtMTAwMDAy_217ee96b-62fe-419f-896b-291761c072b5">P1Y7M6D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="i10f2addff94d4415b05d34bb939ab3b5_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo2YWJkYjk5NmYxNGM0OTRmOTZmMGEzN2Y5ZDY2OTM0YS90YWJsZXJhbmdlOjZhYmRiOTk2ZjE0YzQ5NGY5NmYwYTM3ZjlkNjY5MzRhXzQtMS0xLTEtMTAwMDAy_d859d2fb-6d68-45eb-863f-b962af796359"
      unitRef="usd">348000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="i7fd8869fa57b44ef89607df7096ea515_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo2YWJkYjk5NmYxNGM0OTRmOTZmMGEzN2Y5ZDY2OTM0YS90YWJsZXJhbmdlOjZhYmRiOTk2ZjE0YzQ5NGY5NmYwYTM3ZjlkNjY5MzRhXzQtMy0xLTEtMTAwMDAy_35f8accb-28cd-4628-a16d-356b89bbd55b">P0Y3M18D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90YWJsZTo2YWJkYjk5NmYxNGM0OTRmOTZmMGEzN2Y5ZDY2OTM0YS90YWJsZXJhbmdlOjZhYmRiOTk2ZjE0YzQ5NGY5NmYwYTM3ZjlkNjY5MzRhXzUtMS0xLTEtMTAwMDAy_9f2f2458-80c7-458a-89b0-0be89bb37093"
      unitRef="usd">12432000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation
      contextRef="i3f1013f46e884aa88d94776dc7259876_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzg4NzA_59436979-b964-4e4f-be62-d6447f944686"
      unitRef="shares">53000</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
    <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation
      contextRef="ib1c3019a8253424588b74711b0099a7d_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzg4NzQ_de29ce56-3a6d-491c-b3e6-87335316559f"
      unitRef="shares">44000</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
    <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation
      contextRef="i2043d7b952f344cab1ed7372bd7e3966_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzg4ODE_0d660760-db41-4be6-8702-a74b23dc716b"
      unitRef="shares">25000</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="i7b47a8b9fe314f3ea1319317721195b0_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzkxMTM_65f1cb03-e3ce-4055-95dc-7be9b00ea684"
      unitRef="shares">1700000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="i7b47a8b9fe314f3ea1319317721195b0_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjEvZnJhZzo0NTI5M2RiYmMyNmE0OGM1ODY1OTI5NjUxZDA2NzQyMi90ZXh0cmVnaW9uOjQ1MjkzZGJiYzI2YTQ4YzU4NjU5Mjk2NTFkMDY3NDIyXzkxMjM_5e9392c9-fb02-4358-93f0-bd273f78de9e"
      unitRef="shares">3000000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:IncomeTaxDisclosureTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90ZXh0cmVnaW9uOjcyMDc4NzhlODZlOTQwM2I4NDVhNWUzMWMzY2NjY2FjXzI1NDU_49a9e4d8-997b-4b73-8694-a0b0eb031a60">INCOME TAXES&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The provision for income taxes is comprised of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:67.543%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:31.800%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.545%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.882%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.545%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.882%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.546%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Federal&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;55,488&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,011&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,495&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;State&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,312&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,139&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,918&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;72,800&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;37,150&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;42,413&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Federal&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,584&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(437)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(7,177)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;State&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,495&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,298)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,079&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(438)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(8,475)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total tax expense&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;79,879&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;36,712&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,938&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The reconciliation between our effective tax rate on net income and the federal statutory rate is as follows (dollars in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:43.344%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.695%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.648%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.695%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.648%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.695%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.655%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="33" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Income tax at federal statutory rate&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;63,694&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,650&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,547&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Stock compensation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;300&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,567)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1.0)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;331&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other permanent items&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,282&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.4&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,274&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.8&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;424&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Change in valuation allowance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(184)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(0.1)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(922)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(0.6)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(207)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(0.2)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Change in uncertain tax positions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(459)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(0.1)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,867)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1.8)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;65&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;State income taxes, net of federal benefit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,246&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,144&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5.2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,778&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.4&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total tax expense&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;79,879&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26.3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;36,712&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23.6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,938&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25.9&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Components of the net deferred tax asset or liability are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:89.181%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:65.457%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.293%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.455%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.295%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred Tax Assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accrued liabilities and allowances&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,009&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,200&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Allowance for doubtful accounts&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,251&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;979&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Inventories&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,210&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;900&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;538&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;333&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Intangibles&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,673&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,042&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net operating loss carryforwards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;719&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,049&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 55pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term deferred tax assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24,415&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,517&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: Valuation allowance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(44)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(216)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 55pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net deferred tax assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24,371&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,301&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred Tax Liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accrued liabilities and allowances&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(640)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(669)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(8,489)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(7,629)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Intangibles&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(10,659)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,783)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Investment in partnership&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(31,154)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(8,271)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,067)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(793)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 55pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term deferred tax liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(52,009)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(24,145)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net deferred tax liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(27,638)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,844)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;The above amounts are included in our Consolidated Balance Sheets as follows:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other non-current assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;820&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;975&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term deferred income tax liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(28,458)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,819)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net deferred tax liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(27,638)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,844)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of December&#160;31, 2022, we had a deferred tax asset balance of $0.7 million reflecting the benefit of $3.4 million in federal and state income tax net operating loss (NOL) carryforwards, the earliest of which expires in 2030.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Valuation Allowance&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We assess the available positive and negative evidence to estimate if sufficient future taxable income will be generated to utilize the existing deferred tax assets on a jurisdiction and by tax filing entity basis. A significant piece of objective negative evidence evaluated is cumulative losses incurred over the most recent three-year period. Such objective evidence limits our ability to consider other subjective positive evidence such as our projections for future growth.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Based on this evaluation, a valuation allowance has been recorded as of December&#160;31, 2022 and 2021 for the net deferred tax assets recorded on certain of our wholly owned subsidiaries. Such deferred tax assets relate primarily to net operating losses that are not more likely than not realizable. However, the amount of the deferred tax asset considered realizable could be adjusted if our estimate of future taxable income during the carryforward period changes, or if objective negative evidence in the form of cumulative losses is no longer present. Additional weight may be given to subjective evidence such as our projections for growth in this situation.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Uncertain Tax Positions&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We are subject to taxation in the United States and various state jurisdictions. As of December&#160;31, 2022, our tax years for 2018 through 2020 are subject to examination by the tax authorities. A rollforward of the gross unrecognized tax benefits is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:79.970%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:80.618%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.182%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unrecognized tax benefit, December 31, 2019&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,717&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Increase as a result of tax positions taken during the period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,822&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Decrease as a result of tax positions taken during the period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,873)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Increase as a result of expiring statutes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unrecognized tax benefit, December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,676&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Increase as a result of tax positions taken during the period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,482&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Decrease as a result of tax positions taken during the period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,999)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Decrease as a result of expiring statutes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,857)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unrecognized tax benefit, December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,302&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Increase as a result of tax positions taken during the period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,448&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Decrease as a result of tax positions taken during the period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,863)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Increase as a result of expiring statutes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unrecognized tax benefit, December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,890&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="padding-left:490.5pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:490.5pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Unrecognized tax benefits of $0.5 million at December&#160;31, 2022 would affect the effective tax rate. Interest expense and penalties accrued related to uncertain tax positions as of December&#160;31, 2022 are $0.5 million.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We expect a decrease to the amount of unrecognized tax benefits (exclusive of penalties and interest) within the next twelve months of zero to $2.8 million.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Determining uncertain tax positions and the related estimated amounts requires judgment and carry estimation risk. If future tax law changes or interpretations should come to light, or additional information should become known, our conclusions regarding unrecognized tax benefits may change.&lt;/span&gt;&lt;/div&gt;</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90ZXh0cmVnaW9uOjcyMDc4NzhlODZlOTQwM2I4NDVhNWUzMWMzY2NjY2FjXzI1NDY_9c1f25ca-5eb4-4ee2-af2a-0027aecae160">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The provision for income taxes is comprised of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:67.543%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:31.800%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.545%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.882%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.545%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.882%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.546%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Federal&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;55,488&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,011&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,495&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;State&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,312&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,139&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,918&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;72,800&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;37,150&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;42,413&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Federal&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,584&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(437)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(7,177)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;State&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,495&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,298)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,079&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(438)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(8,475)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total tax expense&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;79,879&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;36,712&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,938&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzMtMS0xLTEtMTAwMDAy_08ffaaea-594d-473d-b93a-c42d4796f3ef"
      unitRef="usd">55488000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzMtMy0xLTEtMTAwMDAy_84124f43-9afc-40f3-9985-129bead54fca"
      unitRef="usd">27011000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzMtNS0xLTEtMTAwMDAy_763de325-759b-4209-9454-9623f81082ae"
      unitRef="usd">33495000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzQtMS0xLTEtMTAwMDAy_8a759a95-bd3b-49b7-9007-03f4cb0acec6"
      unitRef="usd">17312000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzQtMy0xLTEtMTAwMDAy_89665667-d9b7-489d-b74c-e83a9d2c63f6"
      unitRef="usd">10139000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzQtNS0xLTEtMTAwMDAy_28ebec74-9619-4b72-9b28-f9b8a1c33bfc"
      unitRef="usd">8918000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzUtMS0xLTEtMTAwMDAy_16e14c50-57fc-4fdb-809b-7cf5f8eee754"
      unitRef="usd">72800000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzUtMy0xLTEtMTAwMDAy_df886d7f-c870-4768-a62a-50be9066d790"
      unitRef="usd">37150000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzUtNS0xLTEtMTAwMDAy_809cfa9a-26d2-4bac-be0f-b41e32585e72"
      unitRef="usd">42413000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzctMS0xLTEtMTAwMDAy_fce1fbb2-c77f-4242-a26e-c4a378e249d3"
      unitRef="usd">5584000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzctMy0xLTEtMTAwMDAy_6a8335e3-efb7-4b9e-b637-d604ff9df781"
      unitRef="usd">-437000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzctNS0xLTEtMTAwMDAy_624f602f-09c0-4d81-b574-6a1ff9f065b2"
      unitRef="usd">-7177000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzgtMS0xLTEtMTAwMDAy_1ed50365-adba-4e8c-b7dc-b60d0190ee51"
      unitRef="usd">1495000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzgtMy0xLTEtMTAwMDAy_632c2a6e-714b-48c5-b24d-e7d7161aa4c6"
      unitRef="usd">-1000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzgtNS0xLTEtMTAwMDAy_98175769-259a-4641-8523-9e43e09d744b"
      unitRef="usd">-1298000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzktMS0xLTEtMTAwMDAy_4238e554-bffb-4f6e-9443-65daa7a82187"
      unitRef="usd">7079000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzktMy0xLTEtMTAwMDAy_b426d602-af52-4baa-9716-d263da105049"
      unitRef="usd">-438000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzktNS0xLTEtMTAwMDAy_ee5708ba-980f-4295-9b8e-e7b0690f8fad"
      unitRef="usd">-8475000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzEwLTEtMS0xLTEwMDAwMg_2e3a8238-ac55-4b72-8d3c-346695156ded"
      unitRef="usd">79879000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzEwLTMtMS0xLTEwMDAwMg_71d2f5de-28b2-4cb8-b281-4e36501ceaba"
      unitRef="usd">36712000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo0MzYxZWFlNTdkMTU0N2YzYmU5MzA2OTc1MjAxYmY1Yi90YWJsZXJhbmdlOjQzNjFlYWU1N2QxNTQ3ZjNiZTkzMDY5NzUyMDFiZjViXzEwLTUtMS0xLTEwMDAwMg_7c87f401-753a-47f3-8e46-7099e6fe3d0d"
      unitRef="usd">33938000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90ZXh0cmVnaW9uOjcyMDc4NzhlODZlOTQwM2I4NDVhNWUzMWMzY2NjY2FjXzI1NDc_3f7d5bc6-b539-4c9e-b5b2-29e6e8f6303a">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The reconciliation between our effective tax rate on net income and the federal statutory rate is as follows (dollars in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:43.344%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.695%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.648%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.695%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.648%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.695%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:6.655%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="33" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Income tax at federal statutory rate&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;63,694&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,650&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,547&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Stock compensation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;300&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,567)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1.0)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;331&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other permanent items&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,282&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.4&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,274&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.8&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;424&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Change in valuation allowance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(184)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(0.1)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(922)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(0.6)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(207)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(0.2)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Change in uncertain tax positions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(459)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(0.1)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,867)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1.8)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;65&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;State income taxes, net of federal benefit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,246&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,144&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5.2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,778&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.4&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total tax expense&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;79,879&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26.3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;36,712&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23.6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,938&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25.9&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzItMS0xLTEtMTAwMDAy_0559c4ed-4ac3-4ad0-989d-3e1bf43f085b"
      unitRef="usd">63694000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzItMy0xLTEtMTAwMDAy_f1eba742-00a7-4f63-a1a8-bae9c5458b5e"
      unitRef="number">0.210</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzItNS0xLTEtMTAwMDAy_626cd2b6-f6ce-4174-993c-cd611d0fea49"
      unitRef="usd">32650000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzItNy0xLTEtMTAwMDAy_749beffc-2062-4db8-8dee-7c4d68738769"
      unitRef="number">0.210</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzItOS0xLTEtMTAwMDAy_f6b9d33e-2ed5-491a-80d4-dee715dea4ca"
      unitRef="usd">27547000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzItMTEtMS0xLTEwMDAwMg_bc371cf4-de9c-4e0f-b3d4-57c5ebc04755"
      unitRef="number">0.210</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzMtMS0xLTEtMTAwMDAy_de7feedd-7f90-4966-87a0-2c96a7a05d7c"
      unitRef="usd">300000</us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost>
    <us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzMtMy0xLTEtMTAwMDAy_6ca8b9d4-b54c-465a-a5fc-4f9e16ddfb52"
      unitRef="number">0.001</us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzMtNS0xLTEtMTAwMDAy_054922b1-fcc3-4e94-ac5a-d40dc2707f98"
      unitRef="usd">-1567000</us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost>
    <us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzMtNy0xLTEtMTAwMDAy_914eb261-c0f5-4d5f-a435-410e489877f3"
      unitRef="number">-0.010</us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzMtOS0xLTEtMTAwMDAy_3babee50-fe52-414a-b31f-dd2235b1fc08"
      unitRef="usd">331000</us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost>
    <us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzMtMTEtMS0xLTEwMDAwMg_8aa5b4ab-343b-4171-89d2-510b8ea44e82"
      unitRef="number">0.003</us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzUtMS0xLTEtMTAwMDAy_bdcb634a-019c-4ad8-9634-62d38d720d3b"
      unitRef="usd">1282000</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzUtMy0xLTEtMTAwMDAy_2418104e-2b44-49e4-a527-c3667d73e1bf"
      unitRef="number">0.004</us-gaap:EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzUtNS0xLTEtMTAwMDAy_aaf2a6ce-e0db-47a5-abbe-68193b047818"
      unitRef="usd">1274000</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzUtNy0xLTEtMTAwMDAy_fe582119-7d5a-44c0-8775-45812b62fdaa"
      unitRef="number">0.008</us-gaap:EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzUtOS0xLTEtMTAwMDAy_df963e9f-1dcd-4b1b-83d2-7433ba65697f"
      unitRef="usd">424000</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzUtMTEtMS0xLTEwMDAwMg_49520f8b-84a7-4704-99cb-4e294e32d9c7"
      unitRef="number">0.003</us-gaap:EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent>
    <us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzYtMS0xLTEtMTAwMDAy_2fadf847-8791-4ecd-a06b-00049bee67b2"
      unitRef="usd">-184000</us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzYtMy0xLTEtMTAwMDAy_bbd3e266-21a0-46de-8a54-0916dc1feff2"
      unitRef="number">-0.001</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzYtNS0xLTEtMTAwMDAy_09f00106-b727-4305-9e03-bed7751017d6"
      unitRef="usd">-922000</us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzYtNy0xLTEtMTAwMDAy_ac95404e-1869-4200-a080-db6d8a49308d"
      unitRef="number">-0.006</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzYtOS0xLTEtMTAwMDAy_7612f9f3-0b2b-421d-97aa-6beed1ecaf42"
      unitRef="usd">-207000</us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzYtMTEtMS0xLTEwMDAwMg_b64ad5fe-737d-4d08-bd00-fbf6b8ed83ef"
      unitRef="number">-0.002</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:IncomeTaxReconciliationTaxContingencies
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzctMS0xLTEtMTAwMDAy_9a28525d-8ca3-4f67-9aeb-5faef6514774"
      unitRef="usd">-459000</us-gaap:IncomeTaxReconciliationTaxContingencies>
    <us-gaap:EffectiveIncomeTaxRateReconciliationTaxContingencies
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzctMy0xLTEtMTAwMDAy_1fe4e8b2-1def-43eb-9e57-af93611c8c99"
      unitRef="number">-0.001</us-gaap:EffectiveIncomeTaxRateReconciliationTaxContingencies>
    <us-gaap:IncomeTaxReconciliationTaxContingencies
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzctNS0xLTEtMTAwMDAy_999f0c49-bd16-412d-976e-481077b63010"
      unitRef="usd">-2867000</us-gaap:IncomeTaxReconciliationTaxContingencies>
    <us-gaap:EffectiveIncomeTaxRateReconciliationTaxContingencies
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzctNy0xLTEtMTAwMDAy_9b658748-748b-425a-aa10-e647e0fc5fb1"
      unitRef="number">-0.018</us-gaap:EffectiveIncomeTaxRateReconciliationTaxContingencies>
    <us-gaap:IncomeTaxReconciliationTaxContingencies
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzctOS0xLTEtMTAwMDAy_9c40588c-bd68-4cb5-a5c0-93af6969afb5"
      unitRef="usd">65000</us-gaap:IncomeTaxReconciliationTaxContingencies>
    <us-gaap:EffectiveIncomeTaxRateReconciliationTaxContingencies
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzctMTEtMS0xLTEwMDAwMg_4b4a4d41-d60c-41c3-81cf-4a9c59b2fff4"
      unitRef="number">0.001</us-gaap:EffectiveIncomeTaxRateReconciliationTaxContingencies>
    <us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzgtMS0xLTEtMTAwMDAy_45442136-6943-4135-aa44-a9903c8cd39a"
      unitRef="usd">15246000</us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzgtMy0xLTEtMTAwMDAy_f5eb9d79-86bd-456c-82f8-9888cab2116b"
      unitRef="number">0.050</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzgtNS0xLTEtMTAwMDAy_8baf46c8-06fc-4b7a-a366-95706c88a20e"
      unitRef="usd">8144000</us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzgtNy0xLTEtMTAwMDAy_58e98a35-4b9b-4d51-88c1-712cd41a5716"
      unitRef="number">0.052</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzgtOS0xLTEtMTAwMDAy_a51c5ba7-b4b6-4303-ae12-1728b9254108"
      unitRef="usd">5778000</us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzgtMTEtMS0xLTEwMDAwMg_3eb32559-a696-4e29-9ea4-0d4e2d4f185d"
      unitRef="number">0.044</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzEwLTEtMS0xLTEwMDAwMg_bc297dbb-7fd0-458d-9fae-6dea840df4f3"
      unitRef="usd">79879000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzEwLTMtMS0xLTEwMDAwMg_d637cfed-0c85-4dd5-91b8-c275c356a813"
      unitRef="number">0.263</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzEwLTUtMS0xLTEwMDAwMg_028cff91-8ac0-4829-807c-9d2ecaaed8c6"
      unitRef="usd">36712000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzEwLTctMS0xLTEwMDAwMg_ae573acd-11e4-44e4-891a-619c780d3d27"
      unitRef="number">0.236</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzEwLTktMS0xLTEwMDAwMg_f890fcc2-f43e-47be-9e6e-79b5134c4eca"
      unitRef="usd">33938000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTpmOWNhNzJkNmNlNjQ0YTgzOGNjMWVhZGQzM2EyMThhZS90YWJsZXJhbmdlOmY5Y2E3MmQ2Y2U2NDRhODM4Y2MxZWFkZDMzYTIxOGFlXzEwLTExLTEtMS0xMDAwMDI_f45e5e2f-fd1c-4998-b1a2-98e1b1303d19"
      unitRef="number">0.259</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90ZXh0cmVnaW9uOjcyMDc4NzhlODZlOTQwM2I4NDVhNWUzMWMzY2NjY2FjXzI1NDM_0e94bcf0-1963-4208-93d5-b58b8d67c4b9">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Components of the net deferred tax asset or liability are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:89.181%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:65.457%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.293%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.455%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.295%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred Tax Assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accrued liabilities and allowances&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,009&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,200&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Allowance for doubtful accounts&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,251&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;979&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Inventories&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,210&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;900&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;538&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;333&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Intangibles&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,673&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,042&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net operating loss carryforwards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;719&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,049&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 55pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term deferred tax assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24,415&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,517&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: Valuation allowance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(44)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(216)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 55pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net deferred tax assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24,371&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,301&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred Tax Liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accrued liabilities and allowances&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(640)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(669)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(8,489)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(7,629)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Intangibles&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(10,659)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,783)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Investment in partnership&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(31,154)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(8,271)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,067)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(793)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 55pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term deferred tax liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(52,009)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(24,145)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net deferred tax liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(27,638)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,844)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;The above amounts are included in our Consolidated Balance Sheets as follows:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other non-current assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;820&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;975&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term deferred income tax liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(28,458)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,819)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net deferred tax liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(27,638)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,844)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock>
    <ibp:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzQtMS0xLTEtMTAwMDAy_ebd0baa8-4aa9-47a0-9d1f-3b59b58850b9"
      unitRef="usd">13009000</ibp:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances>
    <ibp:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzQtMy0xLTEtMTAwMDAy_d8ce5e55-c7d2-4168-9f8c-72909609b86b"
      unitRef="usd">10200000</ibp:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzUtMS0xLTEtMTAwMDAy_fe0130e0-b08e-4c8a-941c-b44453730452"
      unitRef="usd">1251000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzUtMy0xLTEtMTAwMDAy_50ff0173-e617-4faf-9200-e18482aa31a5"
      unitRef="usd">979000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts>
    <us-gaap:DeferredTaxAssetsInventory
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzYtMS0xLTEtMTAwMDAy_f9811476-b24d-41c8-882a-64a9cc7b0405"
      unitRef="usd">1210000</us-gaap:DeferredTaxAssetsInventory>
    <us-gaap:DeferredTaxAssetsInventory
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzYtMy0xLTEtMTAwMDAy_2f903e3d-33c7-4c88-a22a-442b4ee954a7"
      unitRef="usd">900000</us-gaap:DeferredTaxAssetsInventory>
    <us-gaap:DeferredTaxAssetsPropertyPlantAndEquipment
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzctMS0xLTEtMTAwMDAy_96b6669f-a239-44e9-98b9-79bedaa4baec"
      unitRef="usd">538000</us-gaap:DeferredTaxAssetsPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxAssetsPropertyPlantAndEquipment
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzctMy0xLTEtMTAwMDAy_2797c3b4-5d82-4a4a-8fa0-4d5dfb9efb19"
      unitRef="usd">333000</us-gaap:DeferredTaxAssetsPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxAssetsGoodwillAndIntangibleAssets
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzgtMS0xLTEtMTAwMDAy_e8a7ad7c-0810-49e7-83d0-a133006ac831"
      unitRef="usd">7673000</us-gaap:DeferredTaxAssetsGoodwillAndIntangibleAssets>
    <us-gaap:DeferredTaxAssetsGoodwillAndIntangibleAssets
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzgtMy0xLTEtMTAwMDAy_ce5050c1-f76c-49fc-80ff-6e5ae9a63353"
      unitRef="usd">7042000</us-gaap:DeferredTaxAssetsGoodwillAndIntangibleAssets>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzktMS0xLTEtMTAwMDAy_088747f6-f231-4d1b-b8ce-de14a6ae316b"
      unitRef="usd">719000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzktMy0xLTEtMTAwMDAy_05540c59-1efa-434b-bc44-2903d2dba1db"
      unitRef="usd">1049000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <us-gaap:DeferredTaxAssetsOther
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzEwLTEtMS0xLTEwMDAwMg_5843a3b5-79ff-4467-bcf6-7059073d53b3"
      unitRef="usd">15000</us-gaap:DeferredTaxAssetsOther>
    <us-gaap:DeferredTaxAssetsOther
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzEwLTMtMS0xLTEwMDAwMg_dd233e06-64ff-43d7-ad7d-9c72d45c356e"
      unitRef="usd">14000</us-gaap:DeferredTaxAssetsOther>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzExLTEtMS0xLTEwMDAwMg_9cf94c05-cbdf-45ba-be3d-71f26fae7122"
      unitRef="usd">24415000</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzExLTMtMS0xLTEwMDAwMg_42279d5b-76e8-4920-a834-6708415b02b5"
      unitRef="usd">20517000</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzEyLTEtMS0xLTEwMDAwMg_23c4f311-1af1-4ad1-befd-80ea6a3d1924"
      unitRef="usd">44000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzEyLTMtMS0xLTEwMDAwMg_f4acfd71-2f86-473f-9151-8e874f9c67d1"
      unitRef="usd">216000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsNet
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzEzLTEtMS0xLTEwMDAwMg_f6921673-a64f-4e95-becc-1a6fa606e464"
      unitRef="usd">24371000</us-gaap:DeferredTaxAssetsNet>
    <us-gaap:DeferredTaxAssetsNet
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzEzLTMtMS0xLTEwMDAwMg_1ac71296-1ed2-49f0-8ccd-adc5b4ac1021"
      unitRef="usd">20301000</us-gaap:DeferredTaxAssetsNet>
    <us-gaap:DeferredTaxLiabilitiesDeferredExpenseReservesAndAccruals
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzE2LTEtMS0xLTEwMDAwMg_6fbb0c26-8ba1-46f4-ac11-e8c37dae51fb"
      unitRef="usd">640000</us-gaap:DeferredTaxLiabilitiesDeferredExpenseReservesAndAccruals>
    <us-gaap:DeferredTaxLiabilitiesDeferredExpenseReservesAndAccruals
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzE2LTMtMS0xLTEwMDAwMg_0deb7d8f-403b-4c25-bc87-01c97e91b2c0"
      unitRef="usd">669000</us-gaap:DeferredTaxLiabilitiesDeferredExpenseReservesAndAccruals>
    <us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzE3LTEtMS0xLTEwMDAwMg_8ba46a3f-ba99-4631-93ae-329eb8300679"
      unitRef="usd">8489000</us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzE3LTMtMS0xLTEwMDAwMg_49519cc8-4697-4d70-8a1b-d1a469fc05ef"
      unitRef="usd">7629000</us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssets
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzE4LTEtMS0xLTEwMDAwMg_4cdfec82-35eb-462d-9cf7-13337145f27d"
      unitRef="usd">10659000</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssets>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssets
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzE4LTMtMS0xLTEwMDAwMg_0465b7fb-eb86-40bb-af53-64fcd35bbb2e"
      unitRef="usd">6783000</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssets>
    <us-gaap:DeferredTaxLiabilitiesInvestments
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzE5LTEtMS0xLTEwMDAwMg_ffe5cd6a-96e0-40c7-9337-5574fdbed673"
      unitRef="usd">31154000</us-gaap:DeferredTaxLiabilitiesInvestments>
    <us-gaap:DeferredTaxLiabilitiesInvestments
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzE5LTMtMS0xLTEwMDAwMg_37e300cb-699d-4307-9aec-66269b4b4928"
      unitRef="usd">8271000</us-gaap:DeferredTaxLiabilitiesInvestments>
    <us-gaap:DeferredTaxLiabilitiesOther
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzIwLTEtMS0xLTEwMDAwMg_5154cba2-5f35-409a-a0a7-878138e046af"
      unitRef="usd">1067000</us-gaap:DeferredTaxLiabilitiesOther>
    <us-gaap:DeferredTaxLiabilitiesOther
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzIwLTMtMS0xLTEwMDAwMg_972b413e-5d66-4594-8dac-efe3aa2bb7d0"
      unitRef="usd">793000</us-gaap:DeferredTaxLiabilitiesOther>
    <us-gaap:DeferredIncomeTaxLiabilities
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzIxLTEtMS0xLTEwMDAwMg_cf0fce8c-13bb-4485-9846-62cc52160c3d"
      unitRef="usd">52009000</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:DeferredIncomeTaxLiabilities
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzIxLTMtMS0xLTEwMDAwMg_fdf0c0ea-0ffd-4e00-930d-19314b9f4c45"
      unitRef="usd">24145000</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:DeferredTaxLiabilities
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzIyLTEtMS0xLTEwMDAwMg_d3104714-883d-4d55-bc34-f4ddd678a2b3"
      unitRef="usd">27638000</us-gaap:DeferredTaxLiabilities>
    <us-gaap:DeferredTaxLiabilities
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzIyLTMtMS0xLTEwMDAwMg_d677b187-fcb3-4624-9b88-a3592e73b63b"
      unitRef="usd">3844000</us-gaap:DeferredTaxLiabilities>
    <us-gaap:DeferredTaxAssetsLiabilitiesNet
      contextRef="i522dacc92fda49dca2761a231d5ffdf7_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzI1LTEtMS0xLTEwMDAwMg_4b682a6c-93cc-4292-8326-5d20d9f22b82"
      unitRef="usd">820000</us-gaap:DeferredTaxAssetsLiabilitiesNet>
    <us-gaap:DeferredTaxAssetsLiabilitiesNet
      contextRef="i554c55111f144a58ad00025d79e13e9b_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzI1LTMtMS0xLTEwMDAwMg_462ddfe9-46d2-41d4-9753-e2b89eeaee8b"
      unitRef="usd">975000</us-gaap:DeferredTaxAssetsLiabilitiesNet>
    <us-gaap:DeferredTaxLiabilities
      contextRef="i5fc8eaf38d8c4adcbf4acbfb0bca794c_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzI2LTEtMS0xLTEwMDAwMg_aa2fc7ea-17ee-4abf-b36e-d1e9b748b379"
      unitRef="usd">28458000</us-gaap:DeferredTaxLiabilities>
    <us-gaap:DeferredTaxLiabilities
      contextRef="id9c60ffd7a984d989effbfdbf1ab8bef_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzI2LTMtMS0xLTEwMDAwMg_506be13d-dab9-45d3-b9a5-eb97aed863cb"
      unitRef="usd">4819000</us-gaap:DeferredTaxLiabilities>
    <us-gaap:DeferredTaxLiabilities
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzI3LTEtMS0xLTEwMDAwMg_941dbf0c-0538-4d62-af71-471d79b93ae8"
      unitRef="usd">27638000</us-gaap:DeferredTaxLiabilities>
    <us-gaap:DeferredTaxLiabilities
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZToxOGQ1MjQ5OThlYTQ0ZTI1ODcyYWY4ZjQwOTExY2YzZC90YWJsZXJhbmdlOjE4ZDUyNDk5OGVhNDRlMjU4NzJhZjhmNDA5MTFjZjNkXzI3LTMtMS0xLTEwMDAwMg_d677b187-fcb3-4624-9b88-a3592e73b63b"
      unitRef="usd">3844000</us-gaap:DeferredTaxLiabilities>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90ZXh0cmVnaW9uOjcyMDc4NzhlODZlOTQwM2I4NDVhNWUzMWMzY2NjY2FjXzM2Nw_a539ab4f-0724-45a6-85c7-8154b1987da8"
      unitRef="usd">700000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <ibp:IncomeTaxExpenseBenefitOperatingLossCarryforwards
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90ZXh0cmVnaW9uOjcyMDc4NzhlODZlOTQwM2I4NDVhNWUzMWMzY2NjY2FjXzM5Ng_2f1a02d1-c4a0-4e17-952c-1a5121986b9b"
      unitRef="usd">3400000</ibp:IncomeTaxExpenseBenefitOperatingLossCarryforwards>
    <us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90ZXh0cmVnaW9uOjcyMDc4NzhlODZlOTQwM2I4NDVhNWUzMWMzY2NjY2FjXzI1NDQ_c28e0d5f-07fb-42a8-9cf4-a95c6d7e5dd0">A rollforward of the gross unrecognized tax benefits is as follows (in thousands):&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:79.970%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:80.618%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.182%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unrecognized tax benefit, December 31, 2019&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,717&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Increase as a result of tax positions taken during the period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,822&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Decrease as a result of tax positions taken during the period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,873)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Increase as a result of expiring statutes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unrecognized tax benefit, December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,676&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Increase as a result of tax positions taken during the period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,482&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Decrease as a result of tax positions taken during the period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,999)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Decrease as a result of expiring statutes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,857)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unrecognized tax benefit, December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,302&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Increase as a result of tax positions taken during the period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,448&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Decrease as a result of tax positions taken during the period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,863)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Increase as a result of expiring statutes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Unrecognized tax benefit, December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,890&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="iff4d4f6f690d4bce8ad0aafed6fdedd3_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo4MGEwZjI4M2FiMDQ0NjlkOTc1NWM4NDE0N2NlNmE5MC90YWJsZXJhbmdlOjgwYTBmMjgzYWIwNDQ2OWQ5NzU1Yzg0MTQ3Y2U2YTkwXzQtMS0xLTEtMTAwMDAy_bc26dc4a-b2c4-471c-9b35-4f3dc3ec83e2"
      unitRef="usd">5717000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo4MGEwZjI4M2FiMDQ0NjlkOTc1NWM4NDE0N2NlNmE5MC90YWJsZXJhbmdlOjgwYTBmMjgzYWIwNDQ2OWQ5NzU1Yzg0MTQ3Y2U2YTkwXzUtMS0xLTEtMTAwMDAy_8fd66317-4307-4e34-8c20-55dac701b306"
      unitRef="usd">3822000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromCurrentPeriodTaxPositions
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo4MGEwZjI4M2FiMDQ0NjlkOTc1NWM4NDE0N2NlNmE5MC90YWJsZXJhbmdlOjgwYTBmMjgzYWIwNDQ2OWQ5NzU1Yzg0MTQ3Y2U2YTkwXzYtMS0xLTEtMTAwMDAy_62a8d00f-53e5-4f6f-8e4f-1fc4cc72592c"
      unitRef="usd">2873000</us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromCurrentPeriodTaxPositions>
    <ibp:UnrecognizedTaxBenefitsIncreaseResultingFromLapseOfApplicableStatuteOfLimitations
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo4MGEwZjI4M2FiMDQ0NjlkOTc1NWM4NDE0N2NlNmE5MC90YWJsZXJhbmdlOjgwYTBmMjgzYWIwNDQ2OWQ5NzU1Yzg0MTQ3Y2U2YTkwXzctMS0xLTEtMTAwMDAy_0a8eb69f-c4e7-4e03-ac2d-78b712fbfac7"
      unitRef="usd">10000</ibp:UnrecognizedTaxBenefitsIncreaseResultingFromLapseOfApplicableStatuteOfLimitations>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="i61f3c1563a76427b8e6b9d432aa44d9a_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo4MGEwZjI4M2FiMDQ0NjlkOTc1NWM4NDE0N2NlNmE5MC90YWJsZXJhbmdlOjgwYTBmMjgzYWIwNDQ2OWQ5NzU1Yzg0MTQ3Y2U2YTkwXzgtMS0xLTEtMTAwMDAy_f94d5d3f-2e35-482c-86ac-76c004fd516f"
      unitRef="usd">6676000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo4MGEwZjI4M2FiMDQ0NjlkOTc1NWM4NDE0N2NlNmE5MC90YWJsZXJhbmdlOjgwYTBmMjgzYWIwNDQ2OWQ5NzU1Yzg0MTQ3Y2U2YTkwXzktMS0xLTEtMTAwMDAy_e404018e-c20b-4318-8132-4f4d0132570a"
      unitRef="usd">4482000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromCurrentPeriodTaxPositions
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo4MGEwZjI4M2FiMDQ0NjlkOTc1NWM4NDE0N2NlNmE5MC90YWJsZXJhbmdlOjgwYTBmMjgzYWIwNDQ2OWQ5NzU1Yzg0MTQ3Y2U2YTkwXzEwLTEtMS0xLTEwMDAwMg_d2085530-de96-42eb-be82-15c0809cbc75"
      unitRef="usd">3999000</us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromCurrentPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo4MGEwZjI4M2FiMDQ0NjlkOTc1NWM4NDE0N2NlNmE5MC90YWJsZXJhbmdlOjgwYTBmMjgzYWIwNDQ2OWQ5NzU1Yzg0MTQ3Y2U2YTkwXzExLTEtMS0xLTEwMDAwMg_8801e7ef-056a-435b-b842-ae22767443fa"
      unitRef="usd">2857000</us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo4MGEwZjI4M2FiMDQ0NjlkOTc1NWM4NDE0N2NlNmE5MC90YWJsZXJhbmdlOjgwYTBmMjgzYWIwNDQ2OWQ5NzU1Yzg0MTQ3Y2U2YTkwXzEyLTEtMS0xLTEwMDAwMg_90a7e97e-05d8-43a8-b361-66b1cad9ad24"
      unitRef="usd">4302000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo4MGEwZjI4M2FiMDQ0NjlkOTc1NWM4NDE0N2NlNmE5MC90YWJsZXJhbmdlOjgwYTBmMjgzYWIwNDQ2OWQ5NzU1Yzg0MTQ3Y2U2YTkwXzktMS0xLTEtMTE5MTc3_b69b40ca-0209-4e16-9d90-d586ae0ea953"
      unitRef="usd">5448000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromCurrentPeriodTaxPositions
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo4MGEwZjI4M2FiMDQ0NjlkOTc1NWM4NDE0N2NlNmE5MC90YWJsZXJhbmdlOjgwYTBmMjgzYWIwNDQ2OWQ5NzU1Yzg0MTQ3Y2U2YTkwXzEwLTEtMS0xLTExOTE3Nw_586133fc-4cdd-4d5d-a8f7-c27467404a58"
      unitRef="usd">4863000</us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromCurrentPeriodTaxPositions>
    <ibp:UnrecognizedTaxBenefitsIncreaseResultingFromLapseOfApplicableStatuteOfLimitations
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo4MGEwZjI4M2FiMDQ0NjlkOTc1NWM4NDE0N2NlNmE5MC90YWJsZXJhbmdlOjgwYTBmMjgzYWIwNDQ2OWQ5NzU1Yzg0MTQ3Y2U2YTkwXzExLTEtMS0xLTExOTE3Nw_6db53f70-8318-4cef-924c-9758ab862156"
      unitRef="usd">3000</ibp:UnrecognizedTaxBenefitsIncreaseResultingFromLapseOfApplicableStatuteOfLimitations>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90YWJsZTo4MGEwZjI4M2FiMDQ0NjlkOTc1NWM4NDE0N2NlNmE5MC90YWJsZXJhbmdlOjgwYTBmMjgzYWIwNDQ2OWQ5NzU1Yzg0MTQ3Y2U2YTkwXzEyLTEtMS0xLTExOTE3Nw_3808105c-0670-4ef7-bda1-96631ab30f63"
      unitRef="usd">4890000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90ZXh0cmVnaW9uOjcyMDc4NzhlODZlOTQwM2I4NDVhNWUzMWMzY2NjY2FjXzU0OTc1NTgxOTA5Mg_1d18241e-de65-406d-9505-e0d820a05107"
      unitRef="usd">500000</us-gaap:UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate>
    <us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90ZXh0cmVnaW9uOjcyMDc4NzhlODZlOTQwM2I4NDVhNWUzMWMzY2NjY2FjXzIxMDM_db2d0c69-e40d-4fa7-9b27-b0e902cff97b"
      unitRef="usd">500000</us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued>
    <ibp:UnrecognizedTaxBenefitsNetOfIncomeTaxPenaltiesAndInterestExpense
      contextRef="i7030ce37fae04cf69695a4b0ca65329b_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90ZXh0cmVnaW9uOjcyMDc4NzhlODZlOTQwM2I4NDVhNWUzMWMzY2NjY2FjXzIyNDI_32e363f6-7d36-4daf-a299-c76af300860e"
      unitRef="usd">0</ibp:UnrecognizedTaxBenefitsNetOfIncomeTaxPenaltiesAndInterestExpense>
    <ibp:UnrecognizedTaxBenefitsNetOfIncomeTaxPenaltiesAndInterestExpense
      contextRef="i3a074bd43fbe424181ccfa73e65a0d18_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMjcvZnJhZzo3MjA3ODc4ZTg2ZTk0MDNiODQ1YTVlMzFjM2NjY2NhYy90ZXh0cmVnaW9uOjcyMDc4NzhlODZlOTQwM2I4NDVhNWUzMWMzY2NjY2FjXzIyNDg_1247f2f2-3b67-489e-aeea-deee5d0129d9"
      unitRef="usd">2800000</ibp:UnrecognizedTaxBenefitsNetOfIncomeTaxPenaltiesAndInterestExpense>
    <us-gaap:RelatedPartyTransactionsDisclosureTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzAvZnJhZzozZmZlMTU0YTMwNTM0MGQ4OWJhMzM3MDA2OTk0ZTNjZS90ZXh0cmVnaW9uOjNmZmUxNTRhMzA1MzQwZDg5YmEzMzcwMDY5OTRlM2NlXzEzMjU_fd85ed30-901d-4aff-85ad-dc11c3912230">RELATED PARTY TRANSACTIONS&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We sell installation services to other companies related to us through common or affiliated ownership and/or board of directors and/or management relationships. We also purchase services and materials and pay rent to companies with common or related ownership. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We lease our headquarters and certain other facilities from related parties. See Note 9, Leases, for future minimum lease payments to be paid to these related parties.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The amount of sales to common or related parties as well as the purchases from and rent expense paid to common or related parties were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;padding-left:6.75pt;padding-right:6.75pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:64.473%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:29.058%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:21.575%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.707%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:21.575%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.707%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:21.578%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sales&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,793&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,452&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,987&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Purchases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,152&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,544&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,841&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Rent&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,300&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,322&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,125&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;At December&#160;31, 2022 and 2021, we had related party balances of approximately $3.3 million and $0.9 million, respectively, included in accounts receivable on our Consolidated Balance Sheets. These balances primarily represent trade accounts receivable arising during the normal course of business with various related parties. M/I Homes, Inc., a customer whose Chairman, President and Chief Executive Officer rejoined our board of directors in July of 2022, accounted for $2.5 million of the related party accounts receivable balance as of December&#160;31, 2022. Additionally, M/I Homes, Inc. accounted for a significant portion of our related party sales during the year ended December&#160;31, 2022.</us-gaap:RelatedPartyTransactionsDisclosureTextBlock>
    <us-gaap:ScheduleOfRelatedPartyTransactionsTableTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzAvZnJhZzozZmZlMTU0YTMwNTM0MGQ4OWJhMzM3MDA2OTk0ZTNjZS90ZXh0cmVnaW9uOjNmZmUxNTRhMzA1MzQwZDg5YmEzMzcwMDY5OTRlM2NlXzEzMjY_4a3fdd32-1526-4542-8ae5-19314a5b5a80">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The amount of sales to common or related parties as well as the purchases from and rent expense paid to common or related parties were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;padding-left:6.75pt;padding-right:6.75pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:64.473%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:29.058%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:21.575%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.707%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:21.575%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.707%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:21.578%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sales&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,793&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,452&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,987&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Purchases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,152&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,544&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,841&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Rent&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,300&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,322&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,125&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfRelatedPartyTransactionsTableTextBlock>
    <us-gaap:RevenueFromRelatedParties
      contextRef="ic1c6c2e6226b4b8f9eb0dd8fbad9d4f4_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzAvZnJhZzozZmZlMTU0YTMwNTM0MGQ4OWJhMzM3MDA2OTk0ZTNjZS90YWJsZTo2MGQzMGVlNDFmYjQ0ZjQ1ODRjNDhjZTNlMjU5NmZkYy90YWJsZXJhbmdlOjYwZDMwZWU0MWZiNDRmNDU4NGM0OGNlM2UyNTk2ZmRjXzItMS0xLTEtMTAwMDAy_9dd60e13-4e90-4cdb-b705-b69b56def42f"
      unitRef="usd">12793000</us-gaap:RevenueFromRelatedParties>
    <us-gaap:RevenueFromRelatedParties
      contextRef="ie33db4efa4914592a1448b3059cd6744_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzAvZnJhZzozZmZlMTU0YTMwNTM0MGQ4OWJhMzM3MDA2OTk0ZTNjZS90YWJsZTo2MGQzMGVlNDFmYjQ0ZjQ1ODRjNDhjZTNlMjU5NmZkYy90YWJsZXJhbmdlOjYwZDMwZWU0MWZiNDRmNDU4NGM0OGNlM2UyNTk2ZmRjXzItMy0xLTEtMTAwMDAy_21f3f18e-96ca-4c3b-809f-cc8c0d0f00da"
      unitRef="usd">1452000</us-gaap:RevenueFromRelatedParties>
    <us-gaap:RevenueFromRelatedParties
      contextRef="id44a6b0dd5ec43d28543683a24ec6e10_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzAvZnJhZzozZmZlMTU0YTMwNTM0MGQ4OWJhMzM3MDA2OTk0ZTNjZS90YWJsZTo2MGQzMGVlNDFmYjQ0ZjQ1ODRjNDhjZTNlMjU5NmZkYy90YWJsZXJhbmdlOjYwZDMwZWU0MWZiNDRmNDU4NGM0OGNlM2UyNTk2ZmRjXzItNS0xLTEtMTAwMDAy_1e728796-08b1-4e84-a205-d359eaf710e8"
      unitRef="usd">3987000</us-gaap:RevenueFromRelatedParties>
    <us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty
      contextRef="ic1c6c2e6226b4b8f9eb0dd8fbad9d4f4_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzAvZnJhZzozZmZlMTU0YTMwNTM0MGQ4OWJhMzM3MDA2OTk0ZTNjZS90YWJsZTo2MGQzMGVlNDFmYjQ0ZjQ1ODRjNDhjZTNlMjU5NmZkYy90YWJsZXJhbmdlOjYwZDMwZWU0MWZiNDRmNDU4NGM0OGNlM2UyNTk2ZmRjXzMtMS0xLTEtMTAwMDAy_1e90a791-4f25-4fb0-aa94-927d114218b4"
      unitRef="usd">2152000</us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty>
    <us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty
      contextRef="ie33db4efa4914592a1448b3059cd6744_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzAvZnJhZzozZmZlMTU0YTMwNTM0MGQ4OWJhMzM3MDA2OTk0ZTNjZS90YWJsZTo2MGQzMGVlNDFmYjQ0ZjQ1ODRjNDhjZTNlMjU5NmZkYy90YWJsZXJhbmdlOjYwZDMwZWU0MWZiNDRmNDU4NGM0OGNlM2UyNTk2ZmRjXzMtMy0xLTEtMTAwMDAy_a5c7dda5-af4c-4d12-a053-82e2a64f3f3e"
      unitRef="usd">1544000</us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty>
    <us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty
      contextRef="id44a6b0dd5ec43d28543683a24ec6e10_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzAvZnJhZzozZmZlMTU0YTMwNTM0MGQ4OWJhMzM3MDA2OTk0ZTNjZS90YWJsZTo2MGQzMGVlNDFmYjQ0ZjQ1ODRjNDhjZTNlMjU5NmZkYy90YWJsZXJhbmdlOjYwZDMwZWU0MWZiNDRmNDU4NGM0OGNlM2UyNTk2ZmRjXzMtNS0xLTEtMTAwMDAy_0c5eeaa7-18a7-4cfe-9b63-6ce0d8a9c29e"
      unitRef="usd">1841000</us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty>
    <us-gaap:RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty
      contextRef="ic1c6c2e6226b4b8f9eb0dd8fbad9d4f4_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzAvZnJhZzozZmZlMTU0YTMwNTM0MGQ4OWJhMzM3MDA2OTk0ZTNjZS90YWJsZTo2MGQzMGVlNDFmYjQ0ZjQ1ODRjNDhjZTNlMjU5NmZkYy90YWJsZXJhbmdlOjYwZDMwZWU0MWZiNDRmNDU4NGM0OGNlM2UyNTk2ZmRjXzQtMS0xLTEtMTAwMDAy_5ac647fb-0331-48b7-923e-de57d0f1bd03"
      unitRef="usd">1300000</us-gaap:RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty>
    <us-gaap:RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty
      contextRef="ie33db4efa4914592a1448b3059cd6744_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzAvZnJhZzozZmZlMTU0YTMwNTM0MGQ4OWJhMzM3MDA2OTk0ZTNjZS90YWJsZTo2MGQzMGVlNDFmYjQ0ZjQ1ODRjNDhjZTNlMjU5NmZkYy90YWJsZXJhbmdlOjYwZDMwZWU0MWZiNDRmNDU4NGM0OGNlM2UyNTk2ZmRjXzQtMy0xLTEtMTAwMDAy_08b2475d-97b4-4306-8a61-04b322ed58d5"
      unitRef="usd">1322000</us-gaap:RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty>
    <us-gaap:RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty
      contextRef="id44a6b0dd5ec43d28543683a24ec6e10_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzAvZnJhZzozZmZlMTU0YTMwNTM0MGQ4OWJhMzM3MDA2OTk0ZTNjZS90YWJsZTo2MGQzMGVlNDFmYjQ0ZjQ1ODRjNDhjZTNlMjU5NmZkYy90YWJsZXJhbmdlOjYwZDMwZWU0MWZiNDRmNDU4NGM0OGNlM2UyNTk2ZmRjXzQtNS0xLTEtMTAwMDAy_94dc4674-210b-4867-ac24-deae00042614"
      unitRef="usd">1125000</us-gaap:RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty>
    <us-gaap:AccountsReceivableRelatedPartiesCurrent
      contextRef="i058b6ccaa07643c7a3b721296a456c74_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzAvZnJhZzozZmZlMTU0YTMwNTM0MGQ4OWJhMzM3MDA2OTk0ZTNjZS90ZXh0cmVnaW9uOjNmZmUxNTRhMzA1MzQwZDg5YmEzMzcwMDY5OTRlM2NlXzY5OQ_67c9f0ac-a873-4740-b02e-afa9dfa2f95b"
      unitRef="usd">3300000</us-gaap:AccountsReceivableRelatedPartiesCurrent>
    <us-gaap:AccountsReceivableRelatedPartiesCurrent
      contextRef="i8dfa63c25f1641888218961240b7361e_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzAvZnJhZzozZmZlMTU0YTMwNTM0MGQ4OWJhMzM3MDA2OTk0ZTNjZS90ZXh0cmVnaW9uOjNmZmUxNTRhMzA1MzQwZDg5YmEzMzcwMDY5OTRlM2NlXzcwNg_436ad60a-ad2d-47ec-a25c-c6bb0754bb65"
      unitRef="usd">900000</us-gaap:AccountsReceivableRelatedPartiesCurrent>
    <us-gaap:AccountsReceivableRelatedPartiesCurrent
      contextRef="i740af50718654e1aab1a54a820f2469b_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzAvZnJhZzozZmZlMTU0YTMwNTM0MGQ4OWJhMzM3MDA2OTk0ZTNjZS90ZXh0cmVnaW9uOjNmZmUxNTRhMzA1MzQwZDg5YmEzMzcwMDY5OTRlM2NlXzkzNDU4NDg4Mzk2ODk_32d94349-e90d-4e00-ab87-b69b0931201a"
      unitRef="usd">2500000</us-gaap:AccountsReceivableRelatedPartiesCurrent>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzMvZnJhZzpmNzdjMGYwZjQwZjM0YzI0OGExNGI2NDMxOGI4OWUzNC90ZXh0cmVnaW9uOmY3N2MwZjBmNDBmMzRjMjQ4YTE0YjY0MzE4Yjg5ZTM0XzE2NzE_ca01e61d-0f5d-40fe-96da-b22923eb7222">COMMITMENTS AND CONTINGENCIES&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Accrued General Liability and Auto Insurances&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accrued general liability and auto insurance reserves included on the Consolidated Balance Sheets were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:66.666%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:54.163%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.829%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.677%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.831%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Included in other current liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,479&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,889&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Included in other long-term liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,528&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,050&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,007&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,939&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="padding-left:434.25pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We also had insurance receivables and indemnification assets included on the Consolidated Balance Sheets that, in aggregate, offset equal liabilities included within the reserve amounts noted above. The amounts were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.291%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.911%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.914%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 4.37pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 4.37pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Insurance receivables and indemnification assets for claims under fully insured policies&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,933&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,578&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Insurance receivables for claims that exceeded the stop loss limit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;380&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;278&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total insurance receivables and indemnification assets included in other non-current assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,313&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,856&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Leases&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;See Note 9, Leases, for further information on our lease commitments.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Other Commitments and Contingencies&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;From time to time, various claims and litigation are asserted or commenced against us principally arising from contractual matters and personnel and employment disputes. In determining loss contingencies, management considers the likelihood of loss as well as the ability to reasonably estimate the amount of such loss or liability. An estimated loss is recorded when it is considered probable that such a liability has been incurred and when the amount of loss can be reasonably estimated. As litigation is subject to inherent uncertainties, we cannot be certain that we will prevail in these matters. However, we do not believe that the ultimate outcome of any pending matters will have a material adverse effect on our consolidated financial position, results of operations or cash flows.&lt;/span&gt;&lt;/div&gt;</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <ibp:ScheduleOfAccruedInsuranceReservesTableTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzMvZnJhZzpmNzdjMGYwZjQwZjM0YzI0OGExNGI2NDMxOGI4OWUzNC90ZXh0cmVnaW9uOmY3N2MwZjBmNDBmMzRjMjQ4YTE0YjY0MzE4Yjg5ZTM0XzE2NzI_88dfce1f-6d0b-4188-93fd-9fc3e4249863">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accrued general liability and auto insurance reserves included on the Consolidated Balance Sheets were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:66.666%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:54.163%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.829%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.677%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.831%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Included in other current liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,479&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,889&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Included in other long-term liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,528&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,050&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,007&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,939&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</ibp:ScheduleOfAccruedInsuranceReservesTableTextBlock>
    <us-gaap:AccruedInsuranceCurrent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzMvZnJhZzpmNzdjMGYwZjQwZjM0YzI0OGExNGI2NDMxOGI4OWUzNC90YWJsZTplMGE0MTQ5ZjgwNTY0YjhlODg1NGM4ZjRhYzEzNGQ2My90YWJsZXJhbmdlOmUwYTQxNDlmODA1NjRiOGU4ODU0YzhmNGFjMTM0ZDYzXzItMS0xLTEtMTAwMDAy_5b9b7cd9-8ebb-4f88-8a0a-ad9976c7e7d6"
      unitRef="usd">7479000</us-gaap:AccruedInsuranceCurrent>
    <us-gaap:AccruedInsuranceCurrent
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzMvZnJhZzpmNzdjMGYwZjQwZjM0YzI0OGExNGI2NDMxOGI4OWUzNC90YWJsZTplMGE0MTQ5ZjgwNTY0YjhlODg1NGM4ZjRhYzEzNGQ2My90YWJsZXJhbmdlOmUwYTQxNDlmODA1NjRiOGU4ODU0YzhmNGFjMTM0ZDYzXzItMy0xLTEtMTAwMDAy_b48c5d00-e86d-4c14-ac84-b15d48283ac8"
      unitRef="usd">5889000</us-gaap:AccruedInsuranceCurrent>
    <us-gaap:AccruedInsuranceNoncurrent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzMvZnJhZzpmNzdjMGYwZjQwZjM0YzI0OGExNGI2NDMxOGI4OWUzNC90YWJsZTplMGE0MTQ5ZjgwNTY0YjhlODg1NGM4ZjRhYzEzNGQ2My90YWJsZXJhbmdlOmUwYTQxNDlmODA1NjRiOGU4ODU0YzhmNGFjMTM0ZDYzXzMtMS0xLTEtMTAwMDAy_fb180a3f-9b01-4078-b3b3-46830dcb5170"
      unitRef="usd">17528000</us-gaap:AccruedInsuranceNoncurrent>
    <us-gaap:AccruedInsuranceNoncurrent
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzMvZnJhZzpmNzdjMGYwZjQwZjM0YzI0OGExNGI2NDMxOGI4OWUzNC90YWJsZTplMGE0MTQ5ZjgwNTY0YjhlODg1NGM4ZjRhYzEzNGQ2My90YWJsZXJhbmdlOmUwYTQxNDlmODA1NjRiOGU4ODU0YzhmNGFjMTM0ZDYzXzMtMy0xLTEtMTAwMDAy_084944fe-31e2-4327-9d3f-c22dbc3c21b3"
      unitRef="usd">16050000</us-gaap:AccruedInsuranceNoncurrent>
    <us-gaap:AccruedInsuranceCurrentAndNoncurrent
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzMvZnJhZzpmNzdjMGYwZjQwZjM0YzI0OGExNGI2NDMxOGI4OWUzNC90YWJsZTplMGE0MTQ5ZjgwNTY0YjhlODg1NGM4ZjRhYzEzNGQ2My90YWJsZXJhbmdlOmUwYTQxNDlmODA1NjRiOGU4ODU0YzhmNGFjMTM0ZDYzXzQtMS0xLTEtMTAwMDAy_469e6f0d-5e65-40a9-9c8e-18f09f762fca"
      unitRef="usd">25007000</us-gaap:AccruedInsuranceCurrentAndNoncurrent>
    <us-gaap:AccruedInsuranceCurrentAndNoncurrent
      contextRef="id6e5cb30ac31451891723ddbe1f912e6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzMvZnJhZzpmNzdjMGYwZjQwZjM0YzI0OGExNGI2NDMxOGI4OWUzNC90YWJsZTplMGE0MTQ5ZjgwNTY0YjhlODg1NGM4ZjRhYzEzNGQ2My90YWJsZXJhbmdlOmUwYTQxNDlmODA1NjRiOGU4ODU0YzhmNGFjMTM0ZDYzXzQtMy0xLTEtMTAwMDAy_8b8d4bc4-4e5a-4d8b-9829-bac87b0c5978"
      unitRef="usd">21939000</us-gaap:AccruedInsuranceCurrentAndNoncurrent>
    <ibp:InsuranceReceivableClaimsTableTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzMvZnJhZzpmNzdjMGYwZjQwZjM0YzI0OGExNGI2NDMxOGI4OWUzNC90ZXh0cmVnaW9uOmY3N2MwZjBmNDBmMzRjMjQ4YTE0YjY0MzE4Yjg5ZTM0XzE2NzA_1636209c-43c0-479b-9b93-232c9a996c43">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We also had insurance receivables and indemnification assets included on the Consolidated Balance Sheets that, in aggregate, offset equal liabilities included within the reserve amounts noted above. The amounts were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.291%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.911%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.914%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 4.37pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 4.37pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Insurance receivables and indemnification assets for claims under fully insured policies&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,933&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,578&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Insurance receivables for claims that exceeded the stop loss limit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;380&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;278&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total insurance receivables and indemnification assets included in other non-current assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,313&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,856&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</ibp:InsuranceReceivableClaimsTableTextBlock>
    <ibp:InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy
      contextRef="i1f0f486b895040c1b1d766df54348319_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzMvZnJhZzpmNzdjMGYwZjQwZjM0YzI0OGExNGI2NDMxOGI4OWUzNC90YWJsZTo1ODVjMDdlZGU0YWY0YWU4YTE1YjM4NDQ0MzlmOWZlYS90YWJsZXJhbmdlOjU4NWMwN2VkZTRhZjRhZThhMTViMzg0NDQzOWY5ZmVhXzItMS0xLTEtMTAwMDAy_cdd346ad-e540-4343-9779-31062538ef8b"
      unitRef="usd">4933000</ibp:InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy>
    <ibp:InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy
      contextRef="if6323e71637b49a185b9d3f6a1940c53_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzMvZnJhZzpmNzdjMGYwZjQwZjM0YzI0OGExNGI2NDMxOGI4OWUzNC90YWJsZTo1ODVjMDdlZGU0YWY0YWU4YTE1YjM4NDQ0MzlmOWZlYS90YWJsZXJhbmdlOjU4NWMwN2VkZTRhZjRhZThhMTViMzg0NDQzOWY5ZmVhXzItMy0xLTEtMTAwMDAy_1374c811-7bc9-4c4f-a618-74b7173ea30a"
      unitRef="usd">3578000</ibp:InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy>
    <ibp:InsuranceReceivableForClaimsExceedingStopLossLimit
      contextRef="i1f0f486b895040c1b1d766df54348319_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzMvZnJhZzpmNzdjMGYwZjQwZjM0YzI0OGExNGI2NDMxOGI4OWUzNC90YWJsZTo1ODVjMDdlZGU0YWY0YWU4YTE1YjM4NDQ0MzlmOWZlYS90YWJsZXJhbmdlOjU4NWMwN2VkZTRhZjRhZThhMTViMzg0NDQzOWY5ZmVhXzMtMS0xLTEtMTAwMDAy_2966989a-09d1-49d1-b159-38bc4f5e8bff"
      unitRef="usd">380000</ibp:InsuranceReceivableForClaimsExceedingStopLossLimit>
    <ibp:InsuranceReceivableForClaimsExceedingStopLossLimit
      contextRef="if6323e71637b49a185b9d3f6a1940c53_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzMvZnJhZzpmNzdjMGYwZjQwZjM0YzI0OGExNGI2NDMxOGI4OWUzNC90YWJsZTo1ODVjMDdlZGU0YWY0YWU4YTE1YjM4NDQ0MzlmOWZlYS90YWJsZXJhbmdlOjU4NWMwN2VkZTRhZjRhZThhMTViMzg0NDQzOWY5ZmVhXzMtMy0xLTEtMTAwMDAy_8327b987-3125-482f-8064-d9ee52561e9b"
      unitRef="usd">278000</ibp:InsuranceReceivableForClaimsExceedingStopLossLimit>
    <us-gaap:InsuranceSettlementsReceivableNoncurrent
      contextRef="i1f0f486b895040c1b1d766df54348319_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzMvZnJhZzpmNzdjMGYwZjQwZjM0YzI0OGExNGI2NDMxOGI4OWUzNC90YWJsZTo1ODVjMDdlZGU0YWY0YWU4YTE1YjM4NDQ0MzlmOWZlYS90YWJsZXJhbmdlOjU4NWMwN2VkZTRhZjRhZThhMTViMzg0NDQzOWY5ZmVhXzQtMS0xLTEtMTAwMDAy_61198c92-afe9-4141-b783-d12be36a68bd"
      unitRef="usd">5313000</us-gaap:InsuranceSettlementsReceivableNoncurrent>
    <us-gaap:InsuranceSettlementsReceivableNoncurrent
      contextRef="if6323e71637b49a185b9d3f6a1940c53_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzMvZnJhZzpmNzdjMGYwZjQwZjM0YzI0OGExNGI2NDMxOGI4OWUzNC90YWJsZTo1ODVjMDdlZGU0YWY0YWU4YTE1YjM4NDQ0MzlmOWZlYS90YWJsZXJhbmdlOjU4NWMwN2VkZTRhZjRhZThhMTViMzg0NDQzOWY5ZmVhXzQtMy0xLTEtMTAwMDAy_be6410c6-ced9-411f-91fa-38dc72ed97bf"
      unitRef="usd">3856000</us-gaap:InsuranceSettlementsReceivableNoncurrent>
    <us-gaap:BusinessCombinationDisclosureTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzUxMTA_57d21912-182d-4a04-b39a-725955d321a8">BUSINESS COMBINATIONSAs part of our ongoing strategy to expand geographically and increase market share in certain markets, as well as diversify our products and end markets, we completed eight, eleven and nine business combinations during the years ended December&#160;31, 2022, 2021 and 2020, respectively. Acquisition-related costs amounted to $3.0 million, $3.8 million and $3.0 million for the years ended December&#160;31, 2022, 2021 and 2020, respectively, and are included in Administrative expenses on the Consolidated Statements of Operations and Comprehensive Income. In addition, we recognized gains on acquisition earnouts on the Consolidated Statements of Operations and Comprehensive Income of $16.1 million, $1.0 million and $0.2 million for the years ended December&#160;31, 2022, 2021 and 2020, respectively, due to probability assessments and to the cancellations of acquisition-related earnouts. The gain recorded during the year ended December&#160;31, 2022, is primarily comprised of a $15.1 million gain for the Central Aluminum acquisition (as defined below) recorded as a result of revised earnout target expectations. The goodwill recognized in conjunction with these business combinations represents the excess cost of the acquired entity over the net amount assigned to assets acquired and liabilities assumed. We expect to deduct $41.3 million of goodwill for tax purposes as a result of 2022 acquisitions.&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Below is a summary of each significant acquisition by year, including revenue and net income (loss) since date of acquisition, shown for the year of acquisition. The largest of our 2022 acquisitions were Central Aluminum Supply Corporation and Central Aluminum Supply of North Jersey, LLC (collectively "CAS") in April 2022 &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;and ABS Insulating Company, Inc., ABS Sprayfoam Insulation, Inc. and ABS Coastal Insulating Company, LLC (collectively "ABS") in December 2022. In each table, &#x201c;Other&#x201d; represents acquisitions that were individually immaterial in that year. Net income (loss), as noted below, includes amortization, taxes and interest allocations when appropriate. Prior period amounts have been recast to conform with the current year presentation.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;For the year ended December&#160;31, 2022 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:21.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.434%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022 Acquisitions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Acquisition Type&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash Paid&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Seller Obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total Purchase Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net Income (Loss)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;CAS&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4/11/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;55,150&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,927&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;78,077&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;37,822&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,001)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;ABS&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12/19/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,150&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;412&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,562&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;658&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(97)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Various&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset/Share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;35,759&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,639&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39,398&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,576&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;787&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;114,059&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,978&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;141,037&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;61,056&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(311)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;For the year ended December&#160;31, 2021 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:21.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.434%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021 Acquisitions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Acquisition Type&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash Paid&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Seller Obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total Purchase Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net Income (Loss)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;IWI&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;03/01/2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;42,098&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,959&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;48,057&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;36,259&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,373&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Five Star&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9/13/2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,308&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,466&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31,774&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,861&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(119)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;AMD&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12/13/2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;119,490&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,631&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;126,121&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,707&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(225)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Various &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset/Share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;55,119&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,835&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;64,954&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;35,604&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(390)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;243,015&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,891&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;270,906&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;82,431&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,639&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;For the year ended December&#160;31, 2020 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:21.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.434%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020 Acquisitions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Acquisition Type&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash Paid&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Seller Obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total Purchase Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net Income (Loss)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;ICON&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10/13/2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,900&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,598&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,498&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,798&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;449&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Various&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;59,546&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,488&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;70,034&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;35,696&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,443&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;76,446&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,086&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;90,532&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;40,494&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,892&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Purchase Price Allocations&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The estimated fair values of the assets acquired and liabilities assumed for the acquisitions, as well as total purchase prices and cash paid, approximated the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:7pt;padding-left:5.62pt;padding-right:5.62pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.122%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:46.097%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.731%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.389%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.436%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.389%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.731%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.389%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.738%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;CAS&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;ABS&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Estimated fair values:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;243&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;193&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;87&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;523&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accounts receivable&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,502&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,777&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,800&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,079&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Inventories&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,784&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;853&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,456&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,093&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other current assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;576&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;485&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;71&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,132&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,590&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,269&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,498&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,357&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease right-of-use asset &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;844&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;66&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;910&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Intangibles&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;34,900&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,800&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,365&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;65,065&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,594&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,546&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,154&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;49,294&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other non-current assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;56&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;56&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accounts payable and other current liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,387)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,677)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,133)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(10,197)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred income tax liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,455)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,455)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Income tax payable&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(229)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(229)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other long-term liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(569)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(22)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(591)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fair value of assets acquired and purchase price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;78,077&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,562&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39,398&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;141,037&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less seller obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,927&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;412&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,639&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,978&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash paid&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;55,150&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,150&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;35,759&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;114,059&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:7pt;padding-right:11.25pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:32.964%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.624%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="27" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;IWI&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Five Star&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;AMD&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Estimated fair values:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;168&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,472&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;67&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,707&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accounts receivable&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,122&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,583&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,393&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,584&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31,682&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Inventories&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,157&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,399&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,540&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,786&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,882&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other current assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,014&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;330&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,975&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,319&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;796&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,161&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,133&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,124&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,214&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease right of-use-asset&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;199&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;199&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Intangibles&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,200&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,400&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;52,800&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31,554&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;126,954&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,282&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,626&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;56,327&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,122&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;107,357&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other non-current assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;264&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;417&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;681&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accounts payable and other current liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(8,416)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,170)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(184)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,809)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(16,579)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred income tax liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,089)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,089)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other long-term liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,530)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(27)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(87)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(777)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,421)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fair value of assets acquired and purchase price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;48,057&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31,774&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;126,121&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;64,954&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;270,906&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less seller obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,959&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,466&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,631&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,835&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,891&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash paid&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;42,098&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,308&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;119,490&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;55,119&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;243,015&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:7pt;padding-right:11.25pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.572%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.622%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;ICON&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Estimated fair values:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accounts receivable&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,828&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,777&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,605&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Inventories&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;243&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,518&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,761&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other current assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;675&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;779&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,454&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;380&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,482&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,862&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Intangibles&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,830&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;34,393&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;46,223&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,870&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,435&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,305&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other non-current assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;145&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;96&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;241&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accounts payable and other current liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(445)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,196)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,641)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other long-term liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(28)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(250)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(278)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fair value of assets acquired and purchase price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,498&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;70,034&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;90,532&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less seller obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,598&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,488&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,086&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash paid&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,900&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;59,546&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;76,446&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Contingent consideration is included as &#x201c;seller obligations&#x201d; in the above table or within &#x201c;fair value of assets acquired&#x201d; if subsequently paid during the period presented. These contingent payments consist primarily of earnouts based on performance that are recorded at fair value at the time of acquisition, and/or non-compete agreements and amounts based on working capital calculations. When these payments are expected to be made over one year from the acquisition date, the contingent consideration is discounted to net present value of future payments based on a weighted average of various future forecast scenarios.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Further adjustments to the allocation for each acquisition still under its measurement period are expected as third-party or internal valuations are finalized, certain tax aspects of the transaction are completed, contingent consideration is settled, and customary post-closing reviews are concluded during the measurement period attributable to each individual business combination. As a result, insignificant adjustments to the fair value of assets acquired, and in some cases total purchase price, have been made to certain business combinations since the date of acquisition and future adjustments may be made through the end of each measurement period. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The provisional amounts for one of our 2021 acquisitions originally reported in our Consolidated Balance Sheets included in our Annual Report on Form 10-K for the period ended December&#160;31, 2021 were adjusted due to adjustments to pre-acquisition financial information and ongoing analysis of the fair value measurements. As a result of an independent appraisal, we increased goodwill by approximately $1.6 million and decreased intangibles by $(3.0) million. These adjustments were within applicable measurement period guidelines and did not effect earnings.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Goodwill and intangibles per the above table may not agree to the total gross increases of these assets as shown in Note 7, Goodwill and Intangibles, during the years ended December&#160;31, 2022, 2021 and 2020 due to minor adjustments to goodwill for the allocation of certain acquisitions still under measurement as well as other immaterial intangible assets added during the ordinary course of business. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Estimates of acquired intangible assets related to the acquisitions are as follows (dollars in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:30.811%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.635%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.635%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.635%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.635%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.635%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.639%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Acquired intangibles assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Estimated Fair Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted Average Estimated Useful Life (yrs)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Estimated Fair Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted Average Estimated Useful Life (yrs)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Estimated Fair Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted Average Estimated Useful Life (yrs)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer relationships&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;45,236&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;95,173&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;28,307&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Trademarks and trade names&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,794&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,149&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,834&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-competition agreements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,645&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,054&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,315&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Backlog&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;390&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,578&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.5&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,767&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.5&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Pro Forma Information (unaudited)&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The unaudited pro forma information has been prepared as if the 2022 acquisitions had taken place on January 1, 2021, the 2021 acquisitions had taken place on January 1, 2020 and the 2020 acquisitions had taken place on January 1, 2019. The unaudited pro forma information is not necessarily indicative of the results that we would have achieved had the transactions actually taken place on January 1, 2021, 2020 and 2019 and the unaudited pro forma information does not purport to be indicative of future financial operating results (in thousands, except for per share data):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:70.467%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:42.675%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.949%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.837%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.949%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.837%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.953%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31,&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net revenue&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,732,084&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,217,592&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,922,327&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net income&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;227,108&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;135,850&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;107,791&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Basic net income per share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7.91&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.63&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.65&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Diluted net income per share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7.87&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.59&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.63&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Unaudited pro forma net income reflects additional intangible asset amortization expense of $2.5 million, $13.1 million and $18.2 million for the years ended December&#160;31, 2022, 2021 and 2020, respectively, additional interest expense of $4.3 million for each of the years ended December&#160;31, 2021 and 2020, respectively, as well as additional income tax expense of $1.2 million, $5.7 million and $3.7 million for the years ended December&#160;31, 2022, 2021 and 2020, respectively.&lt;/span&gt;&lt;/div&gt;</us-gaap:BusinessCombinationDisclosureTextBlock>
    <us-gaap:NumberOfBusinessesAcquired
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzIwNA_e17d4a67-dcdc-4393-a1ca-3a78ee78d475"
      unitRef="business">8</us-gaap:NumberOfBusinessesAcquired>
    <us-gaap:NumberOfBusinessesAcquired
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzIwOA_f747b226-600f-4517-b3dc-d92f023491aa"
      unitRef="business">11</us-gaap:NumberOfBusinessesAcquired>
    <us-gaap:NumberOfBusinessesAcquired
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzIxNQ_8bc9e564-ea31-4cbf-b936-fa5d33c0b7cd"
      unitRef="business">9</us-gaap:NumberOfBusinessesAcquired>
    <us-gaap:BusinessCombinationAcquisitionRelatedCosts
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzUwMw_f49b9974-3cb9-46f8-bf88-1625e731f987"
      unitRef="usd">3000000</us-gaap:BusinessCombinationAcquisitionRelatedCosts>
    <us-gaap:BusinessCombinationAcquisitionRelatedCosts
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzUwNw_968a7548-25a7-4222-a993-ec96826a2322"
      unitRef="usd">3800000</us-gaap:BusinessCombinationAcquisitionRelatedCosts>
    <us-gaap:BusinessCombinationAcquisitionRelatedCosts
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzUxNA_92034c40-9df9-4a6c-9d99-9fcd5a1078d0"
      unitRef="usd">3000000</us-gaap:BusinessCombinationAcquisitionRelatedCosts>
    <us-gaap:BusinessCombinationSeparatelyRecognizedTransactionsRevenuesAndGainsRecognized
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzU0OTc1NTgyMzE0NQ_7968223d-9f2a-40b8-ba9d-2d3d83ac48d9"
      unitRef="usd">16100000</us-gaap:BusinessCombinationSeparatelyRecognizedTransactionsRevenuesAndGainsRecognized>
    <us-gaap:BusinessCombinationSeparatelyRecognizedTransactionsRevenuesAndGainsRecognized
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzEwOTk1MTE2NDQwNTg_05cfdb5f-204f-4c6f-be38-7f406974fe42"
      unitRef="usd">1000000</us-gaap:BusinessCombinationSeparatelyRecognizedTransactionsRevenuesAndGainsRecognized>
    <us-gaap:BusinessCombinationSeparatelyRecognizedTransactionsRevenuesAndGainsRecognized
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzEwOTk1MTE2NDQwNjY_63ffbe63-50fa-4daa-91de-8fbf54cb7966"
      unitRef="usd">200000</us-gaap:BusinessCombinationSeparatelyRecognizedTransactionsRevenuesAndGainsRecognized>
    <ibp:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnEarnoutLiability
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzQ5NDc4MDIzNTE3MTU_073e6e26-13d6-41ca-a1ac-4b254fd390c7"
      unitRef="usd">15100000</ibp:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnEarnoutLiability>
    <us-gaap:BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount
      contextRef="ia4f683e648134f0da1371b6bd27ef351_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzg5Ng_e6f35141-7f5f-41fe-838a-615fb9a03803"
      unitRef="usd">41300000</us-gaap:BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount>
    <us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzUxMDY_ac9c8975-6a69-4358-bb32-c66986bc82b7">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;For the year ended December&#160;31, 2022 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:21.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.434%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022 Acquisitions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Acquisition Type&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash Paid&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Seller Obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total Purchase Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net Income (Loss)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;CAS&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4/11/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;55,150&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,927&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;78,077&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;37,822&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,001)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;ABS&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12/19/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,150&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;412&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,562&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;658&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(97)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Various&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset/Share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;35,759&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,639&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39,398&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,576&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;787&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;114,059&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,978&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;141,037&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;61,056&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(311)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;For the year ended December&#160;31, 2021 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:21.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.434%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021 Acquisitions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Acquisition Type&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash Paid&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Seller Obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total Purchase Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net Income (Loss)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;IWI&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;03/01/2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;42,098&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,959&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;48,057&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;36,259&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,373&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Five Star&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9/13/2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,308&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,466&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31,774&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,861&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(119)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;AMD&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12/13/2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;119,490&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,631&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;126,121&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,707&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(225)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Various &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset/Share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;55,119&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,835&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;64,954&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;35,604&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(390)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;243,015&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,891&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;270,906&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;82,431&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,639&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;For the year ended December&#160;31, 2020 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:21.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.426%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.434%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020 Acquisitions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Acquisition Type&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash Paid&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Seller Obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total Purchase Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net Income (Loss)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;ICON&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10/13/2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,900&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,598&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,498&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,798&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;449&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Various&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;59,546&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,488&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;70,034&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;35,696&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,443&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;76,446&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,086&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;90,532&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;40,494&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,892&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="ie6eb768e720b4c85b65f110f827cc1c4_D20220411-20220411"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzItNi0xLTEtMTAyMzUy_d1b9ad3e-981b-4175-9c1c-350f00976147"
      unitRef="usd">55150000</us-gaap:PaymentsToAcquireBusinessesGross>
    <ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness
      contextRef="ie6eb768e720b4c85b65f110f827cc1c4_D20220411-20220411"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzItOC0xLTEtMTAyMzUy_1d0aba39-3ff0-406e-8fbf-bb5d3d31acd3"
      unitRef="usd">22927000</ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="ie6eb768e720b4c85b65f110f827cc1c4_D20220411-20220411"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzItMTAtMS0xLTEwMjM1Mg_83b1d837-1169-44ff-a5c9-b8bb501781d4"
      unitRef="usd">78077000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual
      contextRef="ie6eb768e720b4c85b65f110f827cc1c4_D20220411-20220411"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzItMTItMS0xLTEwMjM1Mg_c746c963-33dd-4cef-bdf6-dcc22e82f1ca"
      unitRef="usd">37822000</us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual>
    <us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual
      contextRef="ie6eb768e720b4c85b65f110f827cc1c4_D20220411-20220411"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzItMTQtMS0xLTEwMjM1Mg_a795e96c-3994-418b-8d3e-b55883e6436a"
      unitRef="usd">-1001000</us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="i1892b348668840409ac2b29a9b4efe0a_D20221219-20221219"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzUtNi0xLTEtMTAyMzUy_9a7f228c-5aa6-406b-b969-5a8956013114"
      unitRef="usd">23150000</us-gaap:PaymentsToAcquireBusinessesGross>
    <ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness
      contextRef="i1892b348668840409ac2b29a9b4efe0a_D20221219-20221219"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzUtOC0xLTEtMTAyMzUy_de98efc0-a100-4f64-987b-bde8d01d0e81"
      unitRef="usd">412000</ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="i1892b348668840409ac2b29a9b4efe0a_D20221219-20221219"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzUtMTAtMS0xLTEwMjM1Mg_2f94821f-b045-4496-81ab-2dad836650e2"
      unitRef="usd">23562000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual
      contextRef="i1892b348668840409ac2b29a9b4efe0a_D20221219-20221219"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzUtMTItMS0xLTEwMjM1Mg_0d443a53-6259-4245-acfb-e65be28e0f9c"
      unitRef="usd">658000</us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual>
    <us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual
      contextRef="i1892b348668840409ac2b29a9b4efe0a_D20221219-20221219"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzUtMTQtMS0xLTEwMjM1Mg_1a6dbd5b-e3d1-4c58-b794-b30110b1c6e0"
      unitRef="usd">-97000</us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="iea7705e474d24beea8cfced5133c968c_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzYtNi0xLTEtMTAyMzUy_d6ab07eb-ebb7-43d1-93b5-5a6eeed04673"
      unitRef="usd">35759000</us-gaap:PaymentsToAcquireBusinessesGross>
    <ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness
      contextRef="iea7705e474d24beea8cfced5133c968c_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzYtOC0xLTEtMTAyMzUy_4d72258a-5f67-4a9d-9102-31bb52e9eebb"
      unitRef="usd">3639000</ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="iea7705e474d24beea8cfced5133c968c_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzYtMTAtMS0xLTEwMjM1Mg_7a284ec7-f8db-43d0-94eb-114a56872f38"
      unitRef="usd">39398000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual
      contextRef="iea7705e474d24beea8cfced5133c968c_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzYtMTItMS0xLTEwMjM1Mg_ebdd9e3a-4984-45be-a66d-b76452f19b4f"
      unitRef="usd">22576000</us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual>
    <us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual
      contextRef="iea7705e474d24beea8cfced5133c968c_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzYtMTQtMS0xLTEwMjM1Mg_0e36c2b5-5a68-4f04-a0cb-43b83dc829d0"
      unitRef="usd">787000</us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzctNi0xLTEtMTAyMzUy_9df755f4-fbe4-4364-ada6-b56861004705"
      unitRef="usd">114059000</us-gaap:PaymentsToAcquireBusinessesGross>
    <ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzctOC0xLTEtMTAyMzUy_448f55cb-f4c4-42a5-b858-2db6ebe74f79"
      unitRef="usd">26978000</ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzctMTAtMS0xLTEwMjM1Mg_641b772c-bb2a-4a84-a652-05d30705aef7"
      unitRef="usd">141037000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzctMTItMS0xLTEwMjM1Mg_0b3f315c-15c2-43cc-9223-9af82817edec"
      unitRef="usd">61056000</us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual>
    <us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkYWM0MzcyZGRmZjQ0YTQ2YWFhMmIyYzgyYzAwZDg4Mi90YWJsZXJhbmdlOmRhYzQzNzJkZGZmNDRhNDZhYWEyYjJjODJjMDBkODgyXzctMTQtMS0xLTEwMjM1Mg_386b589d-f599-40c6-b762-0694c20e5d17"
      unitRef="usd">-311000</us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="i06c08f43586341e0919a0d465259db64_D20210301-20210301"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzEtNi0xLTEtMTAwMDAy_62bf1bdd-a642-4e5d-9a1a-a8f131c4e0cb"
      unitRef="usd">42098000</us-gaap:PaymentsToAcquireBusinessesGross>
    <ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness
      contextRef="i06c08f43586341e0919a0d465259db64_D20210301-20210301"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzEtOC0xLTEtMTAwMDAy_581dd29e-725d-4dc1-92c3-98685465cac6"
      unitRef="usd">5959000</ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="i06c08f43586341e0919a0d465259db64_D20210301-20210301"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzEtMTAtMS0xLTEwMDAwMg_7ded9843-27f6-412e-8407-ff4529a6a73f"
      unitRef="usd">48057000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual
      contextRef="i06c08f43586341e0919a0d465259db64_D20210301-20210301"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzEtMTItMS0xLTEwMDAwMg_e9e1200d-4968-455e-a402-789242af8d7b"
      unitRef="usd">36259000</us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual>
    <us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual
      contextRef="i06c08f43586341e0919a0d465259db64_D20210301-20210301"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzEtMTQtMS0xLTEwMDAwMg_1ea76a46-4ac6-49ed-a172-c1448399ebab"
      unitRef="usd">3373000</us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="ie5deb12bfd9740e49eff8493415dce66_D20210913-20210913"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzUtNi0xLTEtMTAwMDAy_01843982-8556-42ae-a87e-4d3aa8f7c4c4"
      unitRef="usd">26308000</us-gaap:PaymentsToAcquireBusinessesGross>
    <ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness
      contextRef="ie5deb12bfd9740e49eff8493415dce66_D20210913-20210913"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzUtOC0xLTEtMTAwMDAy_31f55dd2-0e4f-4243-9d72-4e386ee4dafe"
      unitRef="usd">5466000</ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="ie5deb12bfd9740e49eff8493415dce66_D20210913-20210913"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzUtMTAtMS0xLTEwMDAwMg_58e7ef46-4367-45e7-8858-f749ebeed1ea"
      unitRef="usd">31774000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual
      contextRef="ie5deb12bfd9740e49eff8493415dce66_D20210913-20210913"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzUtMTItMS0xLTEwMDAwMg_1207035a-82d5-408e-9b9b-168498399f79"
      unitRef="usd">6861000</us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual>
    <us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual
      contextRef="ie5deb12bfd9740e49eff8493415dce66_D20210913-20210913"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzUtMTQtMS0xLTEwMDAwMg_51d110c7-c3bf-4877-90da-74e9c5ce87fd"
      unitRef="usd">-119000</us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="i48c7fbbb47c54999a359c177c6085728_D20211212-20211212"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzgtNi0xLTEtMTAwMDAy_428d6cd0-2b91-4d41-9ab3-6b73e01c4a05"
      unitRef="usd">119490000</us-gaap:PaymentsToAcquireBusinessesGross>
    <ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness
      contextRef="i48c7fbbb47c54999a359c177c6085728_D20211212-20211212"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzgtOC0xLTEtMTAwMDAy_2f2c423e-2d7e-4092-b9af-393e5176f9d3"
      unitRef="usd">6631000</ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="i48c7fbbb47c54999a359c177c6085728_D20211212-20211212"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzgtMTAtMS0xLTEwMDAwMg_052aa2bc-bf55-40bd-8aa2-73b954944737"
      unitRef="usd">126121000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual
      contextRef="i48c7fbbb47c54999a359c177c6085728_D20211212-20211212"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzgtMTItMS0xLTEwMDAwMg_7e77b411-c29e-4d75-9234-a63dad33eeec"
      unitRef="usd">3707000</us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual>
    <us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual
      contextRef="i48c7fbbb47c54999a359c177c6085728_D20211212-20211212"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzgtMTQtMS0xLTEwMDAwMg_875ce213-e183-430e-aa79-6db661bd1a8f"
      unitRef="usd">-225000</us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="i19488ffc40d7436687f44b5b09748ede_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzktNi0xLTEtMTAwMDAy_55a93d4b-dbb8-46d3-a67d-cb07331b2fe7"
      unitRef="usd">55119000</us-gaap:PaymentsToAcquireBusinessesGross>
    <ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness
      contextRef="i19488ffc40d7436687f44b5b09748ede_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzktOC0xLTEtMTAwMDAy_3179c099-6ebb-49f8-8dec-1e80c668dffb"
      unitRef="usd">9835000</ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="i19488ffc40d7436687f44b5b09748ede_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzktMTAtMS0xLTEwMDAwMg_d0a2f30d-7c05-4ba1-9733-372ff4c9292f"
      unitRef="usd">64954000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual
      contextRef="i19488ffc40d7436687f44b5b09748ede_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzktMTItMS0xLTEwMDAwMg_c3191e39-76a5-4af0-a324-d40139696fdc"
      unitRef="usd">35604000</us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual>
    <us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual
      contextRef="i19488ffc40d7436687f44b5b09748ede_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzktMTQtMS0xLTEwMDAwMg_5a2c90f4-3e47-4d05-9c18-0d4df5640f72"
      unitRef="usd">-390000</us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzEwLTYtMS0xLTEwMDAwMg_63dbd0ab-0821-4b4a-97af-5a9330f5bcd1"
      unitRef="usd">243015000</us-gaap:PaymentsToAcquireBusinessesGross>
    <ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzEwLTgtMS0xLTEwMDAwMg_d095e8a7-5b79-4ed4-9eee-ad07587abd7c"
      unitRef="usd">27891000</ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzEwLTEwLTEtMS0xMDAwMDI_62acc3b4-ac9f-44da-87c2-9b18d9136d34"
      unitRef="usd">270906000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzEwLTEyLTEtMS0xMDAwMDI_6281bb67-be44-4973-9817-78a43d011f51"
      unitRef="usd">82431000</us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual>
    <us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpjYTA5NjIyYzdjZjQ0ZTAwYWIzYWY1Zjc5MTY0OGJkMS90YWJsZXJhbmdlOmNhMDk2MjJjN2NmNDRlMDBhYjNhZjVmNzkxNjQ4YmQxXzEwLTE0LTEtMS0xMDAwMDI_8f385256-2933-4935-8e28-7ea99e7c61c5"
      unitRef="usd">2639000</us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="i02c2ac93900744dfabba50ee8183f826_D20201013-20201013"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYjJiYWUxMTBjODE0YmU3ODQ3ZmM5ZmI3MTA0MTRlMS90YWJsZXJhbmdlOmFiMmJhZTExMGM4MTRiZTc4NDdmYzlmYjcxMDQxNGUxXzQtNi0xLTEtMTAwMDAy_270ca5f0-1b86-419d-be35-426e4908d3dc"
      unitRef="usd">16900000</us-gaap:PaymentsToAcquireBusinessesGross>
    <ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness
      contextRef="i02c2ac93900744dfabba50ee8183f826_D20201013-20201013"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYjJiYWUxMTBjODE0YmU3ODQ3ZmM5ZmI3MTA0MTRlMS90YWJsZXJhbmdlOmFiMmJhZTExMGM4MTRiZTc4NDdmYzlmYjcxMDQxNGUxXzQtOC0xLTEtMTAwMDAy_08e4feeb-6ee4-4c8c-bad7-9a529b3a796f"
      unitRef="usd">3598000</ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="i02c2ac93900744dfabba50ee8183f826_D20201013-20201013"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYjJiYWUxMTBjODE0YmU3ODQ3ZmM5ZmI3MTA0MTRlMS90YWJsZXJhbmdlOmFiMmJhZTExMGM4MTRiZTc4NDdmYzlmYjcxMDQxNGUxXzQtMTAtMS0xLTEwMDAwMg_3c8280d5-d270-4db0-811f-834248d76d89"
      unitRef="usd">20498000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual
      contextRef="i02c2ac93900744dfabba50ee8183f826_D20201013-20201013"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYjJiYWUxMTBjODE0YmU3ODQ3ZmM5ZmI3MTA0MTRlMS90YWJsZXJhbmdlOmFiMmJhZTExMGM4MTRiZTc4NDdmYzlmYjcxMDQxNGUxXzQtMTItMS0xLTEwMDAwMg_5eaeb080-2a55-492f-af2c-d96d42114811"
      unitRef="usd">4798000</us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual>
    <us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual
      contextRef="i02c2ac93900744dfabba50ee8183f826_D20201013-20201013"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYjJiYWUxMTBjODE0YmU3ODQ3ZmM5ZmI3MTA0MTRlMS90YWJsZXJhbmdlOmFiMmJhZTExMGM4MTRiZTc4NDdmYzlmYjcxMDQxNGUxXzQtMTQtMS0xLTEwMDAwMg_c67e734c-aeb7-4971-90e4-3b4ca3687ff5"
      unitRef="usd">449000</us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="i5a1d37cf66e64283aea0cb97c7d46f4a_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYjJiYWUxMTBjODE0YmU3ODQ3ZmM5ZmI3MTA0MTRlMS90YWJsZXJhbmdlOmFiMmJhZTExMGM4MTRiZTc4NDdmYzlmYjcxMDQxNGUxXzctNi0xLTEtMTAwMDAy_83930cc4-6b6f-4b82-b115-985fb5eeb404"
      unitRef="usd">59546000</us-gaap:PaymentsToAcquireBusinessesGross>
    <ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness
      contextRef="i5a1d37cf66e64283aea0cb97c7d46f4a_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYjJiYWUxMTBjODE0YmU3ODQ3ZmM5ZmI3MTA0MTRlMS90YWJsZXJhbmdlOmFiMmJhZTExMGM4MTRiZTc4NDdmYzlmYjcxMDQxNGUxXzctOC0xLTEtMTAwMDAy_f291d1a8-5a71-4be1-acda-1545f796eece"
      unitRef="usd">10488000</ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="i5a1d37cf66e64283aea0cb97c7d46f4a_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYjJiYWUxMTBjODE0YmU3ODQ3ZmM5ZmI3MTA0MTRlMS90YWJsZXJhbmdlOmFiMmJhZTExMGM4MTRiZTc4NDdmYzlmYjcxMDQxNGUxXzctMTAtMS0xLTEwMDAwMg_540e92c6-1425-4058-9b05-5b9054399d0d"
      unitRef="usd">70034000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual
      contextRef="i5a1d37cf66e64283aea0cb97c7d46f4a_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYjJiYWUxMTBjODE0YmU3ODQ3ZmM5ZmI3MTA0MTRlMS90YWJsZXJhbmdlOmFiMmJhZTExMGM4MTRiZTc4NDdmYzlmYjcxMDQxNGUxXzctMTItMS0xLTEwMDAwMg_03d94c30-eb3e-42b7-8c16-8af45bb4a24d"
      unitRef="usd">35696000</us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual>
    <us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual
      contextRef="i5a1d37cf66e64283aea0cb97c7d46f4a_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYjJiYWUxMTBjODE0YmU3ODQ3ZmM5ZmI3MTA0MTRlMS90YWJsZXJhbmdlOmFiMmJhZTExMGM4MTRiZTc4NDdmYzlmYjcxMDQxNGUxXzctMTQtMS0xLTEwMDAwMg_4ea41369-77c9-456f-a9c5-cb68e98c032c"
      unitRef="usd">1443000</us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYjJiYWUxMTBjODE0YmU3ODQ3ZmM5ZmI3MTA0MTRlMS90YWJsZXJhbmdlOmFiMmJhZTExMGM4MTRiZTc4NDdmYzlmYjcxMDQxNGUxXzgtNi0xLTEtMTAwMDAy_4e4a1a44-e267-48b1-bbdc-2cf4f47fadda"
      unitRef="usd">76446000</us-gaap:PaymentsToAcquireBusinessesGross>
    <ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYjJiYWUxMTBjODE0YmU3ODQ3ZmM5ZmI3MTA0MTRlMS90YWJsZXJhbmdlOmFiMmJhZTExMGM4MTRiZTc4NDdmYzlmYjcxMDQxNGUxXzgtOC0xLTEtMTAwMDAy_72f075ee-978d-483e-a915-ff3d53ed8949"
      unitRef="usd">14086000</ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYjJiYWUxMTBjODE0YmU3ODQ3ZmM5ZmI3MTA0MTRlMS90YWJsZXJhbmdlOmFiMmJhZTExMGM4MTRiZTc4NDdmYzlmYjcxMDQxNGUxXzgtMTAtMS0xLTEwMDAwMg_ba824f3d-1720-4e8e-a46c-83df72f2f3f0"
      unitRef="usd">90532000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYjJiYWUxMTBjODE0YmU3ODQ3ZmM5ZmI3MTA0MTRlMS90YWJsZXJhbmdlOmFiMmJhZTExMGM4MTRiZTc4NDdmYzlmYjcxMDQxNGUxXzgtMTItMS0xLTEwMDAwMg_3d4e229f-0c69-4778-b06d-5d37c09c2e22"
      unitRef="usd">40494000</us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual>
    <us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYjJiYWUxMTBjODE0YmU3ODQ3ZmM5ZmI3MTA0MTRlMS90YWJsZXJhbmdlOmFiMmJhZTExMGM4MTRiZTc4NDdmYzlmYjcxMDQxNGUxXzgtMTQtMS0xLTEwMDAwMg_8f080c60-4f7e-4bf0-b5ec-12baa227a190"
      unitRef="usd">1892000</us-gaap:BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual>
    <us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzUxMDc_8f0f7f08-9e94-4b18-92fe-6657dfa1447b">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The estimated fair values of the assets acquired and liabilities assumed for the acquisitions, as well as total purchase prices and cash paid, approximated the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:7pt;padding-left:5.62pt;padding-right:5.62pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.122%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:46.097%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.731%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.389%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.436%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.389%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.731%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.389%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.738%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;CAS&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;ABS&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Estimated fair values:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;243&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;193&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;87&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;523&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accounts receivable&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,502&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,777&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,800&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,079&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Inventories&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,784&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;853&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,456&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,093&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other current assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;576&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;485&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;71&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,132&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,590&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,269&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,498&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,357&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease right-of-use asset &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;844&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;66&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;910&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Intangibles&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;34,900&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,800&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,365&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;65,065&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,594&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,546&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,154&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;49,294&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other non-current assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;56&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;56&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accounts payable and other current liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,387)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,677)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,133)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(10,197)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred income tax liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,455)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,455)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Income tax payable&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(229)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(229)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other long-term liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(569)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(22)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(591)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fair value of assets acquired and purchase price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;78,077&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,562&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39,398&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;141,037&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less seller obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,927&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;412&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,639&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,978&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash paid&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;55,150&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,150&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;35,759&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;114,059&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:7pt;padding-right:11.25pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:32.964%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.624%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="27" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;IWI&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Five Star&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;AMD&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Estimated fair values:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;168&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,472&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;67&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,707&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accounts receivable&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,122&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,583&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,393&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,584&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31,682&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Inventories&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,157&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,399&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,540&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,786&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,882&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other current assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,014&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;330&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,975&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,319&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;796&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,161&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,133&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,124&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,214&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease right of-use-asset&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;199&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;199&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Intangibles&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,200&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,400&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;52,800&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31,554&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;126,954&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,282&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,626&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;56,327&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,122&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;107,357&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other non-current assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;264&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;417&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;681&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accounts payable and other current liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(8,416)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,170)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(184)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,809)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(16,579)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred income tax liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,089)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,089)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other long-term liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,530)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(27)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(87)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(777)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,421)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fair value of assets acquired and purchase price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;48,057&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31,774&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;126,121&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;64,954&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;270,906&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less seller obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,959&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,466&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,631&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,835&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,891&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash paid&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;42,098&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26,308&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;119,490&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;55,119&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;243,015&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.572%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.622%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;ICON&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Estimated fair values:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accounts receivable&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,828&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,777&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,605&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Inventories&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;243&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,518&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,761&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other current assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;675&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;779&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,454&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;380&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,482&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,862&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Intangibles&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,830&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;34,393&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;46,223&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,870&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,435&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,305&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other non-current assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;145&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;96&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;241&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accounts payable and other current liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(445)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,196)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,641)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other long-term liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(28)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(250)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(278)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fair value of assets acquired and purchase price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,498&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;70,034&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;90,532&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less seller obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,598&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,488&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,086&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash paid&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,900&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;59,546&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;76,446&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="i4ea0b889e5434d22b1941f98869bcd38_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzMtMy0xLTEtMTAyNTY0_a75e6250-d120-4a65-99fd-ceb355a9977d"
      unitRef="usd">243000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="i6799a626e2724e80b54d415eebad9174_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzMtOS0xLTEtMTAyNTY0_f7c0d12c-a284-48c6-a934-60e409d1f93b"
      unitRef="usd">193000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="ic3c81c2eb9544b3892643cc586b11a5b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzMtMTEtMS0xLTEwMjU2NA_e785e050-3884-419e-8580-e9fc1c1efd6c"
      unitRef="usd">87000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="i1b1456749c4141e8935d5eff49c409fb_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzMtMTMtMS0xLTEwMjU2NA_5823a08b-9ede-44ec-a55b-0ef9300fde81"
      unitRef="usd">523000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables
      contextRef="i4ea0b889e5434d22b1941f98869bcd38_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzQtMy0xLTEtMTAyNTY0_d09ae1ed-892b-4412-bcb3-5b25c4d4a162"
      unitRef="usd">3502000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables
      contextRef="i6799a626e2724e80b54d415eebad9174_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzQtOS0xLTEtMTAyNTY0_8c53f5e0-8965-4748-a562-ee13135970da"
      unitRef="usd">2777000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables
      contextRef="ic3c81c2eb9544b3892643cc586b11a5b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzQtMTEtMS0xLTEwMjU2NA_af6bb4bd-c50f-49db-ab1e-89404cadae3c"
      unitRef="usd">5800000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables
      contextRef="i1b1456749c4141e8935d5eff49c409fb_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzQtMTMtMS0xLTEwMjU2NA_00393b99-59d8-44a7-9a88-b3286f538b9e"
      unitRef="usd">12079000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory
      contextRef="i4ea0b889e5434d22b1941f98869bcd38_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzUtMy0xLTEtMTAyNTY0_86638f27-80b7-4000-95af-7c447a1ba472"
      unitRef="usd">13784000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory
      contextRef="i6799a626e2724e80b54d415eebad9174_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzUtOS0xLTEtMTAyNTY0_b417941a-c154-45ea-87e7-409cdb4fdcdf"
      unitRef="usd">853000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory
      contextRef="ic3c81c2eb9544b3892643cc586b11a5b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzUtMTEtMS0xLTEwMjU2NA_011bcc7c-af02-45f3-9025-199ded88f574"
      unitRef="usd">2456000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory
      contextRef="i1b1456749c4141e8935d5eff49c409fb_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzUtMTMtMS0xLTEwMjU2NA_9875a6ae-5efd-424e-b9a1-82fece6291d4"
      unitRef="usd">17093000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther
      contextRef="i4ea0b889e5434d22b1941f98869bcd38_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzYtMy0xLTEtMTAyNTY0_f1403b43-617d-4735-aed1-0656020310d0"
      unitRef="usd">576000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther
      contextRef="i6799a626e2724e80b54d415eebad9174_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzYtOS0xLTEtMTAyNTY0_e7b14d68-3ba4-4b76-9915-e1c21f5df125"
      unitRef="usd">485000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther
      contextRef="ic3c81c2eb9544b3892643cc586b11a5b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzYtMTEtMS0xLTEwMjU2NA_3ce10a4b-c3a2-42df-baed-1a81b775c6d5"
      unitRef="usd">71000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther
      contextRef="i1b1456749c4141e8935d5eff49c409fb_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzYtMTMtMS0xLTEwMjU2NA_dc3e812f-ea05-4c86-b2d0-c4ec957be0c0"
      unitRef="usd">1132000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="i4ea0b889e5434d22b1941f98869bcd38_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzctMy0xLTEtMTAyNTY0_ee9b91bd-8c4f-4579-9edc-25c081a73d06"
      unitRef="usd">2590000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="i6799a626e2724e80b54d415eebad9174_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzctOS0xLTEtMTAyNTY0_5e02e681-d59b-45ce-b54b-f35f959796df"
      unitRef="usd">1269000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="ic3c81c2eb9544b3892643cc586b11a5b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzctMTEtMS0xLTEwMjU2NA_942820f2-ea53-4b40-ba18-a14cac5f9a39"
      unitRef="usd">4498000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="i1b1456749c4141e8935d5eff49c409fb_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzctMTMtMS0xLTEwMjU2NA_57c0829f-6e28-4494-ba82-9554eee2eab1"
      unitRef="usd">8357000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment>
    <ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset
      contextRef="i4ea0b889e5434d22b1941f98869bcd38_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzgtMy0xLTEtMTAyNTY0_23463a79-63a9-4abd-b723-1046e3cd7695"
      unitRef="usd">844000</ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset>
    <ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset
      contextRef="i6799a626e2724e80b54d415eebad9174_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzgtOS0xLTEtMTAyNTY0_2e5f3236-b505-476a-bb66-8e2f5c7abcf7"
      unitRef="usd">0</ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset>
    <ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset
      contextRef="ic3c81c2eb9544b3892643cc586b11a5b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzgtMTEtMS0xLTEwMjU2NA_e009e5fb-c20f-41e9-b5f3-9d9702ae377f"
      unitRef="usd">66000</ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset>
    <ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset
      contextRef="i1b1456749c4141e8935d5eff49c409fb_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzgtMTMtMS0xLTEwMjU2NA_2de6ce0b-30c7-426a-bf93-781d364e9871"
      unitRef="usd">910000</ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="i4ea0b889e5434d22b1941f98869bcd38_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzktMy0xLTEtMTAyNTY0_d0d2393c-3393-4365-9f11-f060130d21fc"
      unitRef="usd">34900000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="i6799a626e2724e80b54d415eebad9174_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzktOS0xLTEtMTAyNTY0_157c6609-295c-469b-b659-d3db8b039077"
      unitRef="usd">12800000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="ic3c81c2eb9544b3892643cc586b11a5b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzktMTEtMS0xLTEwMjU2NA_0b713989-643f-4a5a-b0be-b763f144f0ce"
      unitRef="usd">17365000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="i1b1456749c4141e8935d5eff49c409fb_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzktMTMtMS0xLTEwMjU2NA_7be9693e-72f7-4a9f-9b25-839970daf228"
      unitRef="usd">65065000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:Goodwill
      contextRef="i4ea0b889e5434d22b1941f98869bcd38_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzEwLTMtMS0xLTEwMjU2NA_00391024-4753-422a-988e-68d8a16015df"
      unitRef="usd">27594000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i6799a626e2724e80b54d415eebad9174_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzEwLTktMS0xLTEwMjU2NA_5cf3c2b8-d601-4dbe-9f53-3d72c01c9359"
      unitRef="usd">10546000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="ic3c81c2eb9544b3892643cc586b11a5b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzEwLTExLTEtMS0xMDI1NjQ_12ba517d-87b8-4202-90d9-6a5eccb8b1bd"
      unitRef="usd">11154000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i1b1456749c4141e8935d5eff49c409fb_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzEwLTEzLTEtMS0xMDI1NjQ_1c5d828c-04f6-49cf-b43c-4fae945f8a05"
      unitRef="usd">49294000</us-gaap:Goodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets
      contextRef="i4ea0b889e5434d22b1941f98869bcd38_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzExLTMtMS0xLTEwMjU2NA_b4768244-4a25-4a17-90cc-f5af3157f3ab"
      unitRef="usd">0</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets
      contextRef="i6799a626e2724e80b54d415eebad9174_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzExLTktMS0xLTEwMjU2NA_e912cc47-859b-49ee-8ef3-4f42ba758f2c"
      unitRef="usd">0</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets
      contextRef="ic3c81c2eb9544b3892643cc586b11a5b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzExLTExLTEtMS0xMDI1NjQ_35addc61-cb36-43f6-ae7d-4ab0f1da41c3"
      unitRef="usd">56000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets
      contextRef="i1b1456749c4141e8935d5eff49c409fb_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzExLTEzLTEtMS0xMDI1NjQ_0afd4005-6d93-4e28-b65c-d0945b688e55"
      unitRef="usd">56000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets>
    <ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities
      contextRef="i4ea0b889e5434d22b1941f98869bcd38_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzEyLTMtMS0xLTEwMjU2NA_c73766b9-ed89-4840-85c2-b0661662ba88"
      unitRef="usd">5387000</ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities>
    <ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities
      contextRef="i6799a626e2724e80b54d415eebad9174_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzEyLTktMS0xLTEwMjU2NA_329f66b3-b048-496c-9b00-022d625f5de4"
      unitRef="usd">2677000</ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities>
    <ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities
      contextRef="ic3c81c2eb9544b3892643cc586b11a5b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzEyLTExLTEtMS0xMDI1NjQ_99d89425-0b76-4924-bcae-fc89ad5cccda"
      unitRef="usd">2133000</ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities>
    <ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities
      contextRef="i1b1456749c4141e8935d5eff49c409fb_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzEyLTEzLTEtMS0xMDI1NjQ_fa7d2e52-aed6-43b2-8b6d-283c2d66a05d"
      unitRef="usd">10197000</ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities
      contextRef="i4ea0b889e5434d22b1941f98869bcd38_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzEzLTMtMS0xLTExNTI5NQ_a6d526c6-4422-4e53-86c4-1ac83e5c980b"
      unitRef="usd">0</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities
      contextRef="i6799a626e2724e80b54d415eebad9174_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzEzLTktMS0xLTExNTI5NQ_4359a29f-4c00-4a81-8164-d929ce250f1e"
      unitRef="usd">2455000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities
      contextRef="ic3c81c2eb9544b3892643cc586b11a5b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzEzLTExLTEtMS0xMTUyOTU_45b89354-e869-47e3-8ab1-8acfd0e9af35"
      unitRef="usd">0</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities
      contextRef="i1b1456749c4141e8935d5eff49c409fb_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzEzLTEzLTEtMS0xMTUyOTU_694f9597-158c-4aeb-a33a-a857d24033d6"
      unitRef="usd">2455000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities>
    <ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable
      contextRef="i4ea0b889e5434d22b1941f98869bcd38_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzEzLTMtMS0xLTEwMjU2NA_dc846809-3e7f-4d62-8ced-a4e7b644bae7"
      unitRef="usd">0</ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable>
    <ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable
      contextRef="i6799a626e2724e80b54d415eebad9174_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzEzLTktMS0xLTEwMjU2NA_2a640823-b158-43a2-b540-4cf22908408c"
      unitRef="usd">229000</ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable>
    <ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable
      contextRef="ic3c81c2eb9544b3892643cc586b11a5b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzEzLTExLTEtMS0xMDI1NjQ_5e7db9d5-069d-41d8-95cf-1d14858c72ee"
      unitRef="usd">0</ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable>
    <ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable
      contextRef="i1b1456749c4141e8935d5eff49c409fb_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzEzLTEzLTEtMS0xMDI1NjQ_7959f8bf-1e82-414b-a97d-da903d2ca018"
      unitRef="usd">229000</ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther
      contextRef="i4ea0b889e5434d22b1941f98869bcd38_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzE1LTMtMS0xLTEwMjU2NA_5c1896d1-b573-41de-ba98-8a84f8aee8c2"
      unitRef="usd">569000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther
      contextRef="i6799a626e2724e80b54d415eebad9174_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzE1LTktMS0xLTEwMjU2NA_48a67b65-ac68-448c-8897-0db55bb2324e"
      unitRef="usd">0</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther
      contextRef="ic3c81c2eb9544b3892643cc586b11a5b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzE1LTExLTEtMS0xMDI1NjQ_f87b862b-c4eb-4ffa-a852-305e0d4004c5"
      unitRef="usd">22000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther
      contextRef="i1b1456749c4141e8935d5eff49c409fb_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzE1LTEzLTEtMS0xMDI1NjQ_1aefc390-a711-42ee-a7bc-1b4d7ce06af2"
      unitRef="usd">591000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet
      contextRef="i4ea0b889e5434d22b1941f98869bcd38_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzE2LTMtMS0xLTEwMjU2NA_1c97199e-852e-46c7-8e05-f252ef3e344c"
      unitRef="usd">78077000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet
      contextRef="i6799a626e2724e80b54d415eebad9174_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzE2LTktMS0xLTEwMjU2NA_caadcae6-3ec2-431f-b075-9e0f85b3db31"
      unitRef="usd">23562000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet
      contextRef="ic3c81c2eb9544b3892643cc586b11a5b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzE2LTExLTEtMS0xMDI1NjQ_c6460710-3940-44c7-8ebd-7d56492ba33d"
      unitRef="usd">39398000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet
      contextRef="i1b1456749c4141e8935d5eff49c409fb_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzE2LTEzLTEtMS0xMDI1NjQ_8a01b8ad-7787-4557-8154-d6ac8d6ab54b"
      unitRef="usd">141037000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet>
    <ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness
      contextRef="i17e40893dd0a4213a1a40822606dfbc2_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzE3LTMtMS0xLTEwMjU2NA_a83b4d69-5f1d-46bd-87f3-d8dd14739980"
      unitRef="usd">22927000</ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness>
    <ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness
      contextRef="i1b396f3cac964335a636f6f33458525c_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzE3LTktMS0xLTEwMjU2NA_609a36d0-9d94-450d-bcc7-7724703af46e"
      unitRef="usd">412000</ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness>
    <ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness
      contextRef="iea7705e474d24beea8cfced5133c968c_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzE3LTExLTEtMS0xMDI1NjQ_8d537887-ad84-4a26-9710-599dd49ee325"
      unitRef="usd">3639000</ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness>
    <ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness
      contextRef="i276eed2b955047a5a439cf9a1c6de1cd_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzE3LTEzLTEtMS0xMDI1NjQ_7d5f4ced-8b57-4a71-b749-e5ef66b8d9da"
      unitRef="usd">26978000</ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="i17e40893dd0a4213a1a40822606dfbc2_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzE4LTMtMS0xLTEwMjU2NA_1ad380d1-5298-4a58-943c-78cb71b8c935"
      unitRef="usd">55150000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="i1b396f3cac964335a636f6f33458525c_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzE4LTktMS0xLTEwMjU2NA_5a9e3b1b-06ca-4da3-97fe-e3fc4431e011"
      unitRef="usd">23150000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="iea7705e474d24beea8cfced5133c968c_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzE4LTExLTEtMS0xMDI1NjQ_39ea6aee-c334-4f0c-b509-100d3a838945"
      unitRef="usd">35759000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="i276eed2b955047a5a439cf9a1c6de1cd_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpiOGM0OGUzYzlmODM0YTJhYjkyNjE4YTQ1MGFhZDk4Mi90YWJsZXJhbmdlOmI4YzQ4ZTNjOWY4MzRhMmFiOTI2MThhNDUwYWFkOTgyXzE4LTEzLTEtMS0xMDI1NjQ_d7cfa7da-5591-4dbe-8b32-5b8ac2c117d1"
      unitRef="usd">114059000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="i37461516afa443f88fce8a7675608fdd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzQtMS0xLTEtMTAwMDAy_2c7cffc5-c007-4297-99fa-008b0f6c8fbb"
      unitRef="usd">168000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="i3f72dbb0d5fd4dcb9005c5f0671dda91_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzQtOS0xLTEtMTAwMDAy_e2ea2a35-6c3b-47d7-8551-9d109aabfcc8"
      unitRef="usd">1472000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="ief0682dd5a7e47179c4aa045d07dca78_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzQtMTUtMS0xLTEwMDAwMg_a7a72e02-808f-41ef-b813-9664ead01ca4"
      unitRef="usd">0</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="i1fea681f0af84e9cb42e995810f12b15_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzQtMTctMS0xLTEwMDAwMg_39d4c1ed-7726-4527-aed9-d4f8532a746a"
      unitRef="usd">67000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="i54c7aecd583b422db1836ea36b1df9ac_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzQtMTktMS0xLTEwMDAwMg_c8598edd-9432-4e79-9390-ab49391cb502"
      unitRef="usd">1707000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables
      contextRef="i37461516afa443f88fce8a7675608fdd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzUtMS0xLTEtMTAwMDAy_5fb68130-2e51-4a00-87fd-dcdb42eee6bc"
      unitRef="usd">5122000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables
      contextRef="i3f72dbb0d5fd4dcb9005c5f0671dda91_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzUtOS0xLTEtMTAwMDAy_fc5270a6-e9c0-4ec9-a889-1fc788bc4214"
      unitRef="usd">4583000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables
      contextRef="ief0682dd5a7e47179c4aa045d07dca78_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzUtMTUtMS0xLTEwMDAwMg_abc446ac-1a41-4d18-8158-acd0711a0568"
      unitRef="usd">8393000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables
      contextRef="i1fea681f0af84e9cb42e995810f12b15_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzUtMTctMS0xLTEwMDAwMg_a5d638a0-eab1-4b97-8784-a9898882765d"
      unitRef="usd">13584000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables
      contextRef="i54c7aecd583b422db1836ea36b1df9ac_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzUtMTktMS0xLTEwMDAwMg_c7a25a1f-3878-48ea-bf21-a6d29dfd00ee"
      unitRef="usd">31682000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory
      contextRef="i37461516afa443f88fce8a7675608fdd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzYtMS0xLTEtMTAwMDAy_454f71db-ee0d-44c7-b44b-20ba87eb5c25"
      unitRef="usd">1157000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory
      contextRef="i3f72dbb0d5fd4dcb9005c5f0671dda91_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzYtOS0xLTEtMTAwMDAy_fec2b091-8415-451c-9b01-d4f07de6dbd8"
      unitRef="usd">1399000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory
      contextRef="ief0682dd5a7e47179c4aa045d07dca78_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzYtMTUtMS0xLTEwMDAwMg_4fd9312e-9351-46a5-8196-7deef76f94a3"
      unitRef="usd">7540000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory
      contextRef="i1fea681f0af84e9cb42e995810f12b15_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzYtMTctMS0xLTEwMDAwMg_3cce2cfa-d6db-4eb2-812d-f4b040235965"
      unitRef="usd">1786000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory
      contextRef="i54c7aecd583b422db1836ea36b1df9ac_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzYtMTktMS0xLTEwMDAwMg_e86a7abd-5ea2-485c-92a7-a82cb5f9df1e"
      unitRef="usd">11882000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther
      contextRef="i37461516afa443f88fce8a7675608fdd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzctMS0xLTEtMTAwMDAy_bced11bc-cb9c-476b-b52c-5b0997dd0b59"
      unitRef="usd">3014000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther
      contextRef="i3f72dbb0d5fd4dcb9005c5f0671dda91_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzctOS0xLTEtMTAwMDAy_4a4967a9-1afc-4781-8e91-95191c90df14"
      unitRef="usd">330000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther
      contextRef="ief0682dd5a7e47179c4aa045d07dca78_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzctMTUtMS0xLTEwMDAwMg_3ca2a5cc-be0d-4eb9-9685-46a9bc0ea08f"
      unitRef="usd">0</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther
      contextRef="i1fea681f0af84e9cb42e995810f12b15_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzctMTctMS0xLTEwMDAwMg_bd69cdf3-62e6-4ebe-9e7e-4cc690fd5121"
      unitRef="usd">1975000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther
      contextRef="i54c7aecd583b422db1836ea36b1df9ac_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzctMTktMS0xLTEwMDAwMg_2de75b7d-b354-4815-97b5-26756cd02807"
      unitRef="usd">5319000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="i37461516afa443f88fce8a7675608fdd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzgtMS0xLTEtMTAwMDAy_c978d840-249f-415d-be26-17a5c1f05b88"
      unitRef="usd">796000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="i3f72dbb0d5fd4dcb9005c5f0671dda91_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzgtOS0xLTEtMTAwMDAy_218477c4-f612-409f-b52b-e4814e070aa9"
      unitRef="usd">1161000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="ief0682dd5a7e47179c4aa045d07dca78_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzgtMTUtMS0xLTEwMDAwMg_08bd423e-d92c-4674-b7a4-fe3ea445b9e4"
      unitRef="usd">1133000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="i1fea681f0af84e9cb42e995810f12b15_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzgtMTctMS0xLTEwMDAwMg_c5511e0c-e20f-47f2-8bde-19e8e0205637"
      unitRef="usd">4124000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="i54c7aecd583b422db1836ea36b1df9ac_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzgtMTktMS0xLTEwMDAwMg_fa0cbe13-cafd-45d9-8d09-32e3534c99db"
      unitRef="usd">7214000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment>
    <ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset
      contextRef="i37461516afa443f88fce8a7675608fdd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzktMS0xLTEtMTA3OTM5_c64429af-8d6a-4452-8a4d-944aa4c97082"
      unitRef="usd">0</ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset>
    <ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset
      contextRef="i3f72dbb0d5fd4dcb9005c5f0671dda91_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzktOS0xLTEtMTA3OTM5_d87ae8e5-49a5-453e-a7a7-64047315073e"
      unitRef="usd">0</ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset>
    <ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset
      contextRef="ief0682dd5a7e47179c4aa045d07dca78_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzktMTUtMS0xLTEwNzkzOQ_10b15884-e47a-44d2-9e03-a5bc3d848070"
      unitRef="usd">199000</ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset>
    <ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset
      contextRef="i1fea681f0af84e9cb42e995810f12b15_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzktMTctMS0xLTEwNzk0OQ_1b017fd6-7396-4e60-a2c7-827760b14877"
      unitRef="usd">0</ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset>
    <ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset
      contextRef="i54c7aecd583b422db1836ea36b1df9ac_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzktMTktMS0xLTEwNzk0OQ_e6d77c91-77c6-45dc-813e-95b49e727802"
      unitRef="usd">199000</ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="i37461516afa443f88fce8a7675608fdd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzktMS0xLTEtMTAwMDAy_951b767d-dc0a-435d-ac12-39977f4ee71c"
      unitRef="usd">25200000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="i3f72dbb0d5fd4dcb9005c5f0671dda91_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzktOS0xLTEtMTAwMDAy_c73e4645-ca5f-464e-aa89-0534266881ad"
      unitRef="usd">17400000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="ief0682dd5a7e47179c4aa045d07dca78_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzktMTUtMS0xLTEwMDAwMg_2e8af3bd-d6b4-4513-a594-6fca50f7f544"
      unitRef="usd">52800000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="i1fea681f0af84e9cb42e995810f12b15_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzktMTctMS0xLTEwMDAwMg_fc3e91d4-fefd-4913-9f7d-fbcd3a9b72ed"
      unitRef="usd">31554000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="i54c7aecd583b422db1836ea36b1df9ac_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzktMTktMS0xLTEwMDAwMg_f70fd448-2c1a-4b71-aa25-81c2720ac473"
      unitRef="usd">126954000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:Goodwill
      contextRef="i37461516afa443f88fce8a7675608fdd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzEwLTEtMS0xLTEwMDAwMg_fdca4623-a3fb-47d1-ad6a-01030093e5f8"
      unitRef="usd">23282000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i3f72dbb0d5fd4dcb9005c5f0671dda91_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzEwLTktMS0xLTEwMDAwMg_64a6d1b1-f7ef-4be1-a579-113c2c57a656"
      unitRef="usd">6626000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="ief0682dd5a7e47179c4aa045d07dca78_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzEwLTE1LTEtMS0xMDAwMDI_0bcd5742-b61b-436d-af81-a75b20b7bbd1"
      unitRef="usd">56327000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i1fea681f0af84e9cb42e995810f12b15_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzEwLTE3LTEtMS0xMDAwMDI_6ab98606-d7a1-4302-bf91-b502860d23ba"
      unitRef="usd">21122000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i54c7aecd583b422db1836ea36b1df9ac_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzEwLTE5LTEtMS0xMDAwMDI_5bee8cad-d83a-44ae-9b71-74e6cc12db9f"
      unitRef="usd">107357000</us-gaap:Goodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets
      contextRef="i37461516afa443f88fce8a7675608fdd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzExLTEtMS0xLTEwMDAwMg_9cef5cfc-df64-45db-883f-b56e56bdda4d"
      unitRef="usd">264000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets
      contextRef="i3f72dbb0d5fd4dcb9005c5f0671dda91_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzExLTktMS0xLTEwMDAwMg_61da9c58-fbc2-4fd5-bf1f-6c333cf69e30"
      unitRef="usd">0</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets
      contextRef="ief0682dd5a7e47179c4aa045d07dca78_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzExLTE1LTEtMS0xMDAwMDI_015b61e4-e57d-4bf0-bcf7-d06d5ab52c0f"
      unitRef="usd">0</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets
      contextRef="i1fea681f0af84e9cb42e995810f12b15_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzExLTE3LTEtMS0xMDAwMDI_5960193c-f1aa-45ae-9913-73debd8653a8"
      unitRef="usd">417000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets
      contextRef="i54c7aecd583b422db1836ea36b1df9ac_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzExLTE5LTEtMS0xMDAwMDI_c64c74d6-d6fd-44b4-b413-057948bf1eb9"
      unitRef="usd">681000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets>
    <ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities
      contextRef="i37461516afa443f88fce8a7675608fdd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzEyLTEtMS0xLTEwMDAwMg_ca1874d3-5a08-495b-b7eb-511faa63722b"
      unitRef="usd">8416000</ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities>
    <ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities
      contextRef="i3f72dbb0d5fd4dcb9005c5f0671dda91_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzEyLTktMS0xLTEwMDAwMg_33cf06db-8219-485e-8e29-2fbd1753494e"
      unitRef="usd">1170000</ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities>
    <ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities
      contextRef="ief0682dd5a7e47179c4aa045d07dca78_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzEyLTE1LTEtMS0xMDAwMDI_7d6d144a-a799-40bd-ba73-d118a05886b0"
      unitRef="usd">184000</ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities>
    <ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities
      contextRef="i1fea681f0af84e9cb42e995810f12b15_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzEyLTE3LTEtMS0xMDAwMDI_0972380f-2794-4234-80e0-c958075b93c7"
      unitRef="usd">6809000</ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities>
    <ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities
      contextRef="i54c7aecd583b422db1836ea36b1df9ac_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzEyLTE5LTEtMS0xMDAwMDI_e649adfa-aab6-403d-a57d-3106844ad585"
      unitRef="usd">16579000</ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities
      contextRef="i37461516afa443f88fce8a7675608fdd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzEzLTEtMS0xLTEwMDAwMg_5a780bb9-df89-4a81-88d7-4dfc7bdb6c49"
      unitRef="usd">0</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities
      contextRef="i3f72dbb0d5fd4dcb9005c5f0671dda91_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzEzLTktMS0xLTEwMDAwMg_463a065b-7ad4-476b-a72a-94e8c0291121"
      unitRef="usd">0</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities
      contextRef="ief0682dd5a7e47179c4aa045d07dca78_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzEzLTE1LTEtMS0xMDAwMDI_c2500dd8-18dd-4317-bddc-d59958d6ac43"
      unitRef="usd">0</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities
      contextRef="i1fea681f0af84e9cb42e995810f12b15_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzEzLTE3LTEtMS0xMDAwMDI_f9c80029-bce2-4269-928c-476c3759d9f6"
      unitRef="usd">2089000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities
      contextRef="i54c7aecd583b422db1836ea36b1df9ac_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzEzLTE5LTEtMS0xMDAwMDI_ba82c185-f190-48e5-9424-5baf64af3502"
      unitRef="usd">2089000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther
      contextRef="i37461516afa443f88fce8a7675608fdd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE0LTEtMS0xLTEwMDAwMg_a502a9ea-432b-4550-a56d-cbe1517b0cff"
      unitRef="usd">2530000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther
      contextRef="i3f72dbb0d5fd4dcb9005c5f0671dda91_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE0LTktMS0xLTEwMDAwMg_ea2f647a-795d-4411-a0a3-51386433cb07"
      unitRef="usd">27000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther
      contextRef="ief0682dd5a7e47179c4aa045d07dca78_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE0LTE1LTEtMS0xMDAwMDI_6055f738-b8b7-40b6-b2bf-d8fa549efb4e"
      unitRef="usd">87000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther
      contextRef="i1fea681f0af84e9cb42e995810f12b15_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE0LTE3LTEtMS0xMDAwMDI_2cb0fd34-57cb-4f85-97ed-68c9bb77e535"
      unitRef="usd">777000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther
      contextRef="i54c7aecd583b422db1836ea36b1df9ac_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE0LTE5LTEtMS0xMDAwMDI_69b326c8-25a9-4c31-b433-b0da58f85dd5"
      unitRef="usd">3421000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet
      contextRef="i37461516afa443f88fce8a7675608fdd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE1LTEtMS0xLTEwMDAwMg_a413e5d7-62b7-4bd4-85ff-458f29cf5b4d"
      unitRef="usd">48057000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet
      contextRef="i3f72dbb0d5fd4dcb9005c5f0671dda91_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE1LTktMS0xLTEwMDAwMg_52eae96a-b05a-4e98-8ac2-5b7fbda35abb"
      unitRef="usd">31774000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet
      contextRef="ief0682dd5a7e47179c4aa045d07dca78_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE1LTE1LTEtMS0xMDAwMDI_13f48c06-a1e9-4487-8728-5082308b8792"
      unitRef="usd">126121000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet
      contextRef="i1fea681f0af84e9cb42e995810f12b15_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE1LTE3LTEtMS0xMDAwMDI_e19b78d0-cc92-4d24-b3ba-20819936a704"
      unitRef="usd">64954000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet
      contextRef="i54c7aecd583b422db1836ea36b1df9ac_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE1LTE5LTEtMS0xMDAwMDI_0ca1b640-8ef3-4369-9d16-856e6e7ac38e"
      unitRef="usd">270906000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet>
    <ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness
      contextRef="i446e65df412f490680b00003d7cc2e37_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE2LTEtMS0xLTEwMDAwMg_256a0846-24cf-41f3-8aef-7e4903f7a977"
      unitRef="usd">5959000</ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness>
    <ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness
      contextRef="ia4cc34e117bf4229a839843df1c735d9_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE2LTktMS0xLTEwMDAwMg_8c1fa5a7-1b09-41f6-80c2-d5705da40995"
      unitRef="usd">5466000</ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness>
    <ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness
      contextRef="i14747cce30c4466097ad2e71ba78d40d_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE2LTE1LTEtMS0xMDAwMDI_2304db12-75c5-48eb-8de3-54474a71c8b0"
      unitRef="usd">6631000</ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness>
    <ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness
      contextRef="i19488ffc40d7436687f44b5b09748ede_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE2LTE3LTEtMS0xMDAwMDI_9351917c-d95c-4e31-bd2b-58261fef4bb6"
      unitRef="usd">9835000</ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness>
    <ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness
      contextRef="i924b337b12024dc6bb6ab4744d528582_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE2LTE5LTEtMS0xMDAwMDI_c8369381-956c-4cac-a6c9-36d18258e051"
      unitRef="usd">27891000</ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="i446e65df412f490680b00003d7cc2e37_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE3LTEtMS0xLTEwMDAwMg_61cfecfe-d97d-486d-9a76-c654d7b924df"
      unitRef="usd">42098000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="i446e65df412f490680b00003d7cc2e37_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE3LTEtMS0xLTEwMDAwMg_f0287fbc-b815-4db5-9ede-2eb873978a1c"
      unitRef="usd">42098000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="ia4cc34e117bf4229a839843df1c735d9_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE3LTktMS0xLTEwMDAwMg_74d1251c-9210-4190-8fda-ed4d2f79cc7e"
      unitRef="usd">26308000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="ia4cc34e117bf4229a839843df1c735d9_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE3LTktMS0xLTEwMDAwMg_ed089405-d604-47a7-8e76-b58a5ed6f39b"
      unitRef="usd">26308000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="i14747cce30c4466097ad2e71ba78d40d_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE3LTE1LTEtMS0xMDAwMDI_05f7025d-2a74-4348-9957-faa3a69c6698"
      unitRef="usd">119490000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="i14747cce30c4466097ad2e71ba78d40d_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE3LTE1LTEtMS0xMDAwMDI_71a26158-2ece-4e39-bb20-8bb4dce7445e"
      unitRef="usd">119490000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="i19488ffc40d7436687f44b5b09748ede_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE3LTE3LTEtMS0xMDAwMDI_2f95839d-9bd1-4059-901a-3064601f155d"
      unitRef="usd">55119000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="i924b337b12024dc6bb6ab4744d528582_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE3LTE5LTEtMS0xMDAwMDI_436f5430-1b23-43e0-be9e-8208a852e51b"
      unitRef="usd">243015000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="i924b337b12024dc6bb6ab4744d528582_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTpkMjkyMTNjZDI2MGM0M2Y5ODMzNzU3ZDJlZGQ3ZmEyZS90YWJsZXJhbmdlOmQyOTIxM2NkMjYwYzQzZjk4MzM3NTdkMmVkZDdmYTJlXzE3LTE5LTEtMS0xMDAwMDI_8cce8eae-9c88-49b4-88dc-8dfdb89a7fec"
      unitRef="usd">243015000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables
      contextRef="i37b53970c4384c8d8b5815957a2a9908_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzQtNy0xLTEtMTAwMDAy_ce55d536-a9ef-43a1-a98e-ec4bd3b3782c"
      unitRef="usd">4828000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables
      contextRef="if857301956214edda788d832c3f07c01_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzQtMTMtMS0xLTEwMDAwMg_64059fd8-c30e-402f-be55-fd8dde7cc175"
      unitRef="usd">12777000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables
      contextRef="ia387d8d0753347c3b9d9976f60eb571f_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzQtMTUtMS0xLTEwMDAwMg_7a06ab39-55e9-4615-96e9-fcf5ae02140a"
      unitRef="usd">17605000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory
      contextRef="i37b53970c4384c8d8b5815957a2a9908_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzUtNy0xLTEtMTAwMDAy_ca9ce932-fb6a-40e4-8956-3ff6027d318c"
      unitRef="usd">243000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory
      contextRef="if857301956214edda788d832c3f07c01_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzUtMTMtMS0xLTEwMDAwMg_b1d9aa3c-6af3-45e7-8874-61211e983f88"
      unitRef="usd">2518000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory
      contextRef="ia387d8d0753347c3b9d9976f60eb571f_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzUtMTUtMS0xLTEwMDAwMg_6eb26661-1e1c-4bd6-805f-9de3c3c8c446"
      unitRef="usd">2761000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther
      contextRef="i37b53970c4384c8d8b5815957a2a9908_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzYtNy0xLTEtMTAwMDAy_42a0cb1f-c27c-4a2c-a009-173bc81f4c1b"
      unitRef="usd">675000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther
      contextRef="if857301956214edda788d832c3f07c01_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzYtMTMtMS0xLTEwMDAwMg_16a45391-047f-45b9-89fb-edbd01caecc5"
      unitRef="usd">779000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther
      contextRef="ia387d8d0753347c3b9d9976f60eb571f_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzYtMTUtMS0xLTEwMDAwMg_854e242c-f4f2-468c-9249-411a5f930465"
      unitRef="usd">1454000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="i37b53970c4384c8d8b5815957a2a9908_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzctNy0xLTEtMTAwMDAy_db418a09-02a5-4823-9345-555126e58388"
      unitRef="usd">380000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="if857301956214edda788d832c3f07c01_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzctMTMtMS0xLTEwMDAwMg_15c29896-3ef3-4fb8-b298-18a625770f42"
      unitRef="usd">5482000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="ia387d8d0753347c3b9d9976f60eb571f_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzctMTUtMS0xLTEwMDAwMg_4ee2134b-68a0-4ec8-a072-98021c845b8a"
      unitRef="usd">5862000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="i37b53970c4384c8d8b5815957a2a9908_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzgtNy0xLTEtMTAwMDAy_a4b18768-366e-434a-9b03-fad098a92fb5"
      unitRef="usd">11830000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="if857301956214edda788d832c3f07c01_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzgtMTMtMS0xLTEwMDAwMg_3a244300-153a-456b-a04e-bd3fe538dbc7"
      unitRef="usd">34393000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="ia387d8d0753347c3b9d9976f60eb571f_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzgtMTUtMS0xLTEwMDAwMg_b72a71ce-f04f-4906-a2fa-b40bb57f2eb8"
      unitRef="usd">46223000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:Goodwill
      contextRef="i37b53970c4384c8d8b5815957a2a9908_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzktNy0xLTEtMTAwMDAy_ddd1e8b9-ce24-4afe-8c0d-f38977db9369"
      unitRef="usd">2870000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="if857301956214edda788d832c3f07c01_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzktMTMtMS0xLTEwMDAwMg_4db583ff-7c6e-4548-814b-1e8655b5ec9a"
      unitRef="usd">18435000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="ia387d8d0753347c3b9d9976f60eb571f_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzktMTUtMS0xLTEwMDAwMg_3ee25e09-1552-49b3-98b9-7d8f2d9315f9"
      unitRef="usd">21305000</us-gaap:Goodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets
      contextRef="i37b53970c4384c8d8b5815957a2a9908_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzEwLTctMS0xLTEwMDAwMg_0bfb547d-3f27-40ed-bb87-344021099b16"
      unitRef="usd">145000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets
      contextRef="if857301956214edda788d832c3f07c01_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzEwLTEzLTEtMS0xMDAwMDI_79f4fbbf-ec6f-4339-b9ae-1d38b60a96e7"
      unitRef="usd">96000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets
      contextRef="ia387d8d0753347c3b9d9976f60eb571f_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzEwLTE1LTEtMS0xMDAwMDI_e12c01e8-47cd-4053-9ae3-dab57bcb876d"
      unitRef="usd">241000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets>
    <ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities
      contextRef="i37b53970c4384c8d8b5815957a2a9908_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzExLTctMS0xLTEwMDAwMg_e32b6cf0-7d34-4491-a886-a5d78d11e552"
      unitRef="usd">445000</ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities>
    <ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities
      contextRef="if857301956214edda788d832c3f07c01_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzExLTEzLTEtMS0xMDAwMDI_9536dcda-c9f4-4a8a-b9e9-78f1be34eaaf"
      unitRef="usd">4196000</ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities>
    <ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities
      contextRef="ia387d8d0753347c3b9d9976f60eb571f_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzExLTE1LTEtMS0xMDAwMDI_76a20cec-c7a8-4e73-886a-e56298c049f6"
      unitRef="usd">4641000</ibp:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther
      contextRef="i37b53970c4384c8d8b5815957a2a9908_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzEzLTctMS0xLTEwMDAwMg_b6f45589-eebf-4a80-8adb-94b0279b2c39"
      unitRef="usd">28000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther
      contextRef="if857301956214edda788d832c3f07c01_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzEzLTEzLTEtMS0xMDAwMDI_65eecdac-22a4-49e0-9e9e-741b2af7fdaf"
      unitRef="usd">250000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther
      contextRef="ia387d8d0753347c3b9d9976f60eb571f_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzEzLTE1LTEtMS0xMDAwMDI_0d7ae199-8ae9-4a0c-b905-cfc1a424bfe4"
      unitRef="usd">278000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet
      contextRef="i37b53970c4384c8d8b5815957a2a9908_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzE0LTctMS0xLTEwMDAwMg_8060f9ab-85a9-49ca-87f4-34caffbed1c8"
      unitRef="usd">20498000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet
      contextRef="if857301956214edda788d832c3f07c01_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzE0LTEzLTEtMS0xMDAwMDI_66e152da-b930-4178-ae37-a5a07a5aca58"
      unitRef="usd">70034000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet
      contextRef="ia387d8d0753347c3b9d9976f60eb571f_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzE0LTE1LTEtMS0xMDAwMDI_ae408814-8001-46d1-a65f-d5039eabfa8f"
      unitRef="usd">90532000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet>
    <ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness
      contextRef="i84a0099b25b7437fa82470d966b55b3f_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzE1LTctMS0xLTEwMDAwMg_a0bbbf56-921b-4a2d-9506-d27862ce88a0"
      unitRef="usd">3598000</ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness>
    <ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness
      contextRef="i5a1d37cf66e64283aea0cb97c7d46f4a_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzE1LTEzLTEtMS0xMDAwMDI_4f733e8e-96e6-47a8-b04a-9ad3553240bf"
      unitRef="usd">10488000</ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness>
    <ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness
      contextRef="i00fded2e14994d2da83d37845bb5950c_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzE1LTE1LTEtMS0xMDAwMDI_bb8c82b9-ce93-4a44-82d3-17057a44a47f"
      unitRef="usd">14086000</ibp:SellerObligationsInConnectionWithAcquisitionOfBusiness>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="i84a0099b25b7437fa82470d966b55b3f_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzE2LTctMS0xLTEwMDAwMg_8fd0c934-d3f9-47af-b529-d81db4718e77"
      unitRef="usd">16900000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="i5a1d37cf66e64283aea0cb97c7d46f4a_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzE2LTEzLTEtMS0xMDAwMDI_c2b28202-272a-4be6-9b9d-3ce5691d573b"
      unitRef="usd">59546000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="i00fded2e14994d2da83d37845bb5950c_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZTphYzZjNmZiMjc1YTk0YTc0YTg2YmMzMDFhNTNjM2IxMy90YWJsZXJhbmdlOmFjNmM2ZmIyNzVhOTRhNzRhODZiYzMwMWE1M2MzYjEzXzE2LTE1LTEtMS0xMDAwMDI_3fae4020-7b2e-4b8d-94fa-6081b7d08f36"
      unitRef="usd">76446000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:GoodwillPurchaseAccountingAdjustments
      contextRef="i063187198d8a4662a8e28042ad648f83_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzEwOTk1MTE2NTI4NTM_b08385f5-b7ad-4f68-b53e-7a70e4ed1fed"
      unitRef="usd">1600000</us-gaap:GoodwillPurchaseAccountingAdjustments>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="i43ab2840190646a9a29f626d4ea9f201_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzEwOTk1MTE2NTI4ODY_8494e4c9-4ba7-4e7c-9d13-d27382987e54"
      unitRef="usd">3000000.0</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:FiniteLivedAndIndefiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTableTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzUxMDg_1838a186-1b77-4659-b24f-b736290d636f">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Estimates of acquired intangible assets related to the acquisitions are as follows (dollars in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:30.811%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.635%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.635%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.635%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.635%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.635%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.535%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.639%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Acquired intangibles assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Estimated Fair Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted Average Estimated Useful Life (yrs)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Estimated Fair Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted Average Estimated Useful Life (yrs)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Estimated Fair Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted Average Estimated Useful Life (yrs)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer relationships&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;45,236&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;95,173&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;28,307&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Trademarks and trade names&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,794&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,149&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,834&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-competition agreements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,645&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,054&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,315&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Backlog&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;390&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,578&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.5&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,767&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.5&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:FiniteLivedAndIndefiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTableTextBlock>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="iae67bb7820424a05bb9980c0a54a1be7_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzItMS0xLTEtMTAwMDAy_80cd823b-521e-4d8c-820b-1f3055160e29"
      unitRef="usd">45236000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="iae67bb7820424a05bb9980c0a54a1be7_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzItMy0xLTEtMTAwMDAy_48ae5054-0a09-4656-b48f-75a5c1e11699">P12Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="ib8eafb787d87447f819d6c22e636a252_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzItNS0xLTEtMTAwMDAy_cd765ae6-37fc-4e69-9347-b7f23865ba96"
      unitRef="usd">95173000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="ib8eafb787d87447f819d6c22e636a252_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzItNy0xLTEtMTAwMDAy_3a668c84-d8ad-4701-823c-d0a565d3c7bd">P12Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="i29b07b75dec34c58bfd17b6c91f7699f_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzItOS0xLTEtMTAwMDAy_2536cd5c-e8e5-4d30-a54c-beec1f312145"
      unitRef="usd">28307000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i29b07b75dec34c58bfd17b6c91f7699f_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzItMTEtMS0xLTEwMDAwMg_2a03e353-e8b1-4b91-9cd8-f60dfa64a6a7">P8Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="i4666e95abc2946b4bcffd2713db1b4eb_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzMtMS0xLTEtMTAwMDAy_dc847110-58c5-48a8-95f5-e188ae8dd2ab"
      unitRef="usd">16794000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i4666e95abc2946b4bcffd2713db1b4eb_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzMtMy0xLTEtMTAwMDAy_9946890e-963e-4354-b89b-1d58b8168423">P15Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="i655e00359db74a0498a6260a1e2b37b2_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzMtNS0xLTEtMTAwMDAy_269360d7-3939-40f2-aac3-74e52e83eb85"
      unitRef="usd">23149000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i655e00359db74a0498a6260a1e2b37b2_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzMtNy0xLTEtMTAwMDAy_722b6509-f7af-4c56-adac-42e59c41e234">P15Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="i225a38d9cb004a13806bd49986908185_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzMtOS0xLTEtMTAwMDAy_27d972eb-6e8b-4629-822b-5782d5656d9c"
      unitRef="usd">9834000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i225a38d9cb004a13806bd49986908185_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzMtMTEtMS0xLTEwMDAwMg_e4598aa4-191c-46d9-b88d-e1aec194a240">P15Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="id3522748cf874adaa26e4fb5a429c9a7_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzQtMS0xLTEtMTAwMDAy_cbbb8730-d2aa-47c6-a103-4b6763c9119e"
      unitRef="usd">2645000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="id3522748cf874adaa26e4fb5a429c9a7_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzQtMy0xLTEtMTAwMDAy_25012924-3a68-484b-8f5b-188e895cb78f">P5Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="i92ce7e4cb80b43d4a197299a3a96c2db_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzQtNS0xLTEtMTAwMDAy_c58a9246-ede2-4757-9f2b-69c315d7fa82"
      unitRef="usd">7054000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i92ce7e4cb80b43d4a197299a3a96c2db_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzQtNy0xLTEtMTAwMDAy_a860b34a-b457-44b0-8ddd-bfd6aeb32430">P5Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="id8808320f1eb4843a0b744cc1b5d15a8_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzQtOS0xLTEtMTAwMDAy_433a99aa-bf0b-433b-821b-2866cf61ea36"
      unitRef="usd">3315000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="id8808320f1eb4843a0b744cc1b5d15a8_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzQtMTEtMS0xLTEwMDAwMg_32d8aec1-ff60-4cf8-93f8-95b1f745be91">P5Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="ic32ff90b2ecd4ade9ebb1b86f0d45e7b_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzUtMS0xLTEtMTAwMDAy_08e583a6-124b-40b0-bcf5-3d3ced9fd5fb"
      unitRef="usd">390000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="ic32ff90b2ecd4ade9ebb1b86f0d45e7b_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzUtMy0xLTEtMTAwMDAy_6c4ef4b0-3c39-4aa9-9f3b-c78c64c75e6f">P1Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="ib0e8ef84dde647a1a1daba7531646eaa_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzUtNS0xLTEtMTAwMDAy_a165e17b-29a3-4b0c-b97c-d0bb66a6a301"
      unitRef="usd">1578000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="ib0e8ef84dde647a1a1daba7531646eaa_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzUtNy0xLTEtMTAwMDAy_d8100a4d-e571-4009-a8d8-6020a871b532">P1Y6M</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="i2ad67bbb20fb45b2bb2af956fbc5b0f9_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzUtOS0xLTEtMTAwMDAy_5c3add13-f017-4c18-b213-ffd94d08d4ae"
      unitRef="usd">4767000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i2ad67bbb20fb45b2bb2af956fbc5b0f9_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToyMzFiYTIyZTZkMDc0NGM1YjBlZDIwZGZlMDhmNjU2Ni90YWJsZXJhbmdlOjIzMWJhMjJlNmQwNzQ0YzViMGVkMjBkZmUwOGY2NTY2XzUtMTEtMS0xLTEwMDAwMg_9d41e402-9873-4d8d-a267-0dbf7861af91">P1Y6M</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:BusinessAcquisitionProFormaInformationTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzUxMDk_8f3a008f-12d7-43e0-9556-413b97fe9543">&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:70.467%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:42.675%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.949%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.837%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.949%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.837%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.953%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31,&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net revenue&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,732,084&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,217,592&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,922,327&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net income&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;227,108&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;135,850&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;107,791&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Basic net income per share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7.91&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.63&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.65&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Diluted net income per share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7.87&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.59&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.63&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:BusinessAcquisitionProFormaInformationTextBlock>
    <us-gaap:BusinessAcquisitionsProFormaRevenue
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToxMGI3YTIxMDlhZTU0M2ZiYmZjYjlmOGJiNmY2M2VkMS90YWJsZXJhbmdlOjEwYjdhMjEwOWFlNTQzZmJiZmNiOWY4YmI2ZjYzZWQxXzItMS0xLTEtMTAwMDAy_82ba3f7b-337d-4503-bd4c-cda8be6eebef"
      unitRef="usd">2732084000</us-gaap:BusinessAcquisitionsProFormaRevenue>
    <us-gaap:BusinessAcquisitionsProFormaRevenue
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToxMGI3YTIxMDlhZTU0M2ZiYmZjYjlmOGJiNmY2M2VkMS90YWJsZXJhbmdlOjEwYjdhMjEwOWFlNTQzZmJiZmNiOWY4YmI2ZjYzZWQxXzItMy0xLTEtMTAwMDAy_452940a4-4a01-4775-b7d7-b198cd67037a"
      unitRef="usd">2217592000</us-gaap:BusinessAcquisitionsProFormaRevenue>
    <us-gaap:BusinessAcquisitionsProFormaRevenue
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToxMGI3YTIxMDlhZTU0M2ZiYmZjYjlmOGJiNmY2M2VkMS90YWJsZXJhbmdlOjEwYjdhMjEwOWFlNTQzZmJiZmNiOWY4YmI2ZjYzZWQxXzItNS0xLTEtMTAwMDAy_1f60f578-677a-4658-8667-05ec4c9c13c8"
      unitRef="usd">1922327000</us-gaap:BusinessAcquisitionsProFormaRevenue>
    <us-gaap:BusinessAcquisitionsProFormaNetIncomeLoss
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToxMGI3YTIxMDlhZTU0M2ZiYmZjYjlmOGJiNmY2M2VkMS90YWJsZXJhbmdlOjEwYjdhMjEwOWFlNTQzZmJiZmNiOWY4YmI2ZjYzZWQxXzMtMS0xLTEtMTAwMDAy_5b65c0d2-5694-43ae-9991-88c16d90673e"
      unitRef="usd">227108000</us-gaap:BusinessAcquisitionsProFormaNetIncomeLoss>
    <us-gaap:BusinessAcquisitionsProFormaNetIncomeLoss
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToxMGI3YTIxMDlhZTU0M2ZiYmZjYjlmOGJiNmY2M2VkMS90YWJsZXJhbmdlOjEwYjdhMjEwOWFlNTQzZmJiZmNiOWY4YmI2ZjYzZWQxXzMtMy0xLTEtMTAwMDAy_e7cdfe03-aea1-4ead-a129-ad0d8cc9f1eb"
      unitRef="usd">135850000</us-gaap:BusinessAcquisitionsProFormaNetIncomeLoss>
    <us-gaap:BusinessAcquisitionsProFormaNetIncomeLoss
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToxMGI3YTIxMDlhZTU0M2ZiYmZjYjlmOGJiNmY2M2VkMS90YWJsZXJhbmdlOjEwYjdhMjEwOWFlNTQzZmJiZmNiOWY4YmI2ZjYzZWQxXzMtNS0xLTEtMTAwMDAy_1d605b01-e051-4bf7-ac9b-14092265b674"
      unitRef="usd">107791000</us-gaap:BusinessAcquisitionsProFormaNetIncomeLoss>
    <us-gaap:BusinessAcquisitionProFormaEarningsPerShareBasic
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToxMGI3YTIxMDlhZTU0M2ZiYmZjYjlmOGJiNmY2M2VkMS90YWJsZXJhbmdlOjEwYjdhMjEwOWFlNTQzZmJiZmNiOWY4YmI2ZjYzZWQxXzQtMS0xLTEtMTAwMDAy_f6b243c5-2ec3-4dd9-a694-92e1af51e6ee"
      unitRef="usdPerShare">7.91</us-gaap:BusinessAcquisitionProFormaEarningsPerShareBasic>
    <us-gaap:BusinessAcquisitionProFormaEarningsPerShareBasic
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToxMGI3YTIxMDlhZTU0M2ZiYmZjYjlmOGJiNmY2M2VkMS90YWJsZXJhbmdlOjEwYjdhMjEwOWFlNTQzZmJiZmNiOWY4YmI2ZjYzZWQxXzQtMy0xLTEtMTAwMDAy_bc487f1b-717f-4352-929a-28207490f77c"
      unitRef="usdPerShare">4.63</us-gaap:BusinessAcquisitionProFormaEarningsPerShareBasic>
    <us-gaap:BusinessAcquisitionProFormaEarningsPerShareBasic
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToxMGI3YTIxMDlhZTU0M2ZiYmZjYjlmOGJiNmY2M2VkMS90YWJsZXJhbmdlOjEwYjdhMjEwOWFlNTQzZmJiZmNiOWY4YmI2ZjYzZWQxXzQtNS0xLTEtMTAwMDAy_ca28b9c5-4248-4098-87fc-3c67f5e8fccd"
      unitRef="usdPerShare">3.65</us-gaap:BusinessAcquisitionProFormaEarningsPerShareBasic>
    <us-gaap:BusinessAcquisitionProFormaEarningsPerShareDiluted
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToxMGI3YTIxMDlhZTU0M2ZiYmZjYjlmOGJiNmY2M2VkMS90YWJsZXJhbmdlOjEwYjdhMjEwOWFlNTQzZmJiZmNiOWY4YmI2ZjYzZWQxXzUtMS0xLTEtMTAwMDAy_f202af0a-a50e-4d6c-a905-a7f6a3bfb124"
      unitRef="usdPerShare">7.87</us-gaap:BusinessAcquisitionProFormaEarningsPerShareDiluted>
    <us-gaap:BusinessAcquisitionProFormaEarningsPerShareDiluted
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToxMGI3YTIxMDlhZTU0M2ZiYmZjYjlmOGJiNmY2M2VkMS90YWJsZXJhbmdlOjEwYjdhMjEwOWFlNTQzZmJiZmNiOWY4YmI2ZjYzZWQxXzUtMy0xLTEtMTAwMDAy_b9375275-b052-46fb-b535-d8d27eede9d6"
      unitRef="usdPerShare">4.59</us-gaap:BusinessAcquisitionProFormaEarningsPerShareDiluted>
    <us-gaap:BusinessAcquisitionProFormaEarningsPerShareDiluted
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90YWJsZToxMGI3YTIxMDlhZTU0M2ZiYmZjYjlmOGJiNmY2M2VkMS90YWJsZXJhbmdlOjEwYjdhMjEwOWFlNTQzZmJiZmNiOWY4YmI2ZjYzZWQxXzUtNS0xLTEtMTAwMDAy_cc899071-5776-4547-9026-5d41f58295ba"
      unitRef="usdPerShare">3.63</us-gaap:BusinessAcquisitionProFormaEarningsPerShareDiluted>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="id0be1243c38b48029fee5ea0f354d284_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzQ4NTI_2e8ebd10-cb55-4992-afaf-40bf268de704"
      unitRef="usd">2500000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i50702d9644604ef6b8e4664d366e408c_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzQ4NTY_574974d4-0bf3-4540-a99d-2f6f4cee3a53"
      unitRef="usd">13100000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i31829ad5db3b4aaaa72e5507f7df28a5_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzQ4NjM_2c8059ef-7700-4c86-8fda-85293b5f6d00"
      unitRef="usd">18200000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:InterestExpense
      contextRef="i50702d9644604ef6b8e4664d366e408c_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzU0OTc1NTgxOTIwMQ_1b0fc301-7ac3-4e5e-83e2-57d01a9f0b01"
      unitRef="usd">4300000</us-gaap:InterestExpense>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="id0be1243c38b48029fee5ea0f354d284_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzUwNDU_9d9f37a0-dd67-4e77-83e5-3dfb3c0fe2d0"
      unitRef="usd">1200000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i50702d9644604ef6b8e4664d366e408c_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzUwNDk_62051b06-f7e8-4518-833b-f924e6e84df5"
      unitRef="usd">5700000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i31829ad5db3b4aaaa72e5507f7df28a5_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xMzYvZnJhZzplNTc4NzY2ZjdkZTI0YjBkYWRhY2QxZjc4MzIwODQ4MC90ZXh0cmVnaW9uOmU1Nzg3NjZmN2RlMjRiMGRhZGFjZDFmNzgzMjA4NDgwXzUwNTY_6972385a-5dcb-420b-a056-50d501ff2207"
      unitRef="usd">3700000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:EarningsPerShareTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNDIvZnJhZzoyOWM3YzgzYzA3MGQ0MzFlOWQxYjk5ODQyZmZkNjhmNy90ZXh0cmVnaW9uOjI5YzdjODNjMDcwZDQzMWU5ZDFiOTk4NDJmZmQ2OGY3XzcwNw_7ad9820e-f7af-43a9-a577-b91a05ab135b">INCOME PER COMMON SHARE&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Basic net income per common share is calculated by dividing net income by the weighted average shares outstanding during the period, without consideration for common stock equivalents.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Diluted net income per common share is calculated by adjusting weighted average shares outstanding for the dilutive effect of common stock equivalents outstanding for the period, determined using the treasury stock method. Potential common stock is included in the diluted income per common share calculation when dilutive. The dilutive effect of outstanding restricted stock awards after application of the treasury stock method as of December&#160;31, 2022, 2021 and 2020, was 161 thousand, 261 thousand and 213 thousand, respectively. Approximately two&#160;thousand shares of potential common stock were not included in the calculation of diluted net income per common share for the years ended December&#160;31, 2022, because the effect would have been anti-dilutive.&lt;/span&gt;&lt;/div&gt;</us-gaap:EarningsPerShareTextBlock>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNDIvZnJhZzoyOWM3YzgzYzA3MGQ0MzFlOWQxYjk5ODQyZmZkNjhmNy90ZXh0cmVnaW9uOjI5YzdjODNjMDcwZDQzMWU5ZDFiOTk4NDJmZmQ2OGY3XzY3OQ_63a2d6dd-39c0-4ab6-9a50-1eb6bee4b0a8"
      unitRef="shares">161000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="i9eaaf6eca005477eace949e0f2dee048_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNDIvZnJhZzoyOWM3YzgzYzA3MGQ0MzFlOWQxYjk5ODQyZmZkNjhmNy90ZXh0cmVnaW9uOjI5YzdjODNjMDcwZDQzMWU5ZDFiOTk4NDJmZmQ2OGY3XzY4Mw_6c43d78a-64e5-44fd-8d16-93ae19c05289"
      unitRef="shares">261000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="i63a472239ecc4254a47dbf528822350d_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNDIvZnJhZzoyOWM3YzgzYzA3MGQ0MzFlOWQxYjk5ODQyZmZkNjhmNy90ZXh0cmVnaW9uOjI5YzdjODNjMDcwZDQzMWU5ZDFiOTk4NDJmZmQ2OGY3XzY5MA_8429f977-b927-46ba-8723-79cbe95fd67b"
      unitRef="shares">213000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:SubsequentEventsTextBlock
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNDgvZnJhZzpmZmY5YWRkNmZmMDc0OGUwOTQ4MmFjNmZlNjUxYmEyMy90ZXh0cmVnaW9uOmZmZjlhZGQ2ZmYwNzQ4ZTA5NDgyYWM2ZmU2NTFiYTIzXzIwMzU_4d41774f-3b62-41ea-a4c4-196d139e06f7">SUBSEQUENT EVENTSOn February 22, 2023, we announced that our board of directors approved a special annual dividend, payable on March 31, 2023 to stockholders of record on March 15, 2023 at a rate of 90 cents per share. In addition, we recently announced that our board of directors declared a quarterly dividend, payable on March 31, 2023 to stockholders of record on March 15, 2023 at a rate of 33.0&#160;cents per share.On February 22, 2023, we also announced that our board of directors authorized a new stock repurchase program that allows for the repurchase of up to $200.0&#160;million of our outstanding common stock. The new program replaces the previous program and is in effect through March 1, 2024. For more information about our stock repurchase programs, see Note 13, Stockholders' Equity.</us-gaap:SubsequentEventsTextBlock>
    <us-gaap:DividendsPayableAmountPerShare
      contextRef="ida4bc7c180464dc792325f41bd379c82_I20230222"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNDgvZnJhZzpmZmY5YWRkNmZmMDc0OGUwOTQ4MmFjNmZlNjUxYmEyMy90ZXh0cmVnaW9uOmZmZjlhZGQ2ZmYwNzQ4ZTA5NDgyYWM2ZmU2NTFiYTIzXzE0Nzk_74031b37-5a61-43ef-a047-ef87a731aea7"
      unitRef="usdPerShare">0.90</us-gaap:DividendsPayableAmountPerShare>
    <us-gaap:DividendsPayableAmountPerShare
      contextRef="i9a33ed4e39e141a1ae28eae3d8b26778_I20230315"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNDgvZnJhZzpmZmY5YWRkNmZmMDc0OGUwOTQ4MmFjNmZlNjUxYmEyMy90ZXh0cmVnaW9uOmZmZjlhZGQ2ZmYwNzQ4ZTA5NDgyYWM2ZmU2NTFiYTIzXzE2NzA_0d6f3db5-dd8e-41ca-8161-d1f67152943f"
      unitRef="usdPerShare">0.33</us-gaap:DividendsPayableAmountPerShare>
    <us-gaap:StockRepurchaseProgramAuthorizedAmount1
      contextRef="iaf7f2985f94c4c49bd394258ac3e1c59_I20230222"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xNDgvZnJhZzpmZmY5YWRkNmZmMDc0OGUwOTQ4MmFjNmZlNjUxYmEyMy90ZXh0cmVnaW9uOmZmZjlhZGQ2ZmYwNzQ4ZTA5NDgyYWM2ZmU2NTFiYTIzXzE5Mzk_1a0a92f2-09f1-44d6-9be6-123b30e49d94"
      unitRef="usd">200000000</us-gaap:StockRepurchaseProgramAuthorizedAmount1>
    <dei:AuditorFirmId
      contextRef="i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOmZhYWE2MTUyMmFkYTRlZjJiMzQ1OWYxYzAyZmQ3ZGY0L3NlYzpmYWFhNjE1MjJhZGE0ZWYyYjM0NTlmMWMwMmZkN2RmNF8xODcvZnJhZzo5ZDdlNTExN2U1YmU0MjE3OWQzYWQxZTJkOGNjYzMyMi90ZXh0cmVnaW9uOjlkN2U1MTE3ZTViZTQyMTc5ZDNhZDFlMmQ4Y2NjMzIyXzMwNw_61469f33-baaa-46c1-bccf-2d7a38eeb690">34</dei:AuditorFirmId>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>119
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
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
M?!^2!F.,6_0T7X\48JVFL:W&VC$,>8!8\PRA9CC?AT6:&C/5BZPYC0IO0=5
MY3_;U UH]@TT')$%7C&9MC:CY$X*/-S^[PVPPL2.X>V+OP%02P,$%     @
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
M>P7M$G!_IY0]!NZ OF%G?P%02P,$%     @ 5X%65C81;B;>!P  M2,  !@
M  !X;"]W;W)K<VAE971S+W-H965T,RYX;6RM6FMOV[@2_2N$-UAT :<6'WJU
MB8$TZ>X6Z&V")GOO9T:F8Z&RZ*6HI+F__@YEQ[+%AY.[_M#&LH>C,T/.G$-*
M9T]2_6@60FCT<UG5S?EHH?7JPV32% NQY,U[N1(U_#*7:LDU7*J'2;-2@L^Z
M0<MJ0J(HF2QY68^F9]UW-VIZ)EM=E;6X4:AIETNNGC^)2CZ=C_#HY8OOY<-"
MFR\FT[,5?Q"W0O^UNE%P-=EZF95+43>EK)$2\_/1!?YPR:@9T%G\NQ1/S<YG
M9$*YE_*'N?@R.Q]%!I&H1*&-"PY_'L6EJ"KC"7#\O7$ZVM[3#-S]_.+]]RYX
M".:>-^)25O\I9WIQ/LI&:";FO*WT=_GTI]@$%!M_A:R:[G_TM+&-1JAH&RV7
MF\& 8%G6Z[_\YR81.P,P\PP@FP'DM0/H9D"7N<D:61?6%==\>J;D$U+&&KR9
M#UUNNM$035F;:;S5"GXM89R>7EY_N[W^^N7JXN[S%?IT\?7BV^5G=/OGY\]W
MM^@4_75[A=Z=_(9.4%FCNX5L&U[/FK.)ACN;\9-B<Y=/Z[L0SUVN1/$>43Q&
M)"+$,?SR]</Q_O )Q+L-FFR#)IT_Z@NZ54K4&O&F$=H9SGH\<X\WI?6A6?%"
MG(^@=AJA'L5H^NLO.(D^NH([DK.]4.DV5!KR/KWDS0+!I*'"?!!_M^4CKR!V
M9]1K5W'GRM3_XY20/"'IV>1Q-Q[;C%+*LGAKMH>4;9&R(-*+HI M (/F4 A
M>5\)]*X238-X!<V&UX5 T+90H<2LU*B2,'D-DG-TDH]CEG=!GF3C%*>(:P1+
M1BSOA5HG\F7I=49F$8WA+LU*=#VD>O[-E8PUVF0WRCPE9OGN)<-AADF:I.YD
MQ-MDQ,%D?*D?89*D*H5SHF+KICA-$I(/L#G,&(UH[L:6;+$E06PW2JQX.4/B
M)W")F0.35*D7 N;F8&$E%J0LRBD= +>MTB@BG@66;G&G0=QW4O/J%1!3&V+&
M&,8#C ZS.*<X<8/,MB"S \D%AE;ZN4NJ*=<5<*8>HUIH%];,GF&<I2D;8'68
M1?%NVO>PYENL>1#K-2#ENJP?4"6 29$RE'DJYZ<M7/CSF]N3FV +LFV5Y%F*
MW8AQU--=%,3\AY2SI[*JG!P6V;6<TCB.!]!<=H3$V%/S>(>+\8&JU[Q^*$WG
M\Z=OXV/W[B2C+!W6D,LN88SX4MB3)PX2UO2Z*_5:UJ>':VGC:A<$(S&S,FJ;
M48P9\T#MR0^'V6]=\@%XU-%(TRRGPR[O,DQB"E3B@=BS'F:OTB)5R>_+JM2>
MCH^#Y/E617(L;_LQ]^2&P^SV$C.H\%9U(1L>KV3]<*J%6H(,OW=V.VP3&HWR
MS%KY+K/,1WNXYST<)CXW;#GH@O*^*A^XV:.X)]+F-I)@NR(<9M!D?!71<R .
MDZ [AGE9=_KJ=1'8S$?B*!L&8%M!D_>UR)X><9@?MRIQQ9^-1'0"=- =RW&6
M#"$Z["A)(X_.P#TOXC Q DC5"M#<<FDD4I=*)U";Y&(H,BN5#K,H3SQK@?1<
M2,)<>+VGV0XT(&*37I(F=*B*7&:@\"(/UIX:29@:]\7;(:PV]5&218D%UF$7
MI7'BZ11D9W\9ILBO!UL9L1DOHQ%.+8@N.X)SCW0C/362,#4.Q=N!HB<V ;(<
MF'((UV&60$H]:'N6).'-X>]O:5#$WI,EL'<;0G7LW$CN:5"DYS82YK8K,1>P
M2&>HK*'\!=+\IV>1VBQ%,A8/B]]AQC+L6Z$]EY$PEZUKOZ?<0Q5ETQ'HN-C*
MJ<N,13ZT/6N1UVS=#F%T, [)8F;M+IV&-*&)1\R1GIU(F)TNY7)9:K-C6^^*
M"UF;$A-U88CVW3>I!<*I\[@A[-DMR9#SM.F?.]J/OJ<]D@>E[*V6Q8^%K&9"
M-;_^DA&<?NRVL/K9&7"00]]\QG8D;_N';#V5TC"5WJB7LN^2\!&=1.\C#")%
MH4=>M>(#BL=1%)E_B+=Z(57Y7S V:R1"S8(#)E0V3;OY3K:Z@:W@S+3GMQYF
M.0_V;%:.!D41--G/2D_:-$S:IAQDC1I/2O Z(8.DC!&E8T;R,;27+D2X)"D>
M)W&^FR*2C6F4C%FVR4,^3LTEW&&3SJ/GT"$6Z/#4PFGDX6K:RPD:EA,7LUEI
MV YZ8'?R5M:HX*L2>J(3J"T9",DR^QC788?- :$'[LZ1<UA:?!>:PU<S)+BJ
M(?WNLV9;*<08=G/#C9##CL8$NKH'92\I:%A2W"G0$JUZ?EF>L$8*V6A3J< &
M8Q MZ]4WCI-X3.+L95T=92W9VN.49#G%UAPY##%+B6\S2WN=0L,Z!?8H[;*M
MN!;;PUO8K2BQ,(_H'L6+?'EGSMF=A$4=PB2*$ZNOV&:GA'AD%NWU"PWKE[4B
M:-[$.-2A3G+*\J&(==GA)&.^PNAE#'VCC.F6S!N#<.VK74=6+L/0D17M50X]
MH'*ZQY*P8I2HUBI\4:[<1?Y_:!$_QQ_+VW[8O;RA87ES^*DA/:JD.9:W_:=Q
MO:1A84GSJL-H9JL&G!/8; ^?DCGLTHSXSC!8+S%86&*L]S'E%FOC?502=O36
MR3F6M_VP>T7 _ND3;';41]C'\K8?;J\H6%A1O&XMVL^E<VR?K#K,L@3'0T::
M[+Q385YH^1=7#V7=H$K,85ST/@4':OV.R/I"RU7WFL6]U- =NX\+P:&I&P/X
M?2YA][>Y,&]N;-_4F?X/4$L#!!0    ( %>!5E8BZ>]D@ ,  )0,   8
M>&PO=V]R:W-H965T<R]S:&5E=#0N>&ULK5=K;YLP%/TK%INF5MH*AO!J$Z0T
MZ;1)>T1-NWUVP0E6 5/;).M^_6R@%!+RFIH/"89[#N=<7_LZPS5ECSS&6( _
M:9+QD18+D5_J.@]CG")^07.<R2<+RE(DY) M=9XSC*(2E":Z:1B.GB*2:<&P
MO#=CP9 6(B$9GC' BS1%[/D:)W0]TJ#V<N.6+&.A;NC!,$=+/,?B/I\Q.=(;
MEHBD...$9H#AQ4@;P\L)M!2@C/A%\)JWKH&R\D#IHQI\C4::H13A!(="42#Y
ML\(3G"2*2>IXJDFUYIT*V+Y^8?]<FI=F'A#'$YK\)I&(1YJG@0@O4)&(6[K^
M@FM#MN(+:<++;["N8AU? V'!!4UKL%20DJSZ17_J1+0 <+ #8-8 \UB 50/*
MS.F5LM+6% D4#!E= Z:B)9NZ*'-3HJ4;DJEIG LFGQ*)$\'DYX_YSV]?I^.[
MFRFX'G\;_YC<@/F7FYN[.3B;(88S$6-!0I2<@T_@?CX%9^_/P7M ,G 7TX*C
M+.)#74@EBD\/Z[=>5V\U=[QUBL,+8,&/P#1,LP<^.1X.NW!=^F^28#9),$L^
M:U<2"J:, L0Y%KUV*OR@'Z^6VB7/48A'FEQ+'+,5UH(/[Z!C7/69>R.RCE6K
ML6KM8P_&B5RX* LQD%L B&CQ(!9%(E=32(NLWWM%:)>$:E=8!;X]\(?ZJNUI
M.\ASH=L$=;0.&JV#O=,R%S1\C&D28<8_O/-,Z%X!_%00\=PG<_"64_1&9!W;
M=F/;WCM%,[F185F0$> J 1]!CAA8H:3 :M6I)9ACN1''<G&>]R6B8G=;4V%<
M&'!CO@X$=80[C7#G-.&E1@Y0(6+*R%_YX$PZJ.[V2J_XG98JVR@_&^H/QW4,
MN(T!][\,$,Z+P^+=+5&;LO=%= 1[C6#OOP3+?LV%W)I)MCRDVCNH>E]$1[7?
MJ/;WJI[0-)4=?*NZSXXJ;_^8\CX0U)$-C==>:9P@_.3JKMG;F82&T5O@1X5V
M7;0Z/CS=Q7$E7C.W95G6P/1MV]TTT!=INM"Q_1WZ7YLUW-L@^_6?4/$U?5N:
MZ5F&,_#,31,]D;XK(W>6TFL;AOO[\)T\<_."/8.RR1V4;&UO>-"T#-?>5+P=
M:-F.;=K>AF"]=614Y_7OB"U)QD&"%Q)I7+BR0;#J"%P-!,W+4^0#%?),6E[&
M\F\#9BI /E]0*EX&ZF#:_!$)_@%02P,$%     @ 5X%65HV('UYZ!@  ;AP
M !@   !X;"]W;W)K<VAE971S+W-H965T-2YX;6RM66MOVD@4_2LCMEJU4@N>
M&3^S"5*"Z3;2YJ&0MA]6^\'! U@U-O4,)+N_?N\8@F%\/4HE%"E@<^[UG.O[
M.&.?/Y?5#[D00I&795[(B]Y"J=798""G"[%,9+]<B0)^F975,E%P6,T'<E6)
M)*V-EOF .8X_6"99T1N>U^?NJ^%YN59Y5HC[BLCU<IE4_UZ)O'R^Z-'>ZXF'
M;+Y0^L1@>+Y*YF(BU-?5?05'@[V7-%N*0F9E02HQN^A=TK.8A=J@1GS+Q+,\
M^$XTE:>R_*$/KM.+GJ-7)'(Q5=I% A\;,1)YKCW!.G[NG/;VU]2&A]]?O7^N
MR0.9IT2*49E_SU*UN.B%/9**6;+.U4/Y_$7L"'G:W[3,9?V?/.^P3H],UU*5
MRYTQK&"9%=O/Y&47B ,#ZG<8L)T!,PW<#@.^,^!O-7!W!FX=F2V5.@YQHI+A
M>54^DTJCP9O^4@>SM@;Z6:'O^T15\&L&=FHXNKN=W/UU'5\^CF,R>82/F_'M
MXX3<?29W]^.'R\=K )#+VYB,[F[N'\9?QK>3ZV]C<GT+QV/RB7R=Q.3]NP_D
M'<D*\K@HUS(I4GD^4+ X?8G!=+>0J^U"6,="*",W9:$6DHR+5*3'#@; :D^-
MO5*[8E:/L9CV":<?"7,80Q8T>KLY1<SCMYL[%C9\?Z-X[8]W^+LNIN52D(E*
ME("Z4^3ORR>I*JB;?[!@;YVYN#/=3,[D*IF*BQYT"RFJC>@-?_^-^LX?6*!.
MZ2P^D;.C(+K[(+HV[\-;:*25V(AB+;"@;8V]VE@WS,V0^7X4NN[Y8',8CS:.
M1G[H>\XQ+D9POL<9\_:X(Q;>GH5G93$JI2+EC,@D%VBE;<W]P^N&+G-\8WTC
M!,>#B')J\$!PU.7,HS@/?\_#M_+XLRJE)*NJG&4*H^&W+ANR( C-N]&&>6'D
MT<@@@<"<* I<G$.PYQ!8R_)N):I$9<6<B!>8Q1*_(<$IJ_&4SN(3.3N*7;B/
M76B]_Q.8]A Y+& ADG&18R;FJ V+.'.,!(G;J)#ZE.,W/MHO/K(N_C*%:9SI
M#JR%"\8A:EV6<\\/0X-#&\8"QB.S!A$8#ZD;X"RHT\Q_QUZ$H TEJ178SW4F
MLUJ-B:0J0"3B8]QIK>03A-,QZFV$XASN&;Q0V$&0CFD=R!IJOSW+LE+9?XFF
M@[*@K<NZ//"Y2:(-XX$3F+T%@;'0XQU]GK*&!;.R:+I+5H]_E EK+]'U7&K6
M"H*C81"&YM#"<#X-_:Y,:P0,M2N8.[40U6N;1)F<5+2<U%M\*F_'L6MT"[4+
ME^M""?"K7L/WD10"G9D[/T=Y3;W G)D(C#/0"&8N(#"'11USGS8"AMH5S%$J
MD/?;Y/Z \FEK#X^;.@8!?8)J-LFT43R*.J@T&H;:1<Q.ES\)V(.+79D2E;S@
M0H"V50AW.'<"DU$;1SW/#5K=$\%Q2H.N8FUD#;5._E=:0$0+M$TFN_IHT%I
M$(5F@QPA,.X'M)5O"(Q'O&L:-$*#VI6&UOV6#MH6"(QQEYF3&L%1:*'FT(@1
M7*1'>@>+1G'0Z T-%%A BUGH1R\;0>8POLG['(3TA[HGZ'T!W+0SE*=5T?QR
M?SVEM_A4WHZ?%#0JB-E5D$Z0Z2(IYKJ$R321"S++P<E"I',A#R.+!9:U-8SK
M!*%9U @,1()O9 ^" GW%'#Q[6*.(F%T1C8[RIKL:=FZ.=\$NHY[)IHVCH%PC
M4QLAN,CS:4<UL$8;,6:MAC%H5%!&DMQ#44P62270I&=6A?6K27]2;_&IO!U'
ML!%DS"I:AE>)S*9Z^M8/\4!J$JG#B,[AG:O@L,_W [-#(BBWW]J/(2C>[]B.
ML48B,;M$BK-\K43Z5CXNQL>420@*^)A;,P3%^ZQC!+-&)#'/FN#?ZV?6P"C9
MP"X .E/-!O9JL#%329%"\N,9;]5>OYSQI_06G\K;<4@;L<;L8JW)^&TL\=1H
M:RH6!DY(?=],#P09@:Z!/S-%,*3GP"ZM8X_(&J7&[$KM,.]MK-K2BH6A#XLP
M-XH8,O)A/\M,18TB QKX3E=W;Q0;LRNVD1[!:;;)4E&DDJ1BF@.UM*GJM]9Y
MV*I-UJ>M&]E&T;XI3G>@PT%F#N7!P8N8I:CF]0LM"9)M7:CMBXO]V?U+L\OZ
M59%Q_HJ>Q=M77XV;[9NXFZ2:ZR<VN9B!2Z<?P'JJ[<NM[8$J5_7KGJ=2J7)9
M?UV()!65!L#OL[)4KP?Z OM7C,/_ 5!+ P04    " !7@596BL8TD+L"  #8
M!@  &    'AL+W=O<FMS:&5E=',O<VAE970V+GAM;*U574_;,!3]*U<9FD "
M\M4"8FVDM@FB$OU04]C#M <WN6DB$KNSW9;MU\].TJRP%O' 2^QKWW-\STU\
MTMDR_BQ21 DO14Y%UTBE7-V:IHA2+(BX9"ND:B=AO"!2A7QIBA5'$I>@(C<=
MR[HR"Y)1P^N4:U/N==A:YAG%*0>Q+@K"?_<Q9]NN81N[A5FV3*5>,+W.BBPQ
M1/FXFG(5F0U+G!5(1<8H<$RZ1L^^]5LZOTQXRG K]N:@E2P8>];!,.X:EBX(
M<XRD9B!JV.  \UP3J3)^U9Q&<Z0&[L]W['>E=J5E000.6/X]BV7:-6X,B#$A
MZUS.V/8>:SUMS1>Q7)1/V-:YE@'16DA6U&!509'1:B0O=1_V /;5$8!3 YRW
M@-81@%L#W(\"6C6@;+5922G[X!-)O YG6^ Z6['I2=G,$JWD9U2_]E!RM9LI
MG/0&DW$X>1CZO7G@0SA7PR@8ST.8W,%D&LQZ\Z%*@-[8A\%D-)T%]\$X'#X%
M,!RK.(#3*>%(98HRBTA^!A?P&/IP>G(&)Y!1F*=L+0B-1<>4JEA]I!G5A?6K
MPIPCA=D.C)AB%A#0&./7!*92V4AU=E+[SKN,/D:7X-KGX%B.<Z"@P<?A]@&X
M_W&X]8X:MWEQ;LGG'N$;TH@5"*$D$M4UE/"CMQ"2JWOT\U"S*[+683+M+;=B
M12+L&LH\!/(-&M[7+_:5]>U0HSZ3S/\DLE=-;#5-;+W'[CU2995Y]@=CR)D0
MH(PH(B*%1+DAI!@O\1RH\EZ6@"0OL$"*228/];<ZIUV>HZUVXUW8+?=&?2B;
M_<X=2'.NK]W76?[_6>VVU>142LV].U\@7Y;>*2!B:RJK.]&L-O;<*UWIS7I?
MV7;ELO]H*L\?$;[,J( <$T5I75ZKBGCEHU4@V:ITE@63RJ?*::I^/<AU@MI/
M&).[0!_0_,R\OU!+ P04    " !8@5967T6SCZH,  !1C   &    'AL+W=O
M<FMS:&5E=',O<VAE970W+GAM;+V=6W/;-@*%_PI'V]E-9^*( "^BNK9G7(DD
M,)LFV3CMSCXR$FUQ(XDJ2<7)OU]05D3A(EAT3MJ'1K*)[P#$(7@Y('SY4%:?
MZD6>-\Z7U7)=7PT63;/Y93BL9XM\E=6ORDV^%K^Y*ZM5UHBOU?VPWE1Y-M\5
M6BV'U'7#X2HKUH/KR]W/WE77E^6V61;K_%WEU-O5*JN^_IHORX>K 1E\^\'[
MXG[1M#\87E]NLOO\-F]^W[RKQ+?A@3(O5OFZ+LJU4^5W5X,;\@L/O+; ;HL_
MBORA/OKLM$WY6):?VB]\?C5PVQKERWS6M(A,_/,YG^3+94L2]?AS#QT<--N"
MQY^_T9-=XT5C/F9U/BF7_RGFS>)J$ V<>7Z7;9?-^_*!Y?L&!2UO5B[KW?^=
MA\=M1][ F6WKIESM"XL:K(KUX[_9E_V.."I 3A6@^P)4*1"X)PIX^P+>N0K^
MOH"O%*#1B0+!OD"@*IPJ$.X+A$J!\%2!T;[ 2%4(3A2(]@4BI8 ?GB@PWA<8
M[^SPV'^[SI]F379]694/3M5N+6CMAYV#=J5%GQ?KUNRW325^6XARS?7D[9O;
MMZ_Y].9#/'5N/XA_?HO??+AUWB;BV]O)O]C;U]/X_>T_G/C?O_,/_W4NG-]O
MI\Z+GWYV?G**M?-A46[K;#VO+X>-J$W+',[VRK\^*M,3RA_*)EL:BDWLQ2;;
MU7:9M4>($]_=B4/FI?,NKXIR[I1WSLV\W+3'T$OQZ7]BYXFCLC%(3)^0*%<K
M<1S>-N7LDZ%T;"W=CDZ_U)MLEE\-Q/!3Y]7G?'!],Y\7;<6RI?,N*^8.7SN3
M;%.(/?#WOY'0_:=!)K%7\GW>B*$LGSMQ5JV+];VI!]*>" >Q<]D3W2Z&Y'I;
M?3VY>[F]_,UL]EA)4>^WS2*O'-%=8D<OV@%8U/O%Z[*N?Q8[>%:N<AD_%,?&
MX0"AAP.$[O3\$WJ_WKR^>3.)7SJWBTQTIY,USC2?O7(\\M*A+AF;C&\EF@UR
MT@83)&SZ" MWL/8\^/G:H]&(!*Y_.?Q\['&D:H*$I4@80\(X"";9U#O8U+/:
M]/BP6(HCH/7IQ_R^6+<'=GOT;AZ/XW/L^Z@4')F$!J[K$=DB$WVS"T+&KKS5
M5-_*HV/%;/HV@D,]!948-AMYWDBI5WI6O9AU=_;M>8/DB/C>05+J4O_0I?YY
M(X\\9/8:B:P*?4<B)&R*A,5(6(*$I4@8\[71^X)&04!"9?3F(%7)ML'!ML'S
M;/M'MMSF9[G6*M#7M4C8% F+D; $"4N1,!88QF,W' 6A8EJ0J&3:\&#:T&K:
M-WDC;F?T2\9'/X;:<3<>44\YBTVL"GV-AH3%2%ARULY(D9(,">,@F&2ST<%F
M(ZO->%UOL_4L;R_(9H]WF74[.#K90U;-:Z<IG7RU699?<W%^?R'NK^O=J?YG
MDRFM2GT'221L.M(<0D/?U6XQD)H)$I8B80P)XR"89-[H8-X(9EZ382/-%LHU
M^<2JW]>%D7X7HQA0K]"%LDF"K%&*A#$DC(-@DJW&!UN-K;:ZW595OI[GU2E?
M??QZ_J!HE>H[*")A4R0L1L(2)"Q%PMA8/T ]EU)/N7 $:4KN)6[W -W]+O\:
MGXR[>LO&(Z5=$[MP7P-":3&4ED!I*93&]K3 VE<<I2F;\"C%(783MD/B19OZ
MS5L/;O)UG>W"Q/Q+^]EX5[-'2E?R- I5$UJ%>YL028O/:D$"U4RA- :E<11-
M-F&7E!![5'+2A(6X<A0_$Q>(\Z+*9TU9/7DBMTOU/9-#:5.BIRBA]A@ZAFHF
M4%H*I3$HC:-HLHF['(78@Y0^)C8:UQ!X>-J9'9D^3*&T>$\+;0U(H)(IE,:@
M-(ZBR7;L,B!B#X$FQQ>45;[95K.%\.:3PZ<A*@@]CU+UEMLNW]N)T%0'2DN@
MM!1*8U :1]%DRW;Y#[$'0"<L:[2I(1OPO#'U59="0QPH+8;2$B@MA=(8E,91
M--FE7>!#GDY\A"_7]WD[CVV6U0OG;BD@BWQ^G]<OG;7XO;BA;[(O1N/J*<@%
M"?71%9H)06DQE)9 :2F4QJ T_F37RX;LHB%BSX:.9_#<9\*3+Y:[F6Q9X^3K
M^<DI/*VPP9]Z!N.1,8FH:E!H\+.GR=>^VGV17C4R'D?^2+W$-,5(8U\]QE)H
M$QB4Q@UMN(A&X8F)0:1+8H@]BK%/2CQA"61B,('2ID2/8H1Q?!*-U*EB4-T$
M2DNA- :E<11--FR7\1![R--O+ML) T/#'2AM"J7%4%H"I:50&B.FB"<@4>B.
MU ?L/R+EH5W*0^TI3Z]9;6;_VA5Z3PN'AD-06@RE)5!:"J4Q:@B'Q'DK#-1\
M""4KV[?+AZ@]'[+/;Z-ZCD*(=)VR]QPT"X+28B@M.7./I%!5!J5Q%$VV7)<&
M47L:A)SK9I?J/71B7ZG1TR!"@R!0[E-BJ&H"I:50&H/2.(HFV[C+@Z@]#_K>
M66]4CU/4IT3V&O3VH^'U'=6*>IVTF6_02J50&H/2.(HF&ZQ+>*@]X8'.?[-K
M]1XHH>$0E!9#:0F4ED)IC!JR/#\, Z)>8OZ(V(=VL0^UQS[/F0>W1TI-"P)M
M#I)=N;</H?$/E)9 :2F4QJ@AK-,[BZ-$91MVN0ZUYSK/F0E']4?Z1/P7J3:$
MICE06GQ>$Q*H: JE,2B-HVBR#;LTA]K3'.1<.+M4[Y,Z-/*A>L+A:V]NQU#-
M!$I+H30&I7$4339Q%S-1>\STO7/AJ![K^.%('56A21*4%I_3@ 0JF4)I#$KC
M*)ILQRY$HO80:5I\+N;B$K-NG[4OA37GSHN?Z"L2MLGXXP!J'C_'AEE&0>AK
M]^'02 A*BZ&TA!IC%VV/I%!5!J5Q%$U>;J4+A#Q[(/3,B9F>_N:/:D.[<%\;
M0FDQE)9 :2F4QJ TCJ+)9NWB'^_I^.?YD]WV\./Q,PH\]2;=7H7>MH6&0U!:
M J6E4!J#TKBGQV!2S\MV[*(ASQX-/7>J&S&ZDVKN]$D8:6=W>YUZ^U-7U=Z2
MB#T]&J*$^/K"5H9EV0(:^&K:"&T"@]*XH0T7E(Y.6.5H63-[_/+$3#>S(TQO
ML- 1"0-UR1:[>&]/G*L;0W43*"V%TAB4QE$TV8Q=5./9HYJ>L]C,YC0\S1>7
MWN)P5Q\WVBO3VYS0] 5*2Z"T%$IC9_<71^G*YNSR%P^X[MH);YJ6ZO(-2UW9
MJ]+;FM! !DI+H+042F/G=A='R<K.["(9[WL65_/TY()2SZ?:< A-7Z"T&$I+
MSMPC*52506D<19,MU\4OWE^WT)I=JF_\ J5-/</+-(1ZD7;!"0U@H+042F-0
M&D?19!MW 8SW8Y=<\YY><\U>@]Y^U%==4]__,M3I@J@WQ-!(!4IC4!I'T62#
M=9&*]Q<NOF;7ZCU00M,8*"V&TA(H+872F&=(BH* 1.K[#2A5>:7T+HWQ\8NP
M^89%V/R JJ_(VI7[^A!*BZ&T!$I+H33F&UZTT3N+HT1E&W8YBX]?ALTWO&I"
M(W5VY\2NW-N&T'CEO"8D4-$42F-0&D?19!MV^8K_URW$9I?J>U*'TJ:^:2$V
M-U N.*&:"9260FD,2N,HFFSB+OGQ?^Q";+Z>Q@3J(A,3>QUZ^Q&Z$-LY#4B@
MDBF4QJ TCJ+)=CSZ8SSV[.?X5GQ_;R1T/A?EMEY^=6;+K*Z+NT+X,JN=99%]
M+)9%\_7;ED^-L<C$8@*E37T]__#&5%O,'RJ:0&DIE,:@-(ZBR:[N0B/?'AI]
MCZN-3M9?Z/%=5WWF9*]4;X="XZ.S6I! -5,HC4%I'$63#=IE1[X].WKNG-\]
M5KI?#&DT4F>MV>5[6Q&:*D%IB6]8M\RP1U*H*H/2.(HFF[%+E7Q[JO3,.;^^
M814P$KBN86"$AD-06@RE)5!:"J6Q$_U%0T_[.WL_(A[RNWC(M\=#/59:]?5@
MYH)XHT#]*VP3NV1O"T)?QX'2$B@MA=+8N=W%4;*R [O\R+?G1]\WL=S7PP7?
M'47:33HT"8+28B@M@=)2*(U!:?S)KI?_]F@7! 7V(.BY4\NIR9^!'CKX8\\?
MJ]/A['7J:U"#JJ>>>6+#1I1&$56?#QFV"XCGCI6'I"FT"0Q*XZ9N<(/PQ(J[
M09?6!/:TYHFYY69+Z%&'Z!PZ#@)UU+*+]S;%N;HQ5#>!TE(HC4%I'$63S=AE
M-H$]L^DYM]QL3L,[& &AGCL*5'-"<Q@H+8;2$B@MA=+8V?W%4;JR.;LL)CCS
M+9RSYI:;O:DO2W9!H[%'M'$3&LE :3&4ED!I*93&SNTNCI)]=.:P7N1Y,\V:
M[/IRD]WGOV75?;&NG65^)_#NJY&H4%7<+PY?FG)S-1 C]\>R:<K5[N,BS^9Y
MU6X@?G]7ELVW+T/!?RBK3SN-Z_\#4$L#!!0    ( %B!5E:9)MOSM ,  /</
M   8    >&PO=V]R:W-H965T<R]S:&5E=#@N>&ULK5=M;^(X$/XK5FYUUTJ[
MY(U MP=(E(1"V99N0^]T6NT'DQ@2-8E9V\#VW^\X"5G>@G)2OA#;>9YGQO&8
MF>EL*7OC 2$"_8RCA'>50(C5K:IR+R QY@VZ(@F\65 68P%3ME3YBA'LIZ0X
M4@U-:ZDQ#A.EUTG7GEFO0]<B"A/RS!!?QS%F[W<DHMNNHBN[A9=P&0BYH/8Z
M*[PD+A&OJV<&,[50\<.8)#RD"6)DT57Z^NW$DO@4\$](MGQOC.1.YI2^R<G8
M[RJ:=(A$Q!-2 <-C0P8DBJ00N/$CUU0*DY*X/]ZI#].]PU[FF),!C?X-?1%T
ME1L%^62!UY%XH=L1R?>3.NC1B*>_:)MC-05Y:RYHG)/!@SA,LB?^F7^'/8+>
M+"$8.<&H2C!S@GE,,$L(S9S0K&K!R@E654(K)[2JNM3.">VJ%FYRPLTQH55"
M^)P3/E>UH&N[D],J4XK#SH(NBY(TQ&PL<*_#Z!8QB0<].4CC-.5#9(6)O%&N
M8/ V!)[H#:9/[O3+V.[/'!NY,W@\.D\S%TV',)L.)J/I%]MY<?]"SM?7\>P_
M=/6,&4E$0$3HX>@:?4*OKHVN/ERC#RA,T"R@:XX3GW=4 =Y)&ZJ7>S+./#%*
M/-$-]$A!F2,G\8E_**#"MHJ]&;N]W1D7%9_HIH$T\R,R-,,XX]#@,KV_7@*]
M64JW+],?\3O2K%*V4\7WS+A^ACZLXKM52K^O[/LY]N@R>TCF#628I?3Q9;I-
MO 8R]=(O]U"=?L[ZI#I=NQ"$9G'!S%3/+-%S!18$4I! =(%<0;VW@$8^81RN
MU(]U*-[1M_Z<"P:YY?L9;^\R]>9Y=9EO;_D*>Z2K0$+EA&V(TOOS#[VE_7TN
MX.L4L^L4<^H4&]8I=E^GV*A.L7&=8@]UBDUJ$CNX<,WBPC4OJ?<&F ?(#S>A
M3R /07GE19"R?+0B4$@&,$17D*ADUBI6KL]=O,S*36I%UJ6;GM8P=:NC;O9O
M5"6470GE9*CV(>H0,ZR N:^ &57 C$\Q1D-O'8(>3D%ZPSC$3#*,M6^L0!R<
ML56<L77QC%UY:I]D*>TCC\;07G"<5N@AYVM8$Q0B@$'53MFY2N3NHOK__5.M
M4\RN4\RI4VQ8I]A]G6*C.L7&UDFL6LWV4<R?8IJM(\SD%&.:YE'4JWMU>TS8
M,FTM.43T.A%9F5NL%MUK/VW:CM;'T-5F_<!OF:PE?L1L&28<160!DEJC#1ZQ
MK,W,)H*NTNY@3@5T&^DP@,Z<, F ]PM*Q6XB#12]?N\74$L#!!0    ( %B!
M5E;T?O[38 L  * W   8    >&PO=V]R:W-H965T<R]S:&5E=#DN>&ULK5MK
M<]NZ$?TK&#7326:LB'CQD3J><<2D-S,WCB=.FL\T!5EL*%*7I.RXO[X *8LD
ML("D5OD02]3!D@>/W;,+\/*IK'[5*R$:]'N=%_7[R:II-N]FLSI=B752ORTW
MHI"_+,MJG33R:_4PJS>52!9MHW4^(Y[GS]9)5DRN+MMKM]759;EM\JP0MQ6J
MM^MU4CU_$'GY]'Z")R\7OF4/JT9=F%U=;I('<2>:'YO;2GZ;[:TLLK4HZJPL
M4"66[R?7^%W, ]6@1?PK$T_UX#-25.[+\I?Z\GGQ?N*I)Q*Y2!ME(I%_'L5<
MY+FR))_CKYW1R?Z>JN'P\XOU3RUY2>8^J<6\S']FBV;U?A).T$(LDVW>?"N?
M_A [0ES92\N\;O]'3SNL-T'IMF[*]:ZQ?()U5G1_D]^[CA@TP+ZE =DU('H#
M9FE =PWHL0W8K@%K>Z:CTO9#G#3)U655/J%*H:4U]:'MS+:UI)\5:MSOFDK^
MFLEVS=7\Z\W=US\_Q]??/\;H[KO\\^7CS?<[]/43FE_?_8$^_?GUYQV:HA]W
M,7K]Z@UZA;("?5^5VSHI%O7EK)'/H"S-TMW]/G3W(Y;[88*^E$6SJM''8B$6
M8P,S^?![!N2%P0?BM!B+]"VB^ (1CQ#@@>;'-\= \_CXYIZ##=V/!VWM4=MX
M)/4*+>5JK-&R*M=(+O J:;+BH5LA69,)L-<[JPRVJIS'NWJ3I.+]1'J'6E2/
M8G+U][]AW_L'U&/G-!:?R=BH-]F^-YG+^M6-=)Q9D99K ?59UY:W;95_?+PB
MA#(27LX>A[UAPC . Y^.8;$)BP)"HSUJ1(#O"7#G=+A>_%OZ .EGFQHUI72T
M:5FD62Y0L6>FKJMOJ9HYFZI\S.2Z0O?/1T\=?LZI<TYC\9F,C7K>W_>\[YPZ
ML9!&TRSIHE.Q0,FZK)KL/]V%<JFZ6G9P\]S^*/[:9ALU3% '=S?R!S.#!234
MYL\<0%'N$VV6 2A,;;,LV',-G%RO-6K]S,F%C*FH4L%S6BZG6_DEJ6O1@!,I
M,)Z-^#[%&D\ 10C7%EULHG"("8%YAGN>X4D\LZ))BH?L/H<71@B,B+'NYR:*
M!EX0:7Q,% DYY3"?:,\G.HF/U#NBJN3J7V9%(OV$',"TK*7K4%-T(>X;M,CJ
MM-S"TS0RNSS"VOR; R#*F486 E'+V&&O5RJ>D^VM\FVMWI1R%Z629]:@O)33
M$=8A'K!4B#8N<P EIV.@$8)LR7\61@/MA9V,?E99(^2Z6G:#)\<GJ^NM'#G1
MC1M("QN/XNF<3 @.?(.3R]"8$.D)$2>A?\I$ \D!JA,9HD[RD3O#PZ>98H:-
MX8)@(?-T;@ L"'T+O5Z;8:=8N;J1P5=%6:G*TU]RB-8R^ZK;U0=2HL R"+&O
M4X)@ =<=/P3S0F+CU"LD[)9(:LAJU&9@<GSJK/4E(JD*F23"$Y !0^!CSQ@J
M".<-7-Z.%P0+0PNM7C=AISB0X7OG"E]$4O+;XB:X<?_ \XU!,E%31O6@!:%"
M%EB\/.ZE"'9KD:_-2E072N6!#$Q-,(WTJ N J%2[.@$3A:EUCO7R @?NI&8E
MPZRH5>K8J8?6'^19<I_EK2R]0.)WFF\7*F*)Y5*D$B+=QV!*PF/GE#6G2M>S
M6HO/96W<Y;W2P0>D3MK&^5JE#")[3*3& 7O0U"73P&>A,?\!'/:#P%C-$,YC
MH46@XE[I8+?4^5P\RLA15I8<!IN20SX?B[C. \!QYGG&0@ D3!C )$BO8,A!
M!9,*L=BE]HVHUE*G#<2HD#.A05)Z"U0_)1N4/%1"M,D?Q)D TH4S/6.8 S ]
M7#HA8ZZ]MB%N;=/Z+$>R0$SY,95I@#[Q(!B.PE"?>! N#&PL>D%#W()FOXPV
MR;-M#1%3;$2^[EKG (KXC.C2&8!-R6!ZCGGTRH6XE<OG010<N(29BY8I."CQ
M IV6B9HR9JPG ,9(9 DLI!<OQ"U>NDDV""0@$4AA<$)UV0SA* UTP19#.!XR
M&YE>LA"W9+GY?XHXQ)0>) @BC^DD39P4I10;\Q# A5Y@<^2DUS+$/ZG F4G'
M7A]#T"F13HWU9[46G\O:N$M[>47<Y9O;;96N$ID&=V%$]:<]:)B%E2EE4LKJ
M54\ :(0-P%80V-9!+UV(6[I\29IMU<X#Q:=>E573QLJ#U(!*#..>9ZQS$V<P
M TR%?F1SP[V*(6X5,QJIXY-C J@6QGUF!$L 1_W(*$:!.,IM H?V H>Z!<[U
M0+ KBO?;6B)4A:;-7M2EUL.UPEYE9_+"*^F*+] K?!%X0=L5KSR5**C=G&Y3
MIKVHME<N9.2J-Z+=*<R?P5T04\A,,::<ZCT% 0G#U--3.@@H!;+-V]->'U&W
M/AIKP=,+)A0H\D1Z&74.H(@?Z<X>LF65N[073]0MGMKH##X[*'*XKBU 6*C/
M^AB"^:%OR;KI8"?N0+7G)1YOZ[:.<'2HHH FPE+:^GJ)! *2(&147[ 0,)#A
MW5*!I+V HNRD:-P7C@]0=.JRD_<;SVDM/I>U<9?V,HZZ99R9Y*&\3 KT^J:4
M>5WX!NQ.4VWI40N J-BF1[?8:6I,J==LU%U_NDV>NRU(F:D>20BH20&A&((1
MD)4)M+'J91,]()M& _4H5EDJG?#(\:)"4G0F?]340-2+](+T'(#)A4X-1PS
M,(EL5'M)1=V2*CYN;X$"U1N?ZS44"!5P8@P95 KBMJ#22RAZ0$)5F710FR17
MH[*?E7E9/$S;J:FV44!ND.;Q<*#GZ1".^!*ITP-Q?F@).ZS74.Q0D0@BV#EF
ML=N0+>_S["&QUD49I&ZHIXL@$(:)7EH!8;YM/X_U"HBY%=! +$XKD2>-TH,'
MB$'5((RYOMP@7!AA7=Q!,'^X,S]FU@L?YA8^<:;R]V*A/$>V (E FH7X@5ZV
MAW"4$T/! 3B+TV"]_F%N_?--;';I2JO;R_5:[>RIK2^0$21Z:,"Y,>M,H.XZ
M(%N41L0B=]C@.)"[7G2WK2HY+J+2&:'D*:GD>-T_(['>Y.6S@'4/ VH_C!.]
MY@K!N%'<C"%8%-BF7Z] V)&%I-<[Y?IF5%(Z5N,Q8#>+2#<2Z2X3 !)&O,@8
M5F@3+:*^;5A[?<+<^J0EW.XQ*9G>99@RC+<?5"Q_E-F5I6C   6"/1H:F10
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
M1Q+=*H_.I)M!'+1?.;B3BLG40GD/Y/HKMRVR&YD;=([OPCTW1Z[MT]/A>A;
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
MN1.S-E\2;D5X-I!E538\3<G1$^C:$.275<5TEH9\)W@:C\>[Q1^+XPLWAO<
M.G(:0!U"=K?"[3!(CCF+Y(035YQ85S?4 8-R9#EYA&-3Q4Z7G#FS##7)G7G@
MR]D2<,E>A2G,/H_H3MQ,%A<2=GAB!.3A>R(>!VLV^XYTBWR<?,7O9JNTX5 [
M*R9Y6.E!^]^)_>K4ZY4($@?/E#4VXX [.$2\@1%DOT*D$H$C9FC:*$Y\N3PE
MN! SE@0&;!29!W'77Z<$B[I!@7X$RGN@4;8;FRPZ),DA,8S>9]I0F<&H7@<&
M%F$8=KGR-+J0HTRW^P3YVRAB=>86*_PQ62&+,;"40PX53-FE+#43L@I\"W1!
MUTEK"TR6G9O@N+[V;XG,,$+PSQ$&/F'!JH-#2'I$V*=CGF=VYV\?X2N !(EB
M7R\R)IL7_H48TJIB8I:(,F>!;TYD)DEQY/S%^&92ENL8V[HRO(; ^NC)9:>M
M)LVY0J(YY)4M::+N%\9>V<WK]&8@1L)T:PM>\+8':!VU#+,WIQP946JZ5Z!D
M&S\R#%LH,F V3O/$G$N#FE4)8UJQ+\"DIPWFT.Q-H!R2DEE<,MCD5&\@=M*7
ME2-WY&W(QU>$4<H]7K JUV^;3E10V[47@'^$_@2+P4XKD7T(.VO4:[(L5LO>
M/N4V,-/?&,I$,_&$80%%M>?*6])L=9)#KWT2D"FP;UMSXT2E<[*9,1*\@: 6
M^K=NB%_+<P:7#<EGS&@YHONN 3NG(8>Q[5; [DJ+ [++'_U( M84S_3SQT81
MO6R!-,79J*$ <EA@9MM:@"^AO*)G0A N /MC;B=A^G-T'309&C/?E24^@5NC
M.Y4$ PS@>9>Q\Y&3EZMD#^LV*#SBP8'=!LUC2"!V1JC*6;'2S"@-+@E(,MU_
MBF M"7GH4DB_LO!$F*'*'UG+GO\,TU6 )K8JP+,_4/!P'IYA+X4MRS;*^DP1
M4$C#+XL9;VN:?1+Y3?W & '0Y+-&-Q!OC4&0UR@ZJ<93%S(1IS!2$A$1C)YB
M39I-/XH5ZI&Q8+_MP<S-R?S.N:\Q":3(&RL4KQ%3><CS?H][TIG3KSZ\O,O]
M<W&#I.B@=]NQ*?L&/N ]2B5)0RJVF/5U):X?H6E(Y?6,06-*12)TB!X(3TB^
MM+$J3LB ;BRV;P*7D/XD T^LH_>D%#2O'E5;1,*QU>!Q#&+D ;?4:PU%7'%)
M$@[]R_-_7WZ>U^$\OUS&5+]H^&EES;55UESEE34LMX8'%A_P\%P5T"=I%5",
M?,QO"R\BU6PB_&S^U""8K<XG>C-#$>R&LC$-UKH0#X_[R1X*;16Y^I)5(/V>
M?I2$A 1_DY@#&/[F[D7Q[/K31:'5?=^'>IG4S<+%JZLO;=0?>=0OBI]DR+WF
M1+.KD-G9P99:-YBE&_9C,Z R,223((N610Q>0+9&"0Z%-R2(+45 )[IB\9@H
MA:B]@(R/QE8577+GQY*CB5XKT'[<"\D"=@1Y-*(SLZ6,,&C'NT, &+N:M!#J
M+!M=WB)@!\/?',ZIHT6PZTH5U5>L1M43ISW8=@Q?8.S4F"CWA"P#ACITR&N#
MC*8-><<_^]+KZ,>NAQ63@(3A\>>+?,L?0]Z,.!"=C:E&??87TBWV-_0,J&-.
M!7MU88N9TB%] VG*(@YI8H3#U#&+H0Z8I5DDFX3H78^O'E"-1/J9WT@.*)A+
M:V79Y^%72L Q\@M_&6V'9%BUW@J52Q9BF"UUR@S9'(=P4@MOX&H2A#1<NRVW
M%NWS@I632A MR4@U;\8)$FD"$PFE9S@B+$;W/J%\X#Q!T.H=VUBV4Q.RUH*E
MI?HA6!,IDDFP[D0]MUU6'Q S 42I\5#L.S;/9,Z>_2_!;J?$(R;\A"]"65IH
M]$-J,Z\G%9J8&CT-P:2UI'_S@B0U&8N8"! B<TTFL=M LBR/#<&H@47T>PR/
M+RYH;8?#Y,YMR>5M5=<A4-P#2F['8>"ZI"-1AGQZXFLR[PMDM8X(C,NM^[KO
M^0^.T@T(;37W]CHQ0!8S9<X04%_KHAY@YAFEY*$Q*X8(P AE%E)I4?9]+?
M=&UX+EI0@2T0XI-.^ITW15XG>3/<<>)B<5RM[CT"R@O]"QDLJSO__O;[5U9R
MKEIV6?P\]Y+:3_"^!4?%<U#HS3:P9*0V]A*=,V]B(9Y#4LUY *>OI?)OK3GI
MB/ 6"(X>.J_RR&XG%PJ*R-R\%W'X$PT1]^5(@&6#PM^=%;-%MGQ(L@2Y2\PY
M6-KL=(<UP/!A.\59C14Y)ZA500H5T:1]=R\!+!LR.@9)H6ZYPKYIR Z!@5:B
M@.(B)P5BQH_BYFG%%<OMT:[!!Y"_))077]W @FK 8>QQS1XAVM<-"9&45%O9
M0X@OK(,%JLG=\J$VQ!Y'H)N]XU%J1TCS$E<XY(J>AM(41=T<AA38CDE=6"&*
M7N8:$E*]M%Q,!26X!T9+V=<N?(TMY#IE%BOLC[(BJ3G)AR/%"J]F7<>Z?0U1
M:@PK7A3//,TW",WGWAQE$ 7FJ,:XP!D7J^Z22K0TK3=ZMQG))DM477PD\Y._
M.W?3F9??2Z7GD!Y+42^,,_?"K@V7#C3UAOEQ S=8E#G6?>]V]=IP'-_).6/B
M*2*.4U@H!<H_E;_QIA&7E<I Z6WB_I2'>H!$("O_4\GA4.$&K0X2AJ[;;*3>
MF8-?2;&1Y'^T6BZ+7 T<<+ 8]I$PA^H0?+M9Q%(U3;%;S?HL%^B8))T(;AA
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
MN^ 4PJ9>F&=6J##S C]C <F:>GD:V^$>8[BM$FNIR#C$-TT++X^QT?>WC%/
ME?BCE32)O#!,AI6W&@HJ]CL%020(/#^"G,'."HF7Y!%+HV'!A\9Q,BQ\002!
M;B7AWQY#66CNMX'3UDIA%1"'7I$5C) .HMS+BLR- \ 0!7;\"U>HR(X,,,F]
M'#HX6Y)3)'9< /K F?4[O%;!1>6"N 5AC ,Y2RP'.$TX.$((SFEH.=PA@MFR
M-X:221#$'J% 1LSA+'YJAREPSMSJSS7@'^C/%I@@#ZW7Q"R-O+C(68A-2>'!
MJ1CA$!=>&N=V^+WN*J25.?)AI8&C%Q:)VTX.G[CM*?P_MD/G(O.^;BHB/\0=
M9"P #SS2P08G"YTB@0_;%PZ1D<OH_VMG):8CDC8_MKSK*7/VBG!!5ZBL9B[/
MUEW9].3:0RI\EDCI/*!@.%3+2H^2JI&4BJBY=!6&$F.YXMV2:#)*LU+;@F>3
MO6,*]D.E00[?%?,KK07L1*[^:\WG=8-C2*R?B.!V#W=[*/G5VF;SOL/.!H*X
M4J.9V: 40=8-E$<D6FZV%+I4WR. U;@LKH33N)3:_&3D3_3/6H$<71']+8+J
MJ72S&F0,Y/LWL;4)=&\/ECW;:8) 9^E2A2E[I>B#>"R% (3$T\G,!@T I15D
MJ-'3@ZJ3L8B/&HPEG:&(>+?;1.LX"VBU;.K*EJ1KWG"47F08M)KZ&?%F!/@(
MW*TH5-_)C,XZ)"Y0M6Q(&ZT/ /4:");*<Z_;5V0LT%NTN7D.$SB,:2C1\,%=
MB1::$'AF(VCIR1=L__%"9>1C02'I>@']HH)?6?6/E(3G<B&<"R]&ECYA$67'
MXFG'6-QW 5)V'I]B$'M!$IVR;P<E_B]EVS,*S'08%LB<15Z6YS1"+^ C\=QJ
MM'06493%SGH#%8$,Z9O:A0#%[*LTMDO(O20MP#KTPB!BO\)=SMCUUH5@#S(H
MBY#0?+]@89Z@N.4V>;E0W7D;,0<IGP8IE=%#F_X'@) 7B)?J[3G[CM]1T-X]
M"]S3 Z:_/AA(Y6M2O('?R(_@/_"C#,7@':IR')^^#5?J?*L:G3="L:1FWSP(
MT;U,15UU.(/P(R#;IENY*'S^-:"LNE;05]7(W90(7?XF4L/UX4DFO1.*HAE5
MQ;YND+!49= J+(?:]CS=[X7XFF]L$=K+:E/VWE5($F$#X(_U?!Y=A)ZR'3L)
MHFF&+@UD7+7;9D2SXKBJ<OVBR+X ;X.,Z?(:3KQ :.JN>[C(2//$F-$UIFZI
MF[=WMT;".M91W-6J%/6]N[OLV6NP8;6OZ_$&EPX[(>X$O179WFJ,^PAT:O7<
M-<G>JA3O-'<7%1C8V>C)(M1:/*SJ<F6??]@*.)%^<S+NP&"H& @1@H^,*A[I
M$J)'$8#>8NAFZ+(ES7!5PLVF7J ?L-^FQ\+?<]5X=XT>ZC)YWD$%T%[(<EM/
MU Z/PY%)EC\)TG :;9W#&E(\KG&S)0(:TNG%9D3H&+"NV=@:?NM?=''OY^A5
MK<H('NK4G.Q:'!%*W@MW8P:4ABYJK7W_F1YZ[)B-7J<0-DO[!D=] C!R#U6[
MU=TSWY5[W7K:[MX(?^-J64.11BQPU)]FR80I]^[F)K@5V+>NN32(43M<"8X8
MI@WXOI P[3 A!KO'S\O_ %!+ P04    " !8@596]:K],%P$  #K"0  &0
M 'AL+W=O<FMS:&5E=',O<VAE970Q-"YX;6R-5FUOVS80_BL'K1@:0+!ER;&=
MS#:0.!G:H<6"N%T_#/M 2R>+*T5J)&5G_WYWE.VXB^/VBRV2=_<\]TI.M\9^
M=16BAZ=::3>+*N^;ZW[?Y176PO5,@YI.2F-KX6EIUWW76!1%4*I5/TV24;\6
M4D?S:=A[L/.I:;V2&A\LN+:NA?WW%I79SJ)!M-]XE.O*\T9_/FW$&I?H/S</
MEE;]@Y5"UJB=-!HLEK/H9G!].V3Y(/"'Q*T[^@;V9&7,5UZ\+V91PH108>[9
M@J"_#2Y0*39$-/[9V8P.D*QX_+VW_FOPG7Q9"8<+H[[(PE>S:!)!@:5HE7\T
MVW>X\^>2[>5&N? +VTXVS2+(6^=-O5,F!K74W;]XVL7A2&&2O**0[A32P+L#
M"BSOA!?SJ35;L"Q-UO@CN!JTB9S4G)2EMW0J2<_/%Q8+Z>&#<0[=M._))!_T
M\YWZ;:>>OJ(^2.&CT;YR<*\+++XUT"<N!T+IGM!M>M;B'>8]R 8QI$F:GK&7
M'1S,@KWL^P["GS<KYRT5PE^G/.WL#$_;X>:X=HW(<191]3NT&XSF/_\T&"6_
MG&$Y/+ <GK/^_32<53]-;O%X?_?^$WSX?;F\7\(7I [(3:L]4"M#W@&J  @M
M)<_"S7(!63J"UDF]!J$!GQIJ'BR.I4'6C9"6^M)#;0I4P5PIM="Y% JDIA"W
M?.QB6N2J+=@:A;U ZN(<Y4:L%-*A14]#@SK_>)M@"8Y*BM,$@MAY!V];O9)*
M$9$CR8L>^T2B3C)YJ;L)Q:WNVKPB7:@D]8^5.=%B5ZQ$G6,,(41$'TG9U#)G
M(^0>:7;PQE=DT-+DV @.%S$QUE'7,=G@^![5/4MY ^B\) 9X,F[H>O"YX3E4
MF":P-.4AXK3Z3>B6IB)TE9_L4D),.,JRE,%Y;XUCTS3(0#2--2*O8MB&"!I+
M#0B"AD;=*A%$L"R1HUC\38,D$">67=A)%(75E!K'1-X,>BF-%Z6(6 R:+@/>
M3'K#_2:O*9NF1O#BB=-'>\R.KP=.,(?$*%D(]GLE%)4#0G>OB #Q/P=[\(FT
MCX/!UHX+S7E*AK %5*( ;4+AY<&%7+@*2FMJH-)K'0%*S40LN:W7\;X:B97A
MPMAP8KBB.7"49ZHR1FSMMZ0[JW1+,;(/B::<+2JAUZ0A.PVA2"#X]K*+MFB1
MG2T-"U'92@Z1:1WYX2ZN7Z3X#8SBR7@"BQ<9HVCD 9=A=VW+'C26<B ;A61C
ME"2D:2VGE6O;%'1L-C)<E\-X.!S"(U7%ALO>D:=*=37)%2Z*?;U?)AG<U&R?
M^%OI/7(N2G@[C$?9Z )H'&.]HDK,GEE/XO'DZG7L-$[3\0]ACX>GL5,*2_82
M>]!A#\;G_!ZD5S^"G66O8&?D]^ E=DK85_'E\ I.3?O^T05<HUV'9P:#D_WN
M+C[L'EXR-]T%_BS>/8,^"KNF&0H*2U)->N/+"&SWM.@6WC3A.E\93X^#\%G1
M:PPM"]!Y:8S?+QC@\+Z;_P=02P,$%     @ 6(%65LF)C ?I @  .@8  !D
M  !X;"]W;W)K<VAE971S+W-H965T,34N>&ULE5513]M #/XK5H;VA)HFM Q8
M6ZF%(I &8A38P[2':^(V)RYWX<ZA]-_/=VE#D8!I+XWMLS_[\_G<P<K81U<@
M$KR42KMA5!!5)W'LL@)+X3JF0LTG"V-+0:S:9>PJBR(/0:6*TV[W,"Z%U-%H
M$&PW=C0P-2FI\<:"J\M2V/4$E5D-HR3:&F[ELB!OB$>#2BQQAG1?W5C6XA8E
MER5J)XT&BXMA-$Y.)CWO'QP>)*[<C@R>R=R81Z]<YL.HZPM"A1EY!,&?9SQ%
MI3P0E_&TP8S:E#YP5]ZBGP?NS&4N')X:]4OF5 RCHPAR7(A:T:U97>"&3]_C
M94:Y\ NKQK?/&;/:D2DWP:R74C=?\;+IPT[ 4?>#@'03D(:ZFT2ARC-!8C2P
M9@76>S.:%P+5$,W%2>TO94:63R7'T>A4N *$SB$(TZ=:/@N%FMP@)H;W3G&V
M@9HT4.D'4$D*5T93X6"J<\S? L1<5UM<NBUNDGZ*>(99!PZ2?4B[:?H)WD%+
M]B#@'7R =ZF?T5'IZ>W#&<XI,/>D:0TSS&HK2:*#W^.Y(\L#\^>]+C0Y>N_G
M\(_HQ%4BPV'$K\2A?<9H]/5+<MC]_@F#7LN@]QGZ_UW7/Z#&LPL87Y]!$*8_
M[R\?QC^FUW>S-D?F!7S- 5)GJLX1"AYUM08E^2QG*S>K#EWEX:7"&^12RX7,
MA";6"+D1!%80@I7N,8 ;*Y=2"\4"/VZ_/J1>\F33]A+, JBPB% V0\5^"IT#
M06Q'(%X-WJ>J;5;PL^S 7<'M?E.-*$W-V7,@ WO)<=(YYB>D5-@&7,)>VC_J
M)*^FD)-G#LLYVN;*ML,7_%E@E;E4&':)6G=X:A"N#1-+NOMP+J2%!Z%JA"L4
MKF9>S:SQ\@21Y](O(J8L=;--6>N\-Q3QSGLNT2[#UG*0>3;-TVZM[6(<-_O@
MU;W9JE?"<IL=MV[!H=W.MW[$=Q V5:.0J<)VF!OB71/$@I<[6N_ YPO#[#:*
M3]#^78S^ E!+ P04    " !8@596Y]$W8U(#   W!P  &0   'AL+W=O<FMS
M:&5E=',O<VAE970Q-BYX;6R556UOVS80_BL'K1@:@(@D2K(5SS9@)RY:(.F\
M] W%L ^T=+:(2J)*4G&R7[^CY&A)ZWC8%^J.O'OXW)WN.-TK_<T4B!;NJ[(V
M,Z^PMIGXOLD*K(0Y5PW6=+)5NA*65+WS3:-1Y)U35?H\"$9^)63MS:?=WEK/
MIZJUI:QQK<&T527TPQ)+M9]YH?>X<2MWA74;_GS:B!U^0/NI66O2_ $EEQ76
M1JH:-&YGWB*<+&-GWQE\EK@W3V1PD6R4^N:4=_G,"QPA+#&S#D'0YPXOL2P=
M$-'X?L#TABN=XU/Y$?U-%SO%LA$&+U7Y1>:VF'FI!SEN15O:6[5_BX=X$H>7
MJ=)T*^Q[VYANS%IC575P)KV2=?\5]X<\/'%(@Q<<^,&!=[S[BSJ65\**^52K
M/6AG36A.Z$+MO(F<K%U1/EA-IY+\['RMJ;[:/H"H<UA];V5#&;=3WQ*VL_"S
M \ZRQ^$OX(0<;E1M"P.K.L?\.8!/I 9F_)'9DI]$O,+L'**0 0\X/X$7#9%&
M'5[T'Y$R6)>BML\#AC\7&V,U_2-_'8N]1XZ/([N^F9A&9#CSJ#$,ZCOTYK_^
M$HZ"WT[PC@?>\2GT_U&ADSC'6:YO?U^O;C]^A<7[*UC]\>G=^F;U_B,\NQ.'
M)&6*FM%8S$%MP18(6U525\MZ!Z]E33NJ->1ASB:P,,Z&:HC5!O501[>$<.U@
M7T$8I(=UV<HR)Q@#$;L(PL-ZC=1NA2ISD%6CU1TZ$@9"SD8\(#]V$27PIM6U
MM*U&!EMY[P3S ^MQS,)Q J.8)<D(/F,AL_(G(YZ.612-@,<I2^,4HG'*PCB
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
MY<3D<'U" 7&?YR!(275D;4VB5.I"5/M]V<UBH3BE;B&>.(DOQQU+!O\<B)E
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
MT#C3Y"]$,[6^^V,3.5L36:DBRU>T0-+-2HG_#<,O8*. 8IMC>Q.2SNM*T F
M*,@SO6(%K>_)S[\PZW;2[(Y$K[-R8<V1U523='_L@U/?*M60WRH+=\B:<7V]
M&*7KH$Q71EZ5#AO4L>O0P..I3P,WY1%R8B^38J?"CO)H>T(<IO&X[T1XNEZ(
M9^1[[+=F4X2AJ+7#!TN\ZS-J/2"!R@'9HAV3[<@<AU-1*N1_036JBRGRE;%9
MW^_8GCC=ADT:["\K;]3B%^M_ODNB#O>M-NABJ)K]C6'KDWYB)YX^]U%ZGU%O
MTV5 5]NVE&!,50W>#JDQ<GF \+-Q$+K4U'CH?WR?ML&O//"I>W!Q^B,L/!NM
M]H3',KF.V@*7.V[,7 ]'.GY\GH OEB/;=80LY:X;]$],QRQ&0_;]=XGG>N^H
MRPJ]_@E7X^Y>H'X-R]MM89CVSTX?.G;J=E/HUMES;3,YY6D24<WFD4M:QBD/
M<# G.)6<%$;3R(Z;/J^4Z L 645\$WF+V\1S7Y].H[-!^@&R<G.TG+IDBS-V
M&I.QSM!@VCTH?E5K;S-%BX9-[,,-FSLA]9.I'_3R-IW:-J0HVF&</H=.;6L'
MB5VS>,8^R68YKOXO6\JN,3O9M'0'+HGA<$D,_\M+XD&ZXR7Q>$D\7A*/E\3C
M)?%X23Q>$H^7Q.,E\7A)/%X2CY?$XR7Q_^*2.!M]T*V%6MK/UIK9].J^[0ZS
MPY?QF^Z#\'9[]UG]ITSAXJ6!I  I"CWNC:K[5-V]&+FVGX?GTAA9V^%*9%"/
M-F"]D-)L7DC \'^!Z_\ 4$L#!!0    ( %B!5E9F.>37@PH  )T=   9
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
MFK?-M\<[_\EM-=U_N/R(9*9TR\482^/3\T'''P;K'U;-W >XD;)6%>YQ*CA
M1A,P/E90,_R@#9HOLK?_ U!+ P04    " !8@596].$UH"@)  "B%P  &0
M 'AL+W=O<FMS:&5E=',O<VAE970R,2YX;6R=6&UOVS@2_BN$;^^0 EQ;[Y)[
M28"VZ>[E0YJB[=WB<+@/M$3;VDBB*TIQ<[_^GB$I6=XX[J) $%,B.2\/9YX9
MZG*OV@>]E;)CW^JJT5>S;=?M7B\6.M_*6NBYVLD&,VO5UJ+#8[M9Z%TK16$V
MU=4B\+QD48NRF5U?FG<?V^M+U7=5V<B/+=-]78OVZ:VLU/YJYL^&%Y_*S;:C
M%XOKRYW8R,^R^^?N8XNGQ2BE*&O9Z%(UK)7KJ]D;__7;B-:;!?\JY5Y/QHP\
M62GU0 ^WQ=7,(X-D)?..) C\/,IWLJI($,SXZF3.1I6T<3H>I/]B?(<O*Z'E
M.U7]5A;=]FJ6S5@AUZ*OND]J_P_I_(E)7JXJ;?ZSO5T;+&<L[W6G:K<9%M1E
M8W_%-X?#9$/FO; A<!L"8[=59*R\$9VXOFS5GK6T&M)H8%PUNV%<V="A?.Y:
MS);8UUW?-O9@"2'\?98;(-[IRT4'X;1DD3M!;ZV@X 5!?L#N5--M-7O?%+(X
M%K" 5:-IP6#:V^"LQ!N9SUGH<Q9X07!&7CBZ&AIYX0ORG&_LD]RIMBN;#?O/
MFY7N6@3&?T_Y:Z5%IZ51LKS6.Y'+JQFR0<OV4<ZN__87/_'^?L;6:+0U.B?]
M^O;#+_>?[MY\N;W_P/#W^?VO=^\_?/E\RLRS@DZ;^8)T=M.W!$NWE6Q=MKIC
M7WO1=K)E:FT.@3/5M^S=MI1K]OZ;S'O**':_7I>Y;#G;;Q4K-1.55I.%]SO9
M"@,W#K0TR7PG'B#T8O;N_N9N]HJS?"N:C2R,XEHT#2;+!N+*?,OPJI6/E(RP
MJ1%-7HH*LX>HQ8CM^G:GM-1DJ- 8:-*WZO&#,8,%9GV32TX*Q&9P<UPBF@*&
M5RJWI@(J>)!+/6>W#<M5\WO?6!K9E]T66^&GM1INDX6B*C<-7""_M0LTQ%:?
M=WU+\QHL08+AEX%&U3O1/+&M>+2FM%(R-2+E)&C2K$MMWL&UVT9W,-+XS=D-
M)MIRU5MV@_UWHNG7@C1B_9S=0\]TQW/YL,L$!6FRV/^NVK)[(EUD92-IR:-L
M>FD4;%I%:+9J77;F!:&JS5+5D)>46&)5R4'!G'TAI+ZKF.(2,?0S\6L!C*9&
MK^FY=T^D- =VE20QJ"(XP;(J2#3,*@"W)H@[$S6Z++"(XJ5!=2 HS8$8\&"
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
M=XTBIGJU J&"3!'9KRWD=5[;H&L@\J,@!.2#AA EH,@B1,&#41]8$S7BR$G
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
ML>(_EPK!8.@!W)\71=5<T ;M;T[>_B]02P,$%     @ 6(%65N$&7C*O"0
MHA@  !D   !X;"]W;W)K<VAE971S+W-H965T,C4N>&ULI5E;;]LX&OTKA+>[
M< #5T=62LTF -.U@"O2&23NSB\4^T!9MLY%$#TG%27_]G(^4%">UTW;ZTI R
MO_OMD#W=*GUMUD)8=EM7C3D;K:W=G!P?F\5:U-Q,U$8T^&6I=,TMMGIU;#9:
M\-(1U=5Q'(;3XYK+9G1^ZKY]T.>GJK65;,0'S4Q;UUS?O1"5VIZ-HE'_X3>Y
M6EOZ<'Q^NN$K<27LI\T'C=WQP*64M6B,5 W38GDVNHA.7J1TWAWX78JMV5DS
MLF2NU#5M7I=GHY 4$I586.+ \>=&7(JJ(D90X\^.YV@0282[ZY[[+\YVV#+G
M1ERJZ@]9VO79J!BQ4BQY6]G?U/97T=F3$;^%JHS[EVW]V209L45KK*H[8FA0
MR\;_Y;>='W8(BO  0=P1Q$YO+\AI^9);?GZJU99I.@UNM'"F.FHH)QL*RI75
M^%6"SIZ_;A:J%NPCOQ7F]-B"(WT_7G34+SQU?( ZBME;U=BU8:^:4I0/&1Q#
ME4&?N-?G1?PDQY=B,6%)%+ XC.,G^"6#?8GCEWS3/O92FD6E3*L%^]_%W%B-
MC/C_/IL]QW0_1ZJ2$[/A"W$V0AD8H6_$Z/Q?_XBFX;^?T#<=]$V?XO[->'R#
M^MWE^[>OV,>+_[RZ8A_7@FVTNI&N@%"_3'KFEI@S:1AV&RV-*)E:,HOC2U6A
M2F6S8F/9X(MJ#6]*<W3"_BNX-DQ0E!EB).JYT$.<Z)^(_@G99:NU:.P)^T64
M0O.*/6-9%J1%@46<!V$489$D03K+V)7E5K H#Q+D410&43)C13"+"I;'01&&
M+,F#* M9&@=IE$#L4H!Y><\["[(B9>,TR8_8&&=S_.V8.@'C"-^C()X51PRR
M\QF=Q7I<!&F>';&/RH(+W,'$+;J<$= MGP4%#D+):9!#+Z?M+"F<.[58J&8A
M*\E=2YD+NQ6B8:K53"R7PG48QT^3$CC1H*UV7H<CO8\[Y0T4;:W2=_XPPL%-
M%P##QB46Y/&_&8;70Z09MX=$/F/3))C.4A9'DY#]DTR-@RD</NP1L2S-^_V5
M58MKES3PE?= @BB%DP@_PL_9E.* LT?8)TF$7Q*LWL-JS38"/;1!:C!I16T0
MH;B(<2+%":SS%.L"ZS1..[K+-6]6@CQPPZO6R^/D'MXL!.04*:1!.$D;S^+8
M[:9N%X>YV\5'#_BT(-26DT_AF(TRDIC"VVDVV^&%Y.LL*6@_S3H3?6KM%E'@
M HSBZ3T\%XU82LNB+(C3*<N<WXH@2E.L8ZRS(,\+ECJSGTB_>.I<,&1AG$RF
M?N^3,<XF,S(-L5#D5--7,.E3=H7BPV\,J:@9DG:.S+5WC*,#[N;:HQR[<,P.
M9%=?A*ZC7A!OP]ZH9O7<(K[L8K'0+7[L94GT&<K[(6P&)D1)$(9482AY8 =V
M,<24>E2IVKE=MA7F]4*U9!FR(XO8#%YYW=S 5J6)+;Y&(9N!_H,&1-%D%R2)
M/UNYJ2G-,K@I21(06<1?SBL0Y<$T3Z@5I#%[1VX!(1(+_0Z# ?V0:WT');9<
MES@<S2 E3&==!D<9B](=8[]VLV%QBE:5P55!%N7LC3#FA/V^+WM32MXX0KJ^
MVQLQQRK)J9R#)'SD]S<[[OTAYX^G*8IS/)TBW0^XC7IC,7/]=!KC[Z[[QHC8
MU)4*LK)(CEQ C'5T2*(-U[81VJSEAHV1-E&6NEX;YZ@K[T-TB=#55CX#^0%?
M[AHPSF+*%G)6BC+*]OAK]_@SG(/BU.2Q3(*"_$R=F\\56C.O?4I1!:".JY;Z
MJ/0-_!*=0%6R1(V7[ 6O7)RN"%CM=N:3SI!&-<\7?M;U 2O0=V=YML^J^Y[Q
MT+@8SLYH(*5!$<W^CFT'BC5@6\'6','?UPWFG76@?!9.<N#*JNI MD/+J ?J
M)7TSHV,).E9_# [K^QWECGG4%GU/?%A9XW?OWQP]K*_ R< \JV"<$[)=R\6:
M>J'4PDV^.$S"R4[]W'>*/X0S!9R)";_ALN)(T:ZGW_AIVX@5=QMQ(TM!9%8Q
MR)*U4WB)F\AR*1>28KAL+0%#J._X=-9L83'<P%;PA':) 0ZM142^"*_^K33.
MRGT53!7//K= 6*7L[B#0:G[GSBS!!'2032T9%PMI)NR"&;EJ))3BT&DCA0^2
MFG_NL,77)@D_'"G)T,#:NJW\ 7*[\Z++4B"\&Z0'J5PK>!M AJRV:RW$\SL$
M@>:S5.6$7;6(P;W 04XE:TDVH5+Z.0)?  X9'-!,N:HP[4 X1&+@8(@S]RR
M2S_[>YEQ7;]S_PIHV:XG*#\'2FDNP2HQS/\ #MT'!M9@.R<D1@!-4U'S T.,
M(N &&4D]/##-/2<(ZE$#A0+*;]?H!7=,;1O\#)/A <EI*'7>V\^NHJ0#W,;=
M5U;.>5_7B:!\!F"C_M0HBUAI\ORU( + &/<1=V_D'Z7IA/VJM@*!];7DNUN/
M!/;4?1\M?+QG@J]M55*6\_(S+IR42=[.H50(X.RMCQ+)W36+W=KNDHDM'/)"
MI=/=X^DT=AC$(8":Q.U)9 /CL0%#2A]<O!J+@BE+A^'0BK;N HZ[\9VK6) V
MY.2=E/RN3/0IZ/6!3"2QS[8)^S2@1YK!'P;T2+U(BUX0R20OV:Y3DE6?&DEN
M=?C1S^0;) $05]<[=WL$=8%#/9WTI6C>N5L :1N'N"VABE6[6GOD_T@5<<MK
MV737E3NGC<N'%HA/N[E"74<CH?O8=>D#/Z"[M@W5 5K2ERZ1NIE@'M]7'F'(
M3P?H@L=F100$ 8J!EG!G058:ATTY$M2TE4_F!UC=\FL$=B?QNES#/$1Y@_M/
M\"#DGSM8LY^+&TU$XR]2A$+#[S<5P<&-"PAT^I.F F,6/VTJ[A$S((Y#7+XV
ME9R3 ;I]O[UTU0>(#>.?M#<+TK3X67N!L*8_%-KD!RR-G:7%[' VF YL90.*
M0IO_FLW6]6+NWA(\P/CJ66%"D!P]'%.\OS921\&*5Q[S=_< /W(\9#EP\3TX
M)=%$=I6=4),C:="*$&7G0VIU#^;.X78Q%K> VX8,P;D=91M"Q]Z>(^ M--VF
MF\NW\,!65#<$6=P;(PB_"*U([+-X4MPK]U(0W)8-Q>^@J=WS2^^5?KB5PZ5
MTR6(D.?GMERY.PW1N+G6GW8@69IKQ&!W)+**;_MAYV8=&8099;F7;=8NK!X@
M8XC1H')#D=^/+]GX%W82T9V?"T=QW0!I^.9/KT_D16*J,4-UZ4T^Y'4:AEZO
MR;ZWR>.==^-:Z)5[':=G0?C#/R$/7X<'^ O_[GQ_W+_>O^5Z):%5)98@Q:4B
M&\%3[D7<;ZS:N%?HN;)6U6ZY%AQ@A [@]Z52MM^0@.&_)<[_ E!+ P04
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
M,<J_SHD^O4^R+T^_U][5%/'-)?2I7#-:*:^1S@U1HB-UL^BB2]E'K4AY")V
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
M.KV,2R94M)R'M:U9SG7MI%"X-6#KLF3FN$:IFT641/W"O=@7SB_$RWG%]OB
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
M47#]+D. <J ,X'K-0MC*4MC4AW-,1S$> '==:,@B6W:/3^KB*Z:1Z#PDU9V
M0X3/Q D8\HDNC_+V A:W0?F[P7V%FA]UT0;M)KT5CJ4&X[N&VJ_VS]%%UX7_
M->_>,E:R4<:!QC6[%H-7IQG8[GWH)I[:U)-7Y+G#IV'-3RK::,#[:V+Z^TD,
MT#_2LW\ 4$L#!!0    ( %B!5E:2<7\\-R0  #YV   9    >&PO=V]R:W-H
M965T<R]S:&5E=#,Q+GAM;-5=:X_;1I;]*X0WF$T M=S=CAV/G1AH/S+3V'CL
MM9T)%HO]0(DEB3%%*BRRY<ZOWWONHZHH471[)KN+!8*X6R+K<>L^SGU5?[]O
MVH]^XUR7?=I6M?_AWJ;K=D_NW_?+C=OF?M[L7$W?K)IVFW?T:[N^[W>MRPM^
M:5O=OSP_?W1_FY?UO6??\V=OVV??-WU7E;5[VV:^WV[S]O:YJYK]#_<N[MD'
M[\KUIL,']Y]]O\O7[KWK?MZ];>FW^V&4HMRZVI=-G;5N]<.]JXLGSR\?X@5^
MXN^EV_ODYPQ;633-1_QR7?QP[QPK<I5;=A@BIW]NW M751B)UO&;#GHOS(D7
MTY]M]!]Y\[291>[=BZ;ZI2RZS0_W'M_+"K?*^ZI[U^S_ZG1#O,!E4WG^?[:7
M9Q\^N)<M>]\U6WV95K M:_DW_Z2$2%YX?'[BA4M]X9+7+1/Q*E_F7?[L^[;9
M9RV>IM'P V^5WZ;%E35.Y7W7TK<EO=<]>U^NZW)5+O.ZRZZ6RZ:ON[)>9V^;
MJER6SF=?VT_??'^_H_GPUOVECOU<QKX\,?;%9?:ZJ;N-SU[5A2N& ]RGA8;5
M7MIJGU].COC2+>?9@XM9=GE^>3DQWH.P^P<\WH,3XXWM^#^O%KYKB5O^:VS'
M,MZWX^-!A)[X7;YT/]PC&?&NO7'WGOWI7RX>G3^=6.VW8;7?3HW^['GN2Y\U
MJ^PMQJZ[''P]MLCI87YQ&2UNE[<N:_HV6S:UI[T7>>>*;%76>;TL\RKS-+PC
M\>M\5D)XEDU;T%>.^+/;\.]*N%U;TAN[BDBW=K5K\ZJZQ?=NAP'IW6[CLI_K
M$K^]QZ"\A:NM:XGKLJ__]"^/+R_/G_X\?S_/_G)U]99_OWCZS7R"8 \#P1Y.
M[O1%V-H)0DV__H$6CHUN=WE]BZW>A53+JB_HM:K"+D'?_:8ABIPU^YI>\OW"
MET69M\1I\^R*GBKKSK4ZAY'59WE=9,2$M<]9>?ELD]^X;.%<G;FJ)#V )4R1
MZ%$@T:/)/;YSRRKWGE7 *2I-CP J+3=YO78X;&*LINWR1>4R[]9"E,+Y95LN
MA!O^UG0N(PE^TZ[SNOP]%]U,VY4OZ)OK6HP-OJ#_WNLP,QK[M[XDUL^6CJ:@
ML8CUFC:[=7F;%:5?5HWO\;7-\F"6O7,WKNX=_;ML2-$-)_MNEOVE:8I]2<>
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
M:A&F7#D.M.H5#</B#:DAY3B:];+1#"M7=FR18FC=LA)26I\^@X[!RB:+ !1
MS)T\GDCOHU,5)@>/3O(S-P4>C3Y0'G8(:88X' A;8 _ GUP2@:.)AR%T/#,Z
M)B? _%NCVDYV,L_>3F_T^,J$HT:P0E-2S%:1CL>J99KG1]7./Z4Y! #+X"3'
MB";QY5?0V5YN&8#+Q50KM^[LA%RFWMA\8#0&)G%Z<^E1QMIDJ8+TGD' 01G&
M4.!HOPL#?5Q%%"XJ2Y35ND%:R:Y)V:)4/GHWR]CE-Y1I<HU7(\,85)"9*\8G
M? \&BB7&^=5FCG4N)\;F'>Q1'9DX^*K(PWRV /"<_A@O)VETAS-#2C9*4F,S
MS!8!_YF/TZGC?)IXJ*AH/3;P:ERO'F34T$VIZM6H6QP!0C4Q6ORH-[T(-UIQ
M&%Z2;O7Z4%<+V V7CD*QDYA/.EBQ*^IRNHU)XSD?<)O(*!2:?OV@?4]KL>1N
MDJB6V)\8%''>AKC?SRKG;*[PT2PMCP*M>+"8<B(0S%S"J>$5J8G ,]*Z5VB$
MU6[SP?F<J")M4XZ-:O*PL@Y#(&<@&1@M\R9-U;2HUY9@O'PA AJ6RBE98JIN
M[_12&0PE$%GZ;LQ;BM*_L LY^4Z_T87/L[^'C'=HK0MY)DFD@PQ\JU\W2@JY
M[N0.1:G:A1&SZZ@#&!T1\L-2"U4A:29-S&N:*6BQQNJ<^>/QP;A=%@OXE129
M1X*: W%P#$*]W*VTOAW4.R)U&WRN78,FY1O!.S5*5K@L"L[>08(-=Q,7?:4U
M5:W/I;IPL+I!TSQS:=R2]&JXA&>TI!,2@31D7U@Q(\$;J5W!F*A-9,#/-S>Z
MM94W:REM9)%F%^L,KT,-&,.E\2GW3I-I!SEBJ^<^:.%,KU^U>VLE04[6"[S>
M#0H24MH-!5:7LW(%IV>YXP7!@(RS[)\2)]Q6*HPF5#\M7';1$#QT\<)#O9T1
M5$I%A=(GB)N4]H?:"C7T@_RZU<5J[Q"'4_0N#9_L<DAT@9_6Q.J[P=T=7(4J
M%:8A]Z_!!2X=XA[;@_(5JT_#NE_>4:4%U!\5L*MSL9[:^B\%*Y+F5SF3&*C>
M?L6W!HT?0NL&QEC-I:#;6#B0BHVUG@ZJ*70A!\6Q5BX4>=V6IZ!(ZZ@Y/.KC
MUF(LQ>[PY)D(M"47\D" \[U*%Q-!DJ[B=\O2 U2[B_VP6WYZ<5:N1+M+R8!N
MN8X1+6'(1B]-P#4K \!T=Y4<QHC7XGEM+&=HBQH<[<Q(A93$OJGZT#\KC3":
MF=KM'.L[U )T5AU!&F;)K#<;@IG.+3<U:Q+<MRQ7(IC9#XNC3?1>,QOY^(;2
MNVS0D>2Y4RD&/PU(_I)&I [4,!OM<1(/RJPT;)6\R.2&_0F";KJ0XZVB),,=
M.X,2,R0ATA"?@.4 1(/U&:D:$:$YN>"T7S*D$&(&(%W_71(!+^,MK-(?^DG;
M'#V.*Z0>!Q>SSH;%5)%KF&65+!PW"3W_+),^] U746-TL0O+DB!I+:,AH@&V
M$?6<ZIP(S5=Z[Y4D_EN-0@)#V"^TW0A"XSUQ:CIBMB(JH(%^*>ND'/_PG*U$
M,#G@:TMZB =9Y]7Q6:?Z+2J((_BIF&=D]7_(-2%S7,7/\+@<7_/!<@+[V<%]
M*?.]Z=N1S<SNALP9 "5%H*>I:-7S(VT?7#N;^-FH!AK!]N%F;A3W2!ACZ.(-
MO)JQR^=GX18?-4QU3ZJ1M($"']Y> XV9HEFN43P&'(<085!C7!XW OTS-!;@
MQ72>)O.DLQFO/+B<OK3@'6-:T@]71<.%RNG?2FB;NNDU+S+NBMYQ\&O$\2;&
M1OM;]A]DEVP5>N*)WQ8=EV[0!FYJ^^K]SZ&.>R $/P:XG@IHRQUWS&:??=IX
M22+<ULW'MZL^P6/D[[;(4N,;"4:_"DKM)9CM50!A#$["%+1F3F.?G3^>9:,7
MG65??VAVY3)[?/[PFR<I_=+[(%-V"I\-+#)?,W+BXF6)Z.[2\R#/@>O4PMP"
M*P61Y[4UA?(5N&FLP:Y0C5.Q51J]#&KD-B29[M'Y(S8F&MRVJ5"+H-==LAK?
M)--89ZF:#*@9>D[N$^7+>$(%P<5#JX.)*(R5;[D-+T/%NK*>9Z^XTCP'2VJ0
M9P<Q[SKM1F:E#M F;5QX+BFIY(A17\K^^.8 91W$R3FX@N/G2X19[8VW\4HO
M)OQWW<K09MKM:67B[2=&7R'TG?[^QZ0^B=<07$[?'L"YDK_S%5ZC"F/R[?$2
M@1\'R08),2)H)X'+Y,(RN7Y)K@#6 !=BP5H?&N[0S9.0U]>(XA$$DR&_"=##
M+N[! %ON<2]N<KX6&R9$8X>A;]"F2OMJ,KZ>E;W&P7UW%GJR^&-L70PV7+W%
MX$%IVA_E6G;72:!R]CH^'(HB8L@)N#G)$&Q* B7M<J-QZU!  "K@CJ!;<7L_
ME5L&]AMGMY\>=\3J)0-'3XYUSS*PEUVQ[CJXL=6;"C7ERK>ONV%'*0_$JU8_
MK?>"YI1:R:A/,NG6O7B2_7O?=!S'YIO9O^YK2T1](\%1;EA?2A&NZWQZB*7%
M8%C0Y+CBE0%&KXT6>R1A)_3\>*M+'#]/6=_EDP':$&QW3#V]*Q4^FN[+]F.7
MDOPVV"57C$NGQ?BVGAZ\4-;#[5F$7[;^--[7FIX"_UVAN%8NC*OY;Q^@"F/!
MP2FY5BT^I#R/SA^CP8,A#<:X1UE5,&7:3RY'$+!ELQ^[8:8[:-I1%CH6/M$D
MO8![4$8*8$:D>Z[ML=(TF[#+ZR2YFX@HUV00%B(P@S'E[SM=<UOTK5U9F"<M
MW.+-_]9/\7@$MDHEMO%;.(F[*I4<1APC&D"[W)H]$#D_SEYH<A8\<"R#\18Q
M4XQ@?KAD,),I4G97?9K,^C)FP<S@:FV-DSQ#ZR0;54>5[8/6'-D)BZ_L-QS,
MU$'\K0&B'IR%E3781:UV&Y#<)MX==C2SZU"OSZ29V%X:EK -$K,\;YW.*RF%
ML@XT2"[I9/=&BH>2>$S8VQ?.\;GR:+U3AF_E9Q]C$%CZ/']H,"-P;VB3LUM:
M3JPW!'N2[OS$,;0;0+CC:]B#SRU"?,-K>K4/AT\'%YSPYT$[C-TRRJFND?LE
M6!X'-S[(\?9=69DGGOI\HS>8!E9/U_IEQ=EH@=%Z9+O/E#1&))@AAG@M3MKY
MNOA2?IR'O]I4#*1FE7A%Z:7O5\=W#L[BU3Z6%-3;@3C.,7!V/\N8L; U77SR
M=XR2/TFC?YBG##<^^=31BO=V:QOGT74_B2<Y+.\]3*I\P!<_H4P="[UZ_A/^
M5@;N$&GOT(GP^2U9<Z!$PK2[T1@ZW(-P>A,C)94CA:0QU)"V&H^5R\>Q8G8T
M%!LF?9E-TEX^O$&+_[[5J9U_CF3R5X&X#'KX!^S2IFQ%4R=LD$_OMQ_GB2D]
M%=3A,8X9U)2*WQ>:Z*(UUR[O^6C-Y/WD3WJ2,[[F/USJY0),^>N>X=/,_CCJ
ME?Q)T/BX_&75UWR=-&XD6M&KY_/OR-5JY8^5RB]=L^,_$+IH.O+\^<>-R\E#
MP0/T_:JAD])?,$'XD['/_AM02P,$%     @ 6(%65@?JMG.@!   T@H  !D
M  !X;"]W;W)K<VAE971S+W-H965T,S(N>&ULE59=;^,V$/PKA H4/2"Q9<=)
M@]0VD*]#[^&*(+[KH2CZ0%,KBSB)U)%4G/S[SI*R[!9.>GVQ)7)W=G9WEN)\
M:]U77Q$%\=S4QB^R*H3V:CSVJJ)&^I%MR6"GM*Z1 :]N,_:M(UE$IZ8>3_/\
M8MQ(;;+E/*X]N.7<=J'6AAZ<\%W32/=R0[7=+K))MEMXU)LJ\,)X.6_EAE84
M/K</#F_C :70#1FOK1&.RD5V/;FZF;%]-/A=T]8?/ O.9&WM5W[Y4"RRG E1
M32HP@L3?$]U273,0:'SK,;,A)#L>/N_0W\?<D<M:>KJU]1==A&J176:BH%)V
M=7BTVU^IS^><\92M??P5VV1[<98)U?E@F]X9#!IMTK]\[NMPX'"9O^(P[1VF
MD7<*%%G>R2"7<V>WPK$UT/@AIAJ]04X;;LHJ..QJ^(7E2F^,+K62)HAKI6QG
M@C8;\6!KK31Y\=,GN:[)OYN/ Z*QSUCUR#<)>?H*\F0J/EH3*B_N34'%/P'&
MH#EPG>ZXWDS?1+PC-1)GDQ,QS:?3-_#.AMS/(M[9*WC'\OWS>NV#@U;^.I9Q
MPIL=Q^/YN?*M5+3(,"">W!-ERQ]_F%SDO[S!=C:PG;V%OGPD12;4+^*ZL&V@
M0DA3B&'Q@_<=U@Y3<M;@61%&*/ACV?S/>*]BBU4 %^D*<5^6%,=,0(R4/'GV
MKE>?8]-.\XL3<"[)$9S%(QOA%>,%H=E6*W$YNWQW)>[8Q,E:V%*$BL2J,QX'
M5 3%TF *0W!8DQ/37A;B4Z6]: _Y"8G?PN](Y*?Y3&PKK2HV>](%NAZH::W#
MH202842FYY8*'=/C0M.SHK@%8RL4N8 #3T IQDN5UF5,'H5:O_!QU>?HF+.+
M.8X.Z\!'!SD?T_,IO:)/3[9M_<)E/F2,J$.R_0S,1N(+"66Y)QVQ!3W)NF.4
M;44 =KP6T6*8(;=-IPO)Y/A8-/C=6 Z'TPVU6W=@8H6Q(=9 !:$#XU02;94X
M>P(Y#1#=0.J!(6SGF(7'#'$*A2BU 3P;^8"%*)+1]VM5_(;8?Z @.^4A2^F0
M:>=<0NCS9%=.;$>E'!J#ROD=M=M#:N\':JN!FK".0U)L[7]:G_3B84;0CG)Z
MS3WGS]O5?A+NXDY2_[^F(KTR.^:^KU7?[<EI?GDB;CJ/>?0>?)HU3)+$=D.2
MGV-(#NH'=44=\,$EI(>8DFJ'M5K+M:YUX".N=+89=CR^-Z'JOS2LQ]?G9XC-
M97+TK=.H@.0/:WQ,8DN<(B%'3\2ZW(="8R3TU6>F]IG%';BZ),M(*86[P*1(
M>*9S8 A5R0)=TQOV1_5Y;PB#,3.F0T%;"-6"^)I@9[A.LH1X]W,T.4^'Q@GB
MJ[HKV$0;UG<S./,8D38C<2\=E"=W1QI7B5RC ^*/4#7B3K72O(!]72>[V(/]
M_ UC)[G"O73XM A<<VX_*EAVH4-=CU6)R4@(1V$0^E08E@9YL6A'J8.1!,_P
M;EZ9>R^\[QK78U^L\<$] V+9Q-L44T3+TY5C6!TN;-?IGK(W3[>]C]*A*5[4
M5,(U'_U\G@F7;E#I)=@VWEK6-D"9\;'"I9,<&V"_M)C8_H4##-?8Y=]02P,$
M%     @ 6(%65D9B8='Y!0  Q0\  !D   !X;"]W;W)K<VAE971S+W-H965T
M,S,N>&ULU5=;;]LV%/XKA-<-,4#4(G7/$@.YM%N!=@N29L4P[$&6:%NH)'JD
M%+?_?M^A9,7I7"_8]K(7^Y BO_.="\\AS[;:?+1KI5KVJ:X:>SY9M^WF=#:S
M^5K5F7VI-ZK!EZ4V==9B:%8SNS$J*]RFNII)SXMF=58VD_F9F[LQ\S/=M579
MJ!O#;%?7F?E\J2J]/9^(R6[BMERM6YJ8S<\VV4K=J?9^<V,PFHTH15FKQI:Z
M848MSR<7XO0RIO5NP2^EVMH]F9$E"ZT_TN!-<3[QB)"J5-X20H:_!W6EJHJ
M0../ 7,RJJ2-^_(._;6S';8L,JNN=/6A+-KU^229L$(MLZYJ;_7V1S78$Q)>
MKBOK?MEV6.M-6-[95M?#9C"HRZ;_SSX-?GC.!CELD(YWK\BQO,[:;'YF])89
M6@TT$IRI;C?(E0T%Y:XU^%IB7SN_50^JZ12[5;E>-:7SU,G[;%$I.SV;M=!
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
MBRD=D.[?I7YB5=.]!5MEZ67IS)*><M3.@;[OE+)/$[?!^.=@^1]02P,$%
M  @ 6(%65E6NRZ0W!0  #0T  !D   !X;"]W;W)K<VAE971S+W-H965T,S8N
M>&ULI5=K;]LV%/TK%VY1- !;2]0[30PX:;=U0+>B[;H/PS[0$BUKE42/I.-F
MOWZ'E*TZJ>NE&&"8#Y'W><[5U<56Z4]F):6ESUW;F\O)RMKU^71JRI7LA'FN
MUK+'DZ72G;!8ZGIJUEJ*RE_JVBD/@G3:B::?S"[\WEL]NU ;VS:]?*O);+I.
MZ-LKV:KMY22<[#?>-?7*NHWI[&(M:OE>VM_6;S56TU%*U72R-XWJ2<OEY60>
MGE^E[KP_\+&16W,P)^?)0JE/;O&ZNIP$SB#9RM(Z"0+#C;R6;>L$P8R_=S(G
MHTIW\7"^E_Z#]QV^+(21UZK]O:GLZG*23ZB22[%I[3NU_4GN_$F<O%*UQO_3
M=CB;%1,J-\:J;G<9%G1-/XSB\RX.!Q?RX!L7^.X"]W8/BKR5+X45LPNMMJ3=
M:4AS$^^JOPWCFMXEY;W5>-K@GIW]J%2U;=J61%_1Z]Z*OFX6K33T](-PX]G%
MU$*-.SPM=R*O!I'\&R)#3F]4;U>&7O65K.X*F,*^T4B^-_**GY3X4I;/*0H9
M\8#S$_*BT>G(RXN^SVF:&R.MH9>-*5ME-EK2'_.%L1K0^?-8' 8M\7$MCD[G
M9BU*>3D!7XS4-W(R>_(H3(,7)WR(1Q_B4])G[P<6D5K2]0H.2&IZNA9:WS9]
M3?-.;7KK'NY]/6;_20W'[?^PDE2.^LJ]/C'JJ_>Q7=R"M&NEK<,1&5F#RI90
M1LA"QJT4FJ3#!R&[LEM(O<]P2%MA"+^E:E$S $5HLBNU,4B7.3M'QHP5;2L\
MK<=</JVU,N:,GM'/HM^XT.S%/2:>IRS/8KK:&#AI#)6J6S2]EV H#!*6AAG]
M"L,TB:IJAOTH.";]:W.C@K,$X[PL-]T&=L&IIEN+1GN7 27C")4%+ CBLP.9
MO;3')3ZFB$,F;/J_\19+*X>("V.:NO>;A]<0YUXYB\5"W<B'Y(=_5WZ&H%XC
MGJIM*A^;_TP99SN[OW@^N.9<W_0-.(H(P9PLYYBE <NBPFWM$G$\S1SG@X!X
MQI(BIKA@',/]G.-,'-.31SD/^8O=Z@$@X!0E">,\I3QG4111'$<L28J'8F*O
M\.$@X1[63J>;[;0B!)G3F]")"I.,%28Y76'0 %0;8,E5$>?X_?+"[GB'/23H
MGR'KKK#^@I;B"J]C^BC:C3Q6?T[J_W;]&7#G[!BPOM;JIJD03@=<GZ+[1 &>
M#BP5]RU%B,DU#G3C+/4<D*)<X3W[%Z9E"^JX(#2'K\=[F)_[$U\GR=-YB-YA
ML%QLCN_NPNC@\D7=.5W[5@"2M1R(95;->J!!SH(DP"R,$Y9Y-(3@0<1SAQ#,
MPM ! _\LCQU+PBQG/(W!R1O9B][Z O#,JF=@RUI:B;K'\J* Z2S(4U1'ED,"
M:).A'H4IB[,0TAB/4_J@184F$0VDCZ-URUYTB$\8%JBIH 6&**>L8 7J;QA$
M@'>&ZL92'A' 'N6HRJ+\U*K:*<S#Q UQ@C-)3CR"1[A6L+#(* :Y,SB0! 6+
MLM2YQQ-6!)&G0@3#W"R.4Y:DKH:&.9R/76C@+HN1B!.L2$=6I ]FQ2MCFVX
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
M66O64UD.]:V(V#3TPF<ZLG_:BVD8Q<0+J!7Z/117!_4%U(U# JCAV7=>/WW
M@QZ-W!@]Z%'7<\EGPY<\/6&W &8)T>1XAVQ!:2[+7:0 ;V*1!\XDCMQV] B:
M(NXD:!?<;LL3;6FN$E&#5T \WZ?&L\DO*"""GQT%_B0,X*TWB>%GH/[]KO[]
M_U;_4%T*T@ZNW$XU)NT694-I^WA@4--^'CM(#@F4"X2$Y%5S^3?W<$,36FRY
M@R0=W*P'5^PZ-87TA1E6.VW*';?!P#HE?YHP<;Q"'G/#,)ELF0/%/$EL!$:.
M[3&9IW!WYLC_V 1 %KHNM?T(RRVDKA\V=>?YWDZ>&P'S4DB=_]-HA!B9I8XI
MCYVQB1>N*%9@ E('LL>E5N3",X"J?E-!-G/<4PT4;K>+WT//I7C#32Z0@6-'
M0!#1H_)JG Z6!#1T7!Q8-.A,"D)C]YLJ*>H4,-TRF9L8]P\#XB-W$D)?412
M@.+,VLQ,<(Z<2=R]P !CT!\.Q6I/9"EDC%ISTWL5#]2\5ROPYXFI[UTT]L3N
MH>G-&C36)/J!:"8F=M]VD;5UD='*6;+"!=2N5Y)_'X:#Y:?J];K@>$E!S!.F
M5B3#]0/5^ -K;*>H+E'UFN6I,9Z52)L*8!BWI21O&H(2]-?2P.UJI'\%G/:*
MLS.F(8TG1&%2.+0M'#@T=G%@QS2 "C@H)-NY!'I5L[W$AL\XU+4">-J.#\_
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
M7?0P(NJ%!0?&*;76("^,P2M"I2&>8$EEXXQ"$<]76^<PF!%Q']LXW:*W@V%
ML'W5M&-("Q-V"%P=%\1)9C!6HZOUWH3VQ*_MKM][//HZ.FY?(@+OML,8 ,7L
MWX)^PH ]0@V3V0^3\BR5 Y.QPD_6Q0\O"_MY'CVWW'-EO;F86JP=*$[%&5&,
MEK(@LJ2,<_+SD4&*KKOXB05SA8"6*11)BQ)&<TE25M(R5^0#,*;C-]@\P473
M0]"J$%3F$J"QY4HBP2?.\J.C(T=2I> #C.DBIT7!8-!S6F3YV-,C'B4]7&V5
MP&Z#\4 5S',(-RMQ$)PE'@8XDU2R^/U(P4R>H@1<X[ Z]5V?'=W!.N-6\:;I
M(=/;/@S7L</JX3+[:KC#/1\?;L+OM5LU,(A:LP15-LW3A+CA=CF\!+N)-[J%
M#7 _C.(:+N3&X0'87UH;]B]HX'#%G_\+4$L#!!0    ( %B!5E9H_XQ0@0,
M 'H)   9    >&PO=V]R:W-H965T<R]S:&5E=#0Q+GAM;-56W6_C-@S_5PCO
M-J1 $'\E;=HE 9)K;W?#NA7M;7L8]J#8="*<;&42W;3WUX^2$S>W.CGL80][
ML?7!'_DC*8J:;+7Y9->(!$^EJNPT6!-MKL+09FLLA1WH#5:\4VA3"N*I685V
M8U#D'E2J,(FB\[ 4L@IF$[]V9V8379.2%=X9L'59"O.\0*6WTR .]@OW<K4F
MMQ#.)ANQP@>D7S=WAF=AJR67)596Z@H,%M-@'E\M1D[>"_PF<6L/QN \66K]
MR4T^Y-,@<H10849.@^#?([Y%I9PBIO'73F?0FG3 P_%>^SOO._NR%!;?:O6[
MS&D]#<8!Y%B(6M&]WK['G3^>8*:5]5_8-K+G+)S5EG2Y S.#4E;-7SSMXG
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
MP?&:RIFRT;:IC+U4#FKOI_*XC11#3KZDU8(UZS":+R''E+@0#2#6 )I:0-0
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
MW>R<-I_'/8=0<]P<!HAY;-)\,$EWAM1H%D?(#&:U,&O $=OC43/89$>;_&(
M3-H!4J">"@/&T)\$UIL1NR3=<RI?418'69F0B$Y#^H&3)X(,$!KGP&":Y+OY
MG=.+C[X,D/T^ C%P%YY&> GDI!DC"VM/,(_C"&]BC/X!KPUM%9I&"[!3[=3&
M G.B$%B18 7&>8)Q@7$BDF'?S5JV*\41N)=-U^N3'![9+I#EJ$B@#<I9V[04
MPL\R/Q-A[F?BY)&<#AN-DQQ3!&:K;<U"$>TD+?=DH9P&3PJ>9^G@8E\L^[00
M^ 2##G81GJM6+6M'41J()*/4QZT(HB3!6&"<!GE>4.+=/E)0(O,A&.M*Q*=9
M/^_+2Z2G)?UPI,BRL<BRHZCFNME1A2^.*VO9)4.WM9P#Z>[SH5(Y+O0&$-&<
M:[NC2@Y3M5/C4;E3T^S4D$0#VB^!)]"_\L*> ?W7+EBZU>WJ1P?8T=5B83J\
MW.FJ0>A<CB.:+"(;Q4$8,I6!6W&&HZL1:MP,*MW-W;)K<&Y:Z(X] VC3B$HD
MZTU[#U^U8;%X&H548C\Z%C#/?D&3^J.KMQM&?XKLQ7&,30ZPK/F  ;;-\I@Y
M-Q&>R'@C\([&@KZ,QB.-^0PC'J2IL#@JH25,RJ&PHI2B9,_9K\-L223H"2E"
M%:113K?*VC/Z_5!1)5Q3(D(5_78P8UY4G#/+!''X).ZW>^']KN!/LP2<,<TR
M5.$S8>,F5)2^<64"__OAFR)CF:]@%$L1G_B$6.?W 41;:5RKC%W76YH"-E&:
M^*8F<I1['T.05^A+/B^Q_9E8[CLP306CA8.5H+K3 _':7_X*ZV X=U,,XZ#@
M.'-#D7.-CB$W/:2X D O3<?T7O=]Y08$I9NZ O54="T;GZ<[/N#N-XRSP9%6
MMS\N^D/%+F$%VD&9IX>\^D)ECYT3"';*G3\)BJC\$[X=(:9\)*;\>/>'8P/F
MN>Y_,5P)'UKNP*NV_N\ N>N>;P\> H_*/WP(O"+S6"USU\JK[O95<PP&JK=/
M._<3VOKPS+[@*95%S#UH#RA0=&_<**VG0XE#A\6=REOSJ&LY^1%GCZHS3!1L
M*.JFUA4A!:!%2'^!#.Z!N:^DPU+0L&J_IS]2,/&%W^XJ$(FS!T@O>Z&KH+7B
MQ:ZBHY8 ^7-2OG:5@Y."+;[=7S[&@S=#\4)_<3=(BI?ZBZ+.OBNU\7=X*KRG
M11D>O ',]F[F&V56_OL#WZQ ?_TE?7PZ?N*XZF_V7Y;WWT=^E695P\U&+;$U
M/,UQ>C?]-X=^XO36W_/GVCF]\<.UDCBF\0*\7VKM=A-6,'[XN?P?4$L#!!0
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
ML9-CIB5G2BBU1Y[N=ZR]//U3._[W^:UK&\3(?X;V'"2:88F$F]=NE4_LZ0C
M<+:YLZ.S7W^1L?AMC[ZFU]?LDWYV#1Q.UZ5E]8P-ZCZD\%Z1PPHCR%F[L.S!
MY@VSY#P&T]OEK6UZ\[/#HL*D>NWR:NJ.7H?!\\E?Z\(5P9"(0KL[PFX>5I9=
MYF[!KO)BRJX!0$C\?%L6\\[V-W6;E^QJW4P6P!>[:HJ)95_LG:W6EGU"8GI?
M3>JE98<?:N>.V.7Y-3-C*<=^\>M%WEAVP**(RTB@HQ3/5().DG*14$<G/,7,
M W8HN1#RB)U?7#.IQC+;%:&T%V 0P>A&L6)QE++#+#EBGV&7AOV9-P5VSLZ=
ML^TX?*0CGD09TSS6^,VXSE)2($IB+)]T.SM@4AHN, _:Q3Q+4AHR4$:3>C$Z
M44SJ:0GE7N '.>0'^4_[X?W7]TSHL?".D+TCC.(BHQU&//-;-O!#Y/T0<^5'
M-->)9N^0CMEUBUUF8ZEWA<!(6J008.*8]IPDAL4\C;%O*3/X[^,;[[_N(^\0
MV#CC)A.8&&N)US&7>*=Y(A)VJ%2TSXT4/#)C&4]UQ&(#Q0VY-A8&3LG$4>](
M9307,J(>@BJ3OB-X)LA_J>)&^R$?#B]PI!ARI/C''7GY^1.3HK.GZ.R)$$6L
M"N']%7F/*@$+4\?P)+0F&[(JBS(>F1@RN4E3!@,)'0R:89 ;HWN#)C$>8X\'
M+E+J9()'FM!J:#5#KV!IQ?:DTJA/I='^5!J8!V72MZXM4-/ADW=Y0>J7:Y]A
MO?XNV+O!6[B%?2CRVZ*$\:W?WWKYM*Z%G+MW[>&<>X/PL+TF,]+DCC1QI K%
M3A[4R7?5*7?4R8,Z;-;%6KX3.1QOV3VB@]K6VWNU"8D5A83SXB8422M$$N:O
M5DW]O=.&Q,WJ$JRMJ.;#B9\R,>72$ +!I6^'MO,ZQ*O'#SDTH]^4<D*D-(P]
MJ=<5MMD 'L4=40\*.8%$#.@GR ,IPE BKR090A=AW-8-[5X"W:EA::0QTR"'
MR@2Y1W?Z3-9-@ZD;&U).-FG$$B0'+A%A5PVH;=,^>"M8V&VUI.G(WL@BDJLX
M0YQ3O*=<(W]]QF3@"[8H+9FP(;[WJIZ]6KO.3RPUAOWZ2ZJD^HTA<V520-TV
MK^8%L2FFC<<3-N+WDW =(]M$7*#YO:ZG]P5\A;P2(>H!'8\@J(I<9#*N,!CV
M5=75JR=[VRRZ:6$*_/5V7>4/WJBTT?J1;79CZ3#B.D6U.T3Z2D(KM48+7225
MP3=V9AN*PB*DCS;__DC 9O5#<@;R[=/G]]O/-AIMIZCLZ,E3V&U95_-7K6V6
M3W2-'\^'FE%&U;,/.H+0$'P>8V##$KJ2WY7P37'^0%S+A01;[R38CF,05PBE
MOROKEQLL/2(DNNMT9&%+!WSUHC*Z+854VEX.)QE[*L%-0@ES8PY0BL0/4^D;
M A<T WH-CU)-P0W$ $D1D(2R%*?J,<:@?()?G64,H6D(&DGJ(S/%U$&H48V$
M,"UZE23,$V%=C2K[#.X27QMD'."IH9Y4!DLJB!K$'@O8>Q6P]Q0"$OKN]G>!
MJ"*N @(-FBC@$7N/ #4B#E3^MX#47&&CH!6*4,4U'*^DMZ 424@-S^%2Q>8'
MQ8Q,6)S*GT9GRHV,"8U<)H+:U. 7M$AD]!2#=&8OQ^C3%A@5:7;4MWO!AQ2I
M205%6<*GC,0G#,V-^CL8[!ABQ_0VU*WC81M^]1P6 \T,7#%POT#C.H*V"\F>
MFG8$\Z GC0<;"KBE>)X*>6KT CP.H8QH4JK\*J&.'5#$Q2)ZA"^JB+"G3*G8
M(?@' 14#/ F*'Y .BSP#()T*,@-B%04S5H\BGM *.*("$=H-B#CJ[C;$>9H
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
MVRT8H5J'V=;0:HFMH0<,M+-753E@N-\%K]E9.9^K=)VQ>WF KJKU+HFK]_*
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
M5 /Y]WE9UB]OU 9VCPF\^C]02P,$%     @ 6(%65NY[ '2A"P  87D  !D
M  !X;"]W;W)K<VAE971S+W-H965T-3 N>&ULQ5UA;^.X$?TK@GLH=H'M6J(D
M2MPF 2YFKUW@METDO>Z'HA\4F[&%V)8KR<D=T!]_E.R8ID31UOJIR0(;VQD^
MBT..YPWU3%Z]9/E3L1"B='Y=+=?%]6A1EIM/XW$Q78A54GS,-F(M__*8Y:ND
ME$_S^;C8Y"*9U8U6RS%Q73I>)>EZ='-5O_8UO[G*MN4R78NON5-L5ZLD_^U6
M++.7ZY$W>GWA+ITORNJ%\<W5)IF+>U'^LOF:RV?C \HL78EUD69K)Q>/UZ,?
MO4_<<]VJ16WRKU2\%$>/G:HO#UGV5#WY/+L>N=4EB:68EA5&(G\]BXE8+BLH
M>2'_W:..#F]:-3Q^_(K^4]U[V9N'I!"3;/DMG96+ZU$\<F;B,=DNR[OLY6]B
MWZ.PPIMFRZ+^WWG9V[HC9[HMRFRU;RRO8)6N=[^37_>>.&K@T8X&9-^ -!L$
M'0W\?0/_W ;!OD%0>V;7E=H//"F3FZL\>W'RREJB50]J9]:M9??3=37P]V4N
M_YK*=N7-G7@6ZZUP[L0TFZ_3>BS^Y-SOIH&3/3I[@\+A:9',Y[F8)Z68.0^_
M.7]9SYPO2?XD9V<B'W[-L]EV6CKON"B3=/E>POQRSYUW/[QW?G#2M?//1;8M
MI&%Q-2[EA5=O/Y[N+_)V=Y&DXR(]XGS)UN6BJ-Y3S'2 L>SQH=ODM=NWQ(K(
MQ?2CXWL?'.(28KB@R?G-/4-S?GYSU](;_S"(?HWG=^&IH:G&3XV:\^^?I:GS
MN12KXC\FO^]P S-N]:'SJ=@D4W$]DI\JA<B?Q>CFCW_PJ/MGD\^08!P$IODS
M./@SL*'?_%U.Z7SG09/3=HW#NG'UP?I\0RAE<1!<C9^/_=&V\QB-:>CJ=MQ@
M1T.?D/!@I_4B//0BM/;B=0X\YMG*F<CXR>6'K/QX*1?.I/Y@$;ES*];3A0SU
M)^=_ZD5I.Q65>3V;[M+BR>0%ZYOWG3I(, X"TYQ.#TZG X4B1?H3"<9!8)H_
MHX,_(^LD/DS*7$Y#YUU2.(FS$7DU/]^;O+A#8\>QU(C*DQ;<9J%U(CYT(KXT
M$C\<\F>52^^E%].IT,+S]>_G1:?U@OK.)B08!X%I \$. \$&BDZ&]"<2C(/
M-']ZKJ*/+C0^]W"V #UMPJTF>D^.B+!W;M(O/CB?UT69+)?U/#'VPPK6=T)
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
MFF+_[LI^(-BZ?-?BD0G!LO)P18D444V0WR\9$Z\#]?I&_0;1[#]02P,$%
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
MK\"&,V&<Y!K.K^#T2K);NF$$/6=N[_J:#&$H<KVH#1NP]5JVWBC;CT2(&[5
MQ&5>9EB21#W7JB@QQ?7*H33@G'%)_ZM.F/C7-PAZQ-XB?^8&P8$ 4QQ"'O3-
M"OQ6@?]3]2Z(-+'UCUA &(6A=T#6$.8H4:Z9:]!R#<:KK3B:2(UFG=O\$X$-
M!(:MP/"":T X91DF AN4(6K+$$V[!D2&=HL.6G(\9L!SUO*<C?*\+6F6T&)C
MY#2:>NYL3 0V4 F=[L7M7+ M&_")*C$5VK 4/0\#IVW-!J_?=^[,@0?-^:.H
M(=O.4L#15[5Z/2G;F;(L 33?<K8CFJR9YJ0&8BJTH>S.0D#WDOTZ:E#.+L5$
M:,-2=/X$CAN4\_OUV&= %*!#.V4*<V;N"3,".S<"Q^W(NY(75):<7($U?=('
M8DC=R'D4\^P9FPAM6('.X\#@DLT[J1>:"FU8BLX-P5&7\1/-&QYU9>C!T#]L
MWN.PP//]X$3S=K8%CON6+R2E<?:BCAT%.GN:)D(;RNY<$)Q=LF,G-4I3H0T_
MX3NGA$;MQ_D=V^#UOTM1%+KNX=>?*<Z+HJ/O5[NW/Z,WQ_[$?$,+ 3*R5HG.
M=:@0>+W?5 \DVU9;-H],2I97ARG!">$Z0%U?,R:?!WH7J-WU6_X/4$L#!!0
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
M2)@RD,]?*!5O%RI >3)F^A]02P,$%     @ 6(%65DCP4+1A!   9Q8  !D
M  !X;"]W;W)K<VAE971S+W-H965T-C(N>&ULM5C;;MLX$/T50ELL6F 3D=0]
M:QM('+0-T"V"II>'Q3XP,FT+D40O2=GM?OU2LJ(K9;0(_6*)TLS1F?$,#\G9
M@?$GL:54@N]9FHNYM95R=V7;(M[2C(A+MJ.Y>K-F/"-2#?G&%CM.R:IRRE(;
M0^C;&4ER:S&KGMWSQ8P5,DUR>L^!*+*,\!\W-&6'N86LYP>?DLU6E@_LQ6Q'
M-O2!RB^[>ZY&=H.R2C*:BX3E@-/UW+I&5TOLE0Z5Q=>$'D3G'I2A/#+V5 [N
M5G,+EHQH2F-90A!UV=,E3=,22?'XMP:UFF^6CMW[9_2W5? JF$<BZ)*EWY*5
MW,ZMT (KNB9%*C^QPWM:!U01C%DJJE]PJ&VA!>)"2);5SHI!EN3'*_E>)Z+C
M@-P)!UP[X)]U<&H'IPKTR*P*ZY9(LIAQ=@"\M%9HY4V5F\I;19/DY=_X(+EZ
MFR@_N7C'V.J0I"D@^0K<Y9+DF^0QI0)<@ =5,JLBI8"MP3O.A !+POF/)-^
MZXP5N:Q\KN.XR(J42+HJ'W.9_$>J/^CU+94D2<4;!?7EX1:\?O4&O ))#CYO
M62&4JYC94D50\K#CFNW-D2V>8'M+XTO@H#\ AAAKW)<_[X[Z[K;*6Y,\W"0/
M5WC.!-[;)$\DO?B@"K&;/' M!)4"_/U!V8,[23/QCR[6([BK!R_[]TKL2$SG
MEFI00?F>6HO??T,^_%,7N2&P7AZ<)@_.*?2%MCIT$1]AO JFG&#V"P]&3N#/
M['TWEK&9Z_J>CQJS'DNW8>F>9#E5J3JB1R2_PP!C+X+.@.C8#(48N5!/U&N(
M>B>)?E2S]XV:^,!7DA941\\;TPL=-QC2TYCYKHLG\N@W]/R3]);5K$2YFL73
M*H%BF^RTS7P2YU<+W!!8+^2@"3DX9Z,')O-@"*R7A[#)0VBFT<-1Y3E."#TX
M*-"Q&8XP0HZ^0*.&962LT:-Q![M>4(I+CZC&##FA&^F)(MBJ+WQAJ]< O4]'
MV,'A@*'.+@A5OT]0["P0T.EV9WN:DUR5><[DA607,<MV5.K)GH3ZU4HWA=8/
MO!5W=%9U1T;EW11:/Q>MP"-#"E_C]#H?AE$TK-:Q&0X"%$P4:ROQR)S&(XW(
M0Q@.%R,:,^2[P82(HE;DT4M5'HWU&\$0#55>9X:PZT\0;&4>G=;YSYRLU)Y1
M[2>KA;XLASG)J'[=;E3K3:'U(V_5'IU5[I%1O3>%UL]%J_C(D.2CL9@C%/EH
M**4Z.^A .-7[K>HC<[*/QH+N1+XS$E6-&?;QQ/H$M[*/7RK[>"SG010%[H"@
MS@RJA<D$P5;T\6G1OR'Q4\HV6F9&-=X46C_.S@;^O#MXLUOX<V@\;C4>&])X
MK!%OI4O>L#8U9DZ IVJSU7AL3N.Q3N/5 G](5:/Q$8HFIB3<:CQ^J<;7 -VS
M#L<;3D,:(]?#0W9VYQ2P/(+]B_!-D@N0TK5R@Y>!\N?'4\WC0+)==3#XR*3:
MT%>W6ZI$GI<&ZOV:,?D\*,\:F[/EQ?]02P,$%     @ 6(%65G?H>SRI @
MI 8  !D   !X;"]W;W)K<VAE971S+W-H965T-C,N>&ULA95A;]HP$(;_BI55
M4R=M36*20#N(1$N[55JGJK3;AVD?##D2JX[-; ?:_?J=$QK1$<H78CN^]WGO
ML"_#M=*/I@"PY*D4THR\PMKEF>^;>0$E,R=J"1+?+)0NF<6ISGVSU,"R.J@4
M/@V"Q"\9EUXZK-=N=3I4E15<PJTFIBI+II_/0:CUR N]EX4[GA?6+?CI<,ER
MF()]6-YJG/FM2L9+D(8K230L1MXX/#L?N/WUAA\<UF9K3%PF,Z4>W>0Z&WF!
M,P0"YM8I,'RLX *$<$)HX\]&TVN1+G![_*)^5>>.N<R8@0LE?O+,%B-OX)$,
M%JP2]DZMO\(FG]CIS94P]2]9;_8&'IE7QJIR$XP.2BZ;)WO:U&$K@-(] 703
M0&O?#:AV.6&6I4.MUD2[W:CF!G6J=32:X]+]*5.K\2W'.)M^42I;<R$(DQFY
MEI;)G,\$&/*)3/$ 9)4 HA;DTEB.)8",C/-<0XY#,I:R8H*,2Z4M_\OJ(A]/
MP#(NS =R1+@D]X6J#"J;H6_1K$/Z\XVQ\\88W6-L O,3T@L_$AI02AZF$W)\
M].&UC(^YM@G3-F%:Z_;VZ%YQR='\-SP+VPF3L3%@#?F.]^!51I=/>/X-D#LE
M4"HG-\Q6FMMG\FL\,U;CJ?K=E5QC(NHVX6[:F5FR.8P\O$H&] J\]/V[, D^
MOY%BKTVQ]Y9ZBA7K=7EJHN(ZREW651K1* F&_JH#%K6PZ! LZH(U4<D6K#?H
M)4DW+&YA\2%8W 6+=V'T- F[84D+2P[!DBY8L@.CIT&XIXS]%M8_!.MWP?J[
ML*CO*MX%&[2PP9NP^P*P@2\LZ"[D8.>8A&%\&M/_F/Y6TW']^X;IG$M#!"PP
M,#CIHX)N>F(SL6I9]Z&9LMC5ZF&!GQ'0;@.^7RAE7R:NM;4?IO0?4$L#!!0
M   ( %B!5E:B<B<SD04  &(H   9    >&PO=V]R:W-H965T<R]S:&5E=#8T
M+GAM;+5:T6[;-A3]%<+KAA9H8I&R)"MS#+3AA@5(AJ!)NH=A#XS-Q$(ET16I
M)!WV\2,E13)EA;"-FY=8DGD/>8YUK\YE-'L2Q3>YXERAYRS-Y>EHI=3Z9#R6
MBQ7/F#P6:Y[K;^Y%D3&E3XN'L5P7G"VKH"P=$\\+QQE+\M%\5EV[*N8S4:HT
MR?E5@6299:SX\9FGXNETA$<O%[XD#RME+HSGLS5[X-=<W:ZO"GTV;E&62<9S
MF8@<%?S^=/0)GU"?F(!JQ->$/\F-8V2HW GQS9R<+T]'GED13_E"&0BF/Q[Y
M&4]3@Z37\;T!';5SFL#-XQ?TWRORFLP=D_Q,I'\E2[4Z'4U':,GO69FJ+^+I
M#]X0"@S>0J2R^HN>ZK&A'KPHI1)9$ZQ7D"5Y_<F>&R$V O#DE0#2!)!= _PF
MP-\U8-($3"IE:BJ5#I0I-I\5X@D59K1&,P>5F%6TII_DYG>_5H7^-M%Q:GXA
M\H<CQ8L,47ZGT!&ZUG?6LDPY$O?UI?>4*Y:D'_1WM]<4O7_W ;U#28YN5J*4
M+%_*V5CIA1BX\:*9]',]*7EE4LH7Q\C''Q'Q"!D(/]L]' ^$4W?X-5_K<,^$
MX]@.'VOU6@E)*R&I\/Q7EZ-5.L^E*DJ=$ K]?:$'H'/%,_G/D#8UVF08S>3Y
MB5RS!3\=Z426O'CDH_DO/^'0^W5(*4@P"@1FJ>BW*OHN]/F-4"Q%J;X=474[
M+K6J0^K5*$&%8HK:XWP:8AQ,9N/'35V&AOF>3^QAU+FF QE/6L83)^,++N6)
MSO&B,'>-+F%ED:B$#^93C11NT#GRO7CJ]U@/#IOZ<8^U<UT'L@Y:UH&;=5MP
MS"_\$:5:A1U%"+;837T/1[@GPM P@N.>5M2YS -%"%L10J<(USQ/1('^%(I+
M]!\*CJ/@9V1=I"4WY6TZI(,3>]\" @E&@< L3:-6TPBT#$>0*D*"42 P2\5I
MJ^(4I Q/MY*,Q&$<]LOPX# _C'JYZ%S3@8SCEG'L9'R;LTP4*OF7+RNV*)&R
M9/F"HX60:K 0Q5NL]*,E[%$?&!3Z_2+D7-J!Q+'7>3_/2;TN-6OV@]UIPW>>
MZU^<2X4*IOB@J7.B[9LRH&BT0<-X0V_OV NBH%7<%FG#(&.G2)=\F919_<AZ
M*=@WYN1"L!Q]>B@X-_5F4# G\MZ"0:)1*#1;U<XS8UC3C$%=,R@:A4*SI>R,
M,X9QS@W,9D6:3&/2KTEG0^-BGX1!KW:YEW4H[<X]8[=]/J!NXVU_'$3]A]'9
MP*@P\K?8OX6)QIV+QFX;75>BJ[IT#W(%\K>-)I!H% K-UJXSWSB$K3V@AAL4
MC4*AV5)VGAL[S>CNM2?:ZL=Q'&U5GFB[\N"HW[.[EW0HY<X@8[=#MC)/>X'+
M)$^R,AMD#>1K&W4@T2@4FJUB9[IQ#)N#0$ZYD1(2C4*AV;N/G8LGH"Z^08MM
MH]Q+LC/WG'MO+ *AV0IU%IZX+?Q6RK+GUU+6C;3W[BRH98="LU7<V.8&WN>&
MW>B&W>E^"\M..LM.W)9]WY3UAU(VZ*<LD!]O%'H+=T\Z=T_<[KZ?LE_Y*EGH
M(Y8OT6_?RV3]6L_MQMW[KH-$HU!HMJ9=ST "V 0&;2% T2@4FBUEUT(0]P;^
MKKZW@=GTO1&)I_UMTH%A84S,[K_E?-V+.I1T9_:)V^SOE)-N1^R>8>];"G3;
M'0K-5K?K*\@4-CM!FPM0- J%9DO9-1?$O:6_[^,U'MP[QG$_2T&[!B@T^[_M
M7=?@[](U[)#,KWME]PS[WH&@:!0*S5:WZSA\#)K,/FC; 8I&H=!L*;NVPW=Z
M\7V3N4'K)W/8?TO />O>&H'V$^.-][G,VW>7K'A(<HE2?J_AO>-(&X6B?J&M
M/E%B7;WB=2>4$EEUN.)LR0LS0']_+[2(S8EY:ZQ]K7#^/U!+ P04    " !8
M@596K+W=_'("  !4!@  &0   'AL+W=O<FMS:&5E=',O<VAE970V-2YX;6R%
ME6]OFS 0QK^*Q:JIE=9 (/Q)EB"UC:9-6J6H:;<7TUXX< 2K!C/;)-VWWQDH
MRQ;2Y$7PF;OG]UPPE_E>R&>5 VCR4O!2+:Q<ZVIFVRK)H:!J)"HH\4XF9$$U
MAG)KJTH"39NB@MNNXP1V05EIQ?-F;R7CN:@U9R6L)%%U45#Y^Q:XV"^LL?6Z
M\<"VN38;=CROZ!;6H)^JE<3([E525D"IF"B)A&QAW8QGMY');Q*^,=BK@S4Q
MG6R$>#;!EW1A.<80<$BT4:!XV<$=<&Z$T,:O3M/JD:;P</VJ_JGI'7O94 5W
M@G]GJ<X75F21%#):<_T@]I^AZ\<W>HG@JODF^R[7L4A2*RV*KA@=%*QLK_2E
M^QT."ESW1(';%;B-[Q;4N%Q23>.Y%'LB33:JF473:E.-YEAI'LI:2[S+L$['
M7T6YO7X$69 E;#2Y)FM\[&G-@8B,W%-=2Z89*!.95/(W]7()FC)^12X(*\EC
M+FI%RU3-;8VVC+B==!9N6PON"0M+2$;$&W\@KN.ZY&F]))<75__*V-A5WYK;
MM^8VNMY)772Y9"KA0M42R(^;C=(2C\'/(8^MUF18R[P:,U71!!86GGT%<@=6
M_/[=.' ^ON'4ZYUZ;ZG'V+@WY*FM\ILJ\W;M8L^91IBZ&X!->MCD'&PR!&NK
M@@.8Z_NA,PSS>YA_#N8/P?PCV'@:>"=@00\+SL&"(5AP#)OX83 ,"WM8> X6
M#L'"(]AT/(V&65'/BMYD/>:  S?3((>(T=$I"4,'/_\Q[8,A8>;M/95;5BK"
M(<-"9Q2B@FQG6!MH435S8R,T3J%FF>/8!VD2\'XFA'X-S"CJ_TCB/U!+ P04
M    " !8@596$\;A0, -   FM   &0   'AL+W=O<FMS:&5E=',O<VAE970V
M-BYX;6RUG5MSVS8:AO\*1GN8=B:U1(JDY*SCF=@X9<;99N-M]V)G+V@)LCFA
M2)6D[*33'[\@10N"1,&B\[87K4YX/LIZ2H!X2?#B*2^^E ]*5>3K,LW*=X.'
MJEJ]'0[+V8-:QN59OE*9?F>1%\NXTD^+^V&Y*E0\;QHMTZ$_&D7#99QD@\N+
MYK5/Q>5%OJ[2)%.?"E*NE\NX^':ETOSIW< ;/+_P.;E_J.H7AI<7J_A>W:KJ
ME]6G0C\;;BGS9*FR,LDS4JC%N\%[[ZV<C.L&S2=^3=13N?.8U%_E+L^_U$\^
MS-\-1O46J53-JAH1Z_\\JFN5IC5);\=O+72PK5DWW'W\3.?-E]=?YBXNU76>
M_B>95P_O!M,!F:M%O$ZKS_F35.T7"FO>+$_+YM_D:?/923@@LW59Y<NVL=Z"
M99)M_AM_;?\0.PV\X$@#OVW@G]I@W#88[S<XMDE!VR XM4+8-@A/;1"U#:+]
M!M&1!I.VP>34"M.VP;3Y=3<_1_-;TKB*+R^*_(D4]:<UK7[0"-&TUC]ADM7N
MWE:%?C?1[:K+FSR[_ZE2Q9)0=5>1G\C[^3RIK8I3\B';_+]1._8#556<I#_J
M3_QR2\D/?_WQ8ECI^C5E.&MKT4TM_T@MCWS,L^JA)"R;JWE'>_%">]\!&.HO
MOOWV_O.WO_*=1*[NSH@_?4/\D>]W;-"UNSE5LS,R]NKFWGG7W^/[JK.3J_M>
M1W/N;GZK5KKYZ.C&B].K=VV\/.6[3[J:6[_D>.OQN.&-CVZ.MO=#5E;%6N]9
M*_+?&_T!\J%2R_)_'5MWM:$%W;2ZPWA;KN*9>C?0/4*IBD<UN/S[7[QH](\N
M2Y PBH0Q)(PC80()DR"895ZP-2]PT;5Y"U44:DX6219GLR2[)[.\K$H29W/=
MBVHMD[)<ZW?4YO4W)%-5EY+.,GV51,(H$L8VL+"!U2.KQTO/"T;U/Q?#QUW=
MD%5%1]61WU%5@JI:*H5;E4*G2N_+4FEQ"I7J3E=[5.6ZJR]U[TS2/-;CO/M"
MJ7KOIAVZ+_*R[++(6:&O14@81<+8!A;M_)YC?SH.IH<:(<N*CK*3Z4;?/8]
M92V/HJU'D=.C3X4^MBFJ;\TN2/VV3E:U-4=W/$Y87V60,(J$L>C@M_-&X?EX
M?*@,LJSH*.M-)Y/@4!E064N9R5:9B5.97]5#,DM58PQ[-J9+%B>FKRQ(&$7"
M&!+&D3"!A$D0S%)NNE5N"AVR3Y'F(6$4"6-(&$?"!!(F03#+O/.M>>=_^CC+
M6:&OC4@81<+8^4'O%9UWC9LYLJHX/QBM3\:CKM$ZJ*IED3<R<V<CIT<?-]+<
MU-*\WTK398L;U%<7*(U":0Q*XU":@-(DBF;+MS-QZT&[SQ:'4A!)HU :@](X
ME":@-(FBV0KZ1D'?N?_[=YT;-%WF(IXE::*/.)=QM2[J!_H -,GGY(<D(]]4
M7)1=><&5F]_;222-0FD,2N-0FGCA5XY&9-G$+IT&@K;$-M#,^GO.J=W+\&P2
M_HW<JBS)"_+/O%(EH6M5API3\H?U>J=^T!0 2J-0&H/2.)0FH#2)HME"FC#
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
M\KQZ?E(7>,J++\UF7_X?4$L#!!0    ( %B!5E9$+<K]500  ,@1   9
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
M%%@%D-^O*16'F^H'VA.?Z"=02P,$%     @ 6(%65G@/5!?X @  K @  !D
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
M+"YBG?^8+K2(#G>W5:]2 (9CP+',B V\QU@3/P7PB0(^@8%_+#<2'>4>\<A
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
MRXW$YB;;VM7'V-;'W=?_'[:-K&VCEV_M:XI@YX4@KC3KKRC^IAYU?=2WJ_?
M MMZ9-T6A=WV< M#70/U"NW"0D*MUZ)!) -#0=,^NMLCL;EI6]]&08,\RL!J
MJF#7AR"N1.NQ*.RQS^KZ_5[K@>S>O")KMRALM\=ZV'ZG]4!V"\76;''8;%LV
MAKV/+X/AQ[9Y+#8W6>O9&+[<QG!4XX[%YF9LC1N'M]H'/:%&>YLO"'&EM9Z=
MAQWV.0,:[W?<(,25:AT7AQWW</O"70/M" Q!7('67W$_DFWAH%$?W=V1V-RT
MK5OC\,[X&-O"GKUQ]Y&7#[7[L2NV!HO#!ONL9M]OM$&(*]4:+0X;[9'65;/M
M>93H0WGJVFN]L36ORS\1<:^K!'(ZUW'IZ5 3B.T;Z.V)XLOJ)>X=5XH7U>&"
M$MT'!J"_GW.N'D_,>^'F_P F_P%02P,$%     @ 6(%65F6+]J0#!   '0X
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
M0!]AL:+1"KW7[%))0:!WZ+.:&70?2> @))KMR 9-6"2Y>@1HECY^]'H*DM!
MO%'Q$R+6Z$X-2 [W#DU!T%5$)"P0$?GU^TA('JNID"KDRVR*7K]Z@UXA&J%/
M- C48Q8C6ZHN=:WV/.OH0]J1^V)'\QODX;?(=5RW)GUR>CJNIMN*VYQ@-R?8
M3?"\XP07W8J7R)Y2,0^8B!73Z)_?%12ZEQ"*?^MH2-?MU*^KY7\K-F0.8TOI
M6P#?@N7__!/N.;_4D=(26(4B+Z?(,Z'[?S"M:!(@$K)8C0);*B'FK-&"M3H6
M4NAN JU_L[9^QW%&]K;<G''Y'VRNDS?7,3:7Z^91#7\JGL\1O$6_+I>0_(2A
MW^+@NYJVNHE+6S0NT/1!MP16X:*;<]&]DA:Z;5+4$EB%HEY.4>]R6N@=:,$]
MT((YIE)S/Z^Y?]J(<SWBC2I.@3$NE>/<.$X7[U5]/*Y2^2"O?-!4G'_N6%F<
MZG4 X1/P%UX):1?&19I.7TM@%3Z&.1_#*PETV"9%+8%5*,).X9B<RTDTPR[K
M#Q]H]$A0M>Z2T\.7DFF&O*\_[/7W*S\>6*V^L%'8:$%JI;KF (W%:EZGZ2BV
MA59EI7!.V+N28'%+IBFCZ1(6#!<>#)M-V'F2[9PB67-0M>["+V&CUSA+LMU3
M)7L\L%I]866PV<O42/:.Q=RDV&YM*\9E&H]B2VA54@JOA/O74JS1I36FJ26T
M*DV%,<-F9W:>8@<'8O0.%7L)HX4+IX6-+N4L:0]K%>LYP_T6+V&4W,(HN6:C
M5*=_U5YC_9N7:;S3T1):E93"A;GX6OM!1OO7F*:6T*HTE7;-S';O+/UGV.8W
MMKF 'VVP<&ZN>=/K#/UGR/OZ=X>#_19;=5UV:9=9;_%_(ER-JT !+!6\<]-7
M?/-TUSP]D6R3;#P_,2E9F!RN@:@^=8"ZOV1,/I_HO>S\OPO_?U!+ P04
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
M%S_R?F]S\SG)XC.1[1Q!ISZ"SC'V\21)BKR@6$&**)<2887FL"2,&5=KYZY
M$)ZV.;0D[EIBDWO7XXX?]3OZPUAONVH?%OH#OQ_LPN)]6-#UO-"O83ORNK6\
M[LGREOJ*0!=&Y*51"2P]KJ]DCK;U#<+.8-#0UP)K<4.\#VNX84=?5.N+3M;W
MWNK[:/39T+A"4RPS]$[?>^@#I$NX0C,L@*DVL4>7^:_1<4ZR^$QD.^[MU>[M
M_7\25.^<1W!.LOA,9#M'T*^/H/^S$E1_+^2N@Z#7"-\64+\7A8WH;4'U_$[8
M'KR#6MK@J+0GILM82OYIY";=6F BT!K3 HQ"4GU/2&@OZ(I/D#4VI61K13+8
MSS.]?K_;4+V/BORNWQ"]#[H.(N] 1O:]'^68=U3V R042TD6),$VG+3$VA%,
M1XQQ T@36("%.>;VTLO;VUXP\!K7RK0-%3;=$;>@!OU#0K?J3O^G73X5]<[M
MZG6CYN7: MO_QN,VU,Y'7@ITMVKL',32OE4D2GC!5%FBUJ/U>VAB7P&-\3OS
M3K*U^P^:\I'U"0L=NA)16&A*[Z:G]R3*=TO947QE*_DY5_I=8)N9?NN!,  ]
MO^!<O7;, O7K<?PO4$L#!!0    ( %B!5E;/JQFL@@4  , M   9    >&PO
M=V]R:W-H965T<R]S:&5E=#<Y+GAM;*V:76^C.!2&_XJ5'>VV4K=\!9)TTTB=
M H&02M5T9_=BM!<TN D:P(SM--/Y]6L^2H%01&9.+EH@YWW.(?8;&\?S Z%?
MV0YCCK['4<*N1SO.TRM)8IL=CGUV25*<B'>>"(U]+D[I5F(IQ7Z0B^)(4F79
MD&(_3$:+>7[MGB[F9,^C,,'W%+%]'/OTY2..R.%ZI(Q>+WP*MSN>79 6\]3?
MX@?,/Z?W5)Q)%24(8YRPD"2(XJ?KT8URM5:T3)!'_!/B ZL=H^Q6'@GYFIVX
MP?5(SBK"$=[P#.&+?\_X%D=11A)U?"NAHRIG)JP?O]+M_.;%S3SZ#-^2Z-\P
MX+OKT72$ OSD[R/^B1P<7-Z0GO$V)&+Y7W0H8^41VNP9)W$I%A7$85+\][^7
M'T1-H(S?$:BE0!TJT$J!-E0P+@7CH0*]%.A#!48I,(8*)J5@,E0P+073ML!X
M1S K!;.A&13YM>7DP9*JL0>WMO+:W$K>WE+1L?)>:?K<7\PI.2":Q0M>=I!W
M[5PO.F.89"Y\X%2\&PH=7SQPLOFZ(U& *?L#6=_V(7]!?Z*;( @SE_@1<I/"
MZYEGSDS,_3!BYR+D\X.)SCZ<HP](0FSG4\Q0F*#/2<C9A;@HCO_>D3WSDX#-
M)2Y*S1)*F[(LMRA+?:<L145W).$[AJPDP$$3((E[K&Y4?;W1CVHOT<2;2Z0I
M%TB55;6CH-M^^0-.A5Q^5V[VRU?[I%=N#2]>Z9#;PXOODB^'%]\E=_KE=S[M
M+=[]M89;_=I'YPV7RQWR=;_<QH^72!UW%=_HQ5IE5RWG:>_P2H-^N7EDG(H1
M[+^.DCX6B'$W(AO6KUCJ;_#U2(S;#--G/%K\_IMBR']UV0(29D+"+$B8#0E;
M0L(<2)@+"5M!PCQ(V!H(UK#HN++HN(^^N"5Q+(9*E@VL8IZ:[NEF)Z:)Z$R,
MB,4X>=YEVE[HJ::%A)F0, L29D/"EI P!Q+F%C CAV5/5<\+19>SUUQZKOOQ
M.*X5X1U'&)JFJJVP-5#U#?OHE7WT7OL\9!:I^>8"^3'9)[S+,[VD4ST#"3,A
M818DS(:$+2%A#B3,+6!ZW3/:1->-EF4@<WK'.35MIHY;Y@)*V3"749G+.-%<
M*0TW&*68%F,3.LL>ZZK3SI&J-\6IKH.$F9 P"Q)F0\*6D# '$N86L$G- 3/E
M4A_+;R^E94#(]-YQ>EV[U"<M P*E;!AP4AEPTF_ ]JPPI61+_5B,<GN^(S3\
MT5[L*#S72SW5<Y P$Q)F0<)L2-@2$N9 PEQ(V H2YD'"UI.CP55MSH$;?IQ6
M?IS^I!\ISG[#")-MS9GUP/=GI=/CJ8>A*NW9^FUO8:>Z$!)F0<)L2-@2$N9
MPMQAC;Z"S.E!PM9 L(8+9Y4+9[VKFF;X' 8X"1BZ]U_\QPBC+VL1@ER.8]:Y
MQ#F#' \A828DS(*$V9"P)23,@82YD+ 5),R#A*V!8 V_*O+;KX9R[[CYYMC4
M#SMGK"6@_HTXG8[UUB#8%35K1YF=45.U&65U9C1:3_QV9Y3:>BQ9#HIRNJ(F
MTU9&MXQJK+JIQJ3])-0!TW1UUEH^\#K"VLMW_6WWLWVC]HNRTMLW/F'&:;CA
M8KZ43Z\Z>T<OXM0O<%":"4JS0&DV*&T)2G- :2XH;05*\T!I:RA:TZ[JFUU5
MX,E7"80R+R3-!*59H#0;E+8$I3F@-!>4M@*E>:"T-12M:=ZW[2!*[T_90^9A
MH+M!0&DF*,T"I=F@M"4HS0&EN26M/J/4CQ8N0%-ZH+0U%*WPH%3;3!ECNLVW
M"#.TR9;[BNV&U=5J&_)-OAFS==U5KKQB,_$;IMC;?.?3;9@P%.$G@90O)^*S
MI\5VX>*$DS3?LOE(."=Q?KC#?H!I%B#>?R*$OYYD":I-VXO_ 5!+ P04
M" !8@596MS@0!(@'   07   &0   'AL+W=O<FMS:&5E=',O<VAE970X,"YX
M;6R]W&USHE84!_"O<L?NM+LSV\A%1=TFSB0!? 01V/9%IR^(WD1F%5S 9//M
M"XA$$%AL_M,W&\5[?@<\\5PB>[E^<;UO_IJQ@/S8;AS_IK$.@MV79M-?KMG6
M\J_<'7/"5QY=;VL%X5/OJ>GO/&:MXJ#MILESG-#<6K;3&%S'VS1O<.WN@XWM
M,,TC_GZ[M;S7.[9Q7VX:M''<H-M/ZR#:T!Q<[ZPG9K#@ZT[SPF?-5%G96^;X
MMNL0CSW>-&[I%Y,*44 \XD^;O?@GCTET* ^N^RUZ,E[=-+AHC]B&+8.(L,(?
MS^R>;3:1%.[']P1MI#FCP-/'1UV.#SX\F ?+9_?NYB][%:QO&KT&6;%':[\)
M=/=EQ)(#ZD3>TMWX\;_D)1G+-<AR[P?N-@D.]V!K.X>?UH_DC3@)H.V2 #X)
MX.L&M)* 5MV =A+0KAO020(Z=0.$)$#(![1* KI)0+=NAEX2T*L;T$\"^G4#
M*'>L'%<[)"UV[6K38[EI[7K38\%I[8K38\GI6<W+*D*/1:>UJTZ/9:=G=2\-
M.1:>GE5>* LYEI[6KCT]%I_6KCY_K#X?5[]Y^,#'W4*T FMP[;DOQ(O&AU[T
M(&XY<7S8)&PGZHY&X(6OVF%<,# "=_EM[6Y6S/-_(]+WO1V\DM^)$7;AU7[#
MB/M(1/O97C%GY1.1+3>6QU;DH\@"R][XG\*A7PV1?/SPB7P@3>*OPY=]8COD
MJV,'_N=P8_C87+M[WPJ!ZV80[G*4N+E,=D\_[!Y?LGN4)XKK!&N?2,Z*K;)
M,SS6](#YXP'?\95B> Q7I$4_$Y[C^8(=NJ\.5]WG*\*U2L/%ZG"#[<+L7&FX
M5!U^NW\*L[=+P^7J\,G>J<P^K Y7K%?"=4JC1S^+]BK?^'%UN,P>K@A??NB3
M^F6G!>'3.F5OEX;/ZI>]*%RI4_9.:;A:O^Q%X?/:92^*UNJ7O2A\4:?LK=)P
M_7V?=N-]OS5F_7"NHG>UTF;=BKU6F9=V8LUZM1["]OSW+!Q"Q@';^O\4[-_=
MP6L7>]&9]Q=_9RW932,\M?:9]\P:@U]_H0+W1U%G1&(B$I.0F(S$ADALA,3&
M2&R"Q*9(;(;$%"2F(K$Y$M.0V *)Z4C,0&(F",O,"^UT7FA7Z8-[RU^353HY
MK(ZGZ3OF'4[)R<?HE#P\44^W?"J:+2JS7#I;'+!>C$7?T3P/N*L6[5PWGT^G
M 61*J59*&9ER6"OE")ERC,0F2&QZP+K9-R/[5LR0"94:"55DPGF-A!HRX:)&
M0OU\#']%A>P@XWP0O>*S8\S#F,YILG1$IC%UTL;4J6Q,MUMW[P3I]P9%/:<2
MN+3G=,X.H->GW5S+06:4SC/V.=K+=1QDQF%1QDX[UW"0&<=(;(+$IH7UIKF.
M@\RH%&;,?8Y49,9Y848NUW.0&1=%&;G<IT@_'R3PO6Z^ZYR/:G6$=F[O3=#>
M9UJ4D+8HH;)%O?U-O;/LP@XEG+\=O79NAK^O3'+IW\8%&?OYC!(RHUR4L9?[
MM1XB,XZ0V!B)38KJ+>1^L:?(C+.BC'RNC2G(C&J=C'-D1JT@8[>7>U<7R(SZ
M>4:!%[JY@S3.1[4Z?#\WGYKGHTK.C+IIV^G6;#OI195;9T6TL >1HF\:[RJY
M2\^3D)B(Q"0D)B.Q(1(;(;$Q$IL@L2D2FR$Q!8FI2&R.Q#0DMD!B.A(SD)@)
MPC+30B^=%GK@*SP]Y+R Q$0D)B$Q&8D-D=@(B8V1V 2)39'8#(DI2$Q%8G,D
MIB&Q!1+3D9B!Q$P0EID7^NF\T/]?KO!49KETMD!B(A*3D)B,Q(9(;(3$QOV"
M*PW][)_!$V3"*1*;(3$%B:E(;([$-"2V0&(Z$C.0F G",I, Y=)9(/K/W>^[
MGE8M7-KBH9H(U22H)D.U(50;0;5QHIU^F<D+G5[N^L($FG0*U69038%J*E2;
M0S4-JBV@F@[5#*AFHK1LVS]9HT'?>8VR&KBXZR,U$:I)4$V&:D.H-DJT;)_F
MV[FKLF-HT@E4FT*U&513H)H*U>9038-J"ZBF0S4#JIDH+=OU^;>NS__G2\1%
M:UGNJKV+)P&D)D(U":K)4&T(U490;0S5)E!M"M5F4$V!:BI4FT,U#:HMH)H.
MU0RH9J*T[%SQMC"0HE<&4NC20*@F0C4)JLE0;0C51E!M#-4F4&T*U69038%J
M*E2;0S4-JBV@F@[5#*AFHK3L9/&V6C"Z>\C_<#&Y.LW%4PA2$Z&:!-5DJ#:$
M:B.H-DZTGRR/G$"33J':#*HI4$V%:G.HID&U!533H9H!U4R4EIT;WA9LTG>O
MV*P6+F[[2$V$:A)4DZ':$*J-H-J8%JQ1;7%G71^Z%!2JS:": M54J#:':AI4
M6T U':H94,U$:=FN_[8&EKYW$6PU<''3ARZ7A6H25).AVA"JC>CYJL8^[;7S
MUY>ABVNAVA2JS:": M54J#:':AI46T U':H94,U$:8>FWSRY">R6>4_Q+:=]
MLHS.YP^W1TVWIK>UOHUO[IO;KD>WNXYO+OO&'.Z5K5C>D^WX9,,>0Y*[ZH:M
MPSO<?OKP)'!W\:UF']P@<+?QPS6S5LR+!H2O/[IN<'P2)4AO C[X%U!+ P04
M    " !8@596_+'OP/$(   $3   &0   'AL+W=O<FMS:&5E=',O<VAE970X
M,2YX;6S%7-MN&[<6_15"#4X3P(GFJDN.+< 24S1 4QMQTCX<G =JAI(&F8M*
M4G9<]./+N4@4-12M<;:A/,2Z;"[.7N3>Y"(I7CX4[!M?42K0]RS-^55O)<3Z
M?;_/HQ7-"']7K&DNOUD4+"-"OF7+/E\S2N*J4);V/<<9]#.2Y+W)9?79+9M<
M%AN1)CF]98AOLHRPQRE-BX>KGMO;?O Y6:Y$^4%_<KDF2WI'Q=?U+9/O^CN4
M.,EHSI,B1XPNKGK7[GL<CLL"E<4?"7W@>Z]1Z<J\*+Z5;S[&5SVG?"*:TDB4
M$$3^N:<SFJ8EDGR.OQK0WJ[.LN#^ZRWZ+Y7STIDYX716I'\FL5A=]48]%-,%
MV:3B<_'P*VT<"DN\J$AY]3]Z:&R='HHV7!194U@^09;D]5_RO2%BKT#@'BG@
M-06\@P+>^$@!ORG@GUH@: H$%3.U*Q4/F @RN63% V*EM40K7U1D5J6E^TE>
MMON=8/+;1)83DP_9.BT>*453FM-%(CAZBZ[C."D;A:3H8UYWK;*)7F,J2)*^
M0:]0DJ,OJV+#21[SR[Z0SU&B]:.FSFE=IW>D3M=#GXI<K#CZD,<TU@'ZTH&=
M%][6BZEG1<0T>H=\]P)YCN>AKW<8O7[U1CXE%R1-92\5B*\(HZ9GG9V.[.Z0
MCZ+AT]$<*YI&@[]K3+^"]X_ WS;Q>)N2G%^@VX(+1D7":$6!;"QT(U:4H7:C
M_^\W"84^"IKQ_YL:M*XW,-=;YJ;W?$TB>M63R8=3=D][D__\Y Z<_YH8AP3#
M0& :W\&.[\"&/OF5DE2L(MEZ:%XSB>AWF9$YO4"YS-G% M$MU9'L\2R9;\I0
MXN@?],I$<UU=6%579NS[B>_XCG/9O]_GKVWEC8)#*VRP"MP]*\WC<.=Q:/7X
M.HK8AL;2FZSTLTX,1YRID09[#Q!*WD<'SABLG/$@.'#&^E3/;.7!SN>!W>=8
MYMU$AE+M;=/"<M!+B9!4B,+<R&@MH_ 8-X-VXXQ;[6PP"EO-;##RCK7R<.?Q
MT.KQ79F0WI;#:8S( V$Q1TM&\M+;US+UU_GJC<FO8:LU99=S6IZ=9H;;9IYN
MIGDWVGDWLGKW!^4BR9=H35E2U!X]4L+,#MFA_+JD*<E9"W9-<D!@&EWC'5UC
MJX^_;[*Y'#/*7/;71DX)]D;5,H_MO37Q-VXUH7_0%ZRU=R4*"$PCRG747,HY
M.6YNR6,UZEXS&3G+:@2^0%_D:SES1S<Y-4Z;K/!=AUE0- R%IE.[-TUUSS2U
M:2J&(AT2#4.AZ:1[BG3OU$P929JE#D2O"4=D^X$Q8S:8KKL7\\X[7_X["'Q[
MY9VI D+3J5(S;]<ZT3P]]+\\%$;60&?8H&@8"DVG5DVRW>!<H6^=WG<F'1(-
M0Z'II*MYOFN?Z#\O],-30Q]H/M]0]1+JP%7RP+7K@]-#?\6H>=RW5M"Y'T*B
M82@TG5RE1-SAN8+?JH$ZDPZ)AJ'0=-*50')/5D@=@G]T:O"#2B,H-)TJ)8Y<
MNSKR'#= -UDN13]''_.2G>2>5MW52!*DVIF!HF$H-'T%5XDGSSE3I'N@L@H4
M#4.AZ:0K6>59%<1D5F29Y)R+(OJ&^(8QFL>4R8%L_KA;U>)/+?HT=6AK>'Y[
MT<=@%@3M11^#6;GL=631QU-BQK.+&=W5RAM$[DF2DGE*T:)@*.%\(T=J^J2_
M7GOY:FA:YK(_4>>N\A(*QU,*Q[,K'"-_&[$J6/+WTPN##;BV$.08.0.5+E!H
M.F=*NGCV#8);RJK],]FIWDZK">)=1=]UM:AJY E4DH"B82@TG4PE2;SP7 ,$
MI!R9@:)A*#2=="5NO-/%3;>M@ 98&Q6"<!0>QCNH6H%"T]E2:L6S;YS\EI!Y
MDB;B$3TC\D'U""@:AD+3:55ZQ!N=*_(AM<@,% U#H>FD*V7CV97-#T1^>]-G
M:!CH0<4+%)I^[D*)%]^^\[,7[J@.]\]20[,D$KO(_YK+#FD\6P$J3T#1,!2:
M3JN2)_ZY=GU\T%T?4#0,A::3KH22;Q=*SP]\_X@P.HA\@]FHK0--8,%1'>CO
MG9&RZYA.V_]/8+E546./@#WD]!(RQE<RQK?+F"=7N&_6Y8D7(X&@>@84#4.A
MZ:PJ/>.?2\_XH'H&% U#H>FD*SWCGZ!G4-V5]P^Q72!&HV*95VL9@GS?'N@[
M>E3/;Q^\:I_4,QB5"?$PT[6MWOI'$YT2([Y=C&#9E2)1&(\G3>UE.W<14+4!
MA:;SIM2&?RZUX8.J#5 T#(6FDZ[4AO]2:L-OJXV!<6718!B8#/$)B/IQ8243
M KM,Z#3W> +K^-S#7K!KQX!"TRE3$B"P[U#<+!9))*/MGV<LJ=BAN\8;*!J&
M0M-I59/\P#M3D@L@-SUFH&@8"DTG74F/X/1#8MV27-#>/BD/\[=^&0"J.J#0
M=+;V?EQA5QT_=O"X =>V$0_9 E434&@Z6TI-!/8#6Z?F26GPH\>4[4_2.<)!
MY044FMX*2EX$@W.E5= S8J!H& I-)UT)G< N=)YU7*G!'&NGE0XWI^P5=Z;I
M)71-H'1-8#_5]1(9XLAI9ON3=.ZLH$('"DUO!25T@O&Y,@3HV3)0- R%IO]H
M4>FN\&3==7J&:##M&<)><5>:H-!TFI36"I\X#4:9('(B^F%W\NLYJLM>2==^
M"(J&H=!T@I7J"L^END)0U06*AJ'0=-*5Z@I?2G6%AD-KX[;J,IB%[54E@]7P
MZ))2J%12:%=),]F'2HW$26J\D6!J+]^Y9X!J)B@TG;N]'[.?:P<F!)5(H&@8
M"DTG74FDT+X#\V?!OE'&?];O$-C^JO[870*&C92QVXY$TW[+H!V*!K-P>#06
ME1 )[4+D$XV3J+PU9?K[Y_+' .DFEDE&YICMM0FS/9>-;H+NRH"B82@TG5NE
M7L)S[<J$H&(%% U#H>FD*[$2VG=E.EWW,6YOB([:$6JP:NV;8OMC=76[OW<]
M4D;9LKIFBDNG-KFH[QC:?;J[RNJZNL#IX/.I^Q[7%U(IF/I^K$^$+9.<HY0N
M)*3S;B@=9/654_4;4:RK2YCFA1!%5KU<41)35AK([Q=%(;9OR@IV%W]-_@50
M2P,$%     @ 6(%65O>*P@*= @  LP8  !D   !X;"]W;W)K<VAE971S+W-H
M965T.#(N>&ULK55=;],P%/TK5IB 26SY;+N---+:@I@0:&H9>T \N,E-8\VQ
M@^TVV[_'=M*0;=D8$B^-[=QS>LZQ?1/77-S( D"AVY(R.74*I:HSUY5I 266
MQ[P"IM_D7)18Z:G8N+(2@#,+*JD;>-[8+3%A3A+;M4N1Q'RK*&%P*9#<EB46
M=S.@O)XZOK-?6))-H<R"F\05WL *U%5U*?3,[5@R4@*3A#,D()\ZY_[9?&3J
M;<%W K7LC9%QLN;\QDPNLJGC&4% (56& >O'#N9 J2'2,GZUG$[WEP;8'^_9
M/UKOVLL:2YAS>DTR54R=$P=ED.,M54M>?X+6CQ68<BKM+ZK;6L]!Z58J7K9@
MK: DK'GBVS:''L"/G@ $+2!X*2!L :$UVBBSMA98X206O$;"5&LV,[#96+1V
M0YC9Q942^BW1.)5\*"O*[P#0#!CD1$ETA%;-CB*>HVN]!R#D&S3GI3XX$MOL
M/S->,S2GF)0289:AB]G7)5J"!+$#B=XN0&%"#S75U6J!WAX<H@-$&/I6\*W4
MY3)VE99N!+AI*W/6R R>D+F ]!B%_CL4>$$P )^_'.[?A[LZL"ZUH$LML'SA
M$WQ+4$2 /LSJ3VX_SM=2"7TL?P[9:_BB83YS5<]DA5.8.OHNVAB=Y/4K?^R]
M'S+[G\CN60\[Z^%S[,D%2^DV@\QL*%<%"'U*A3!)4(+7A!)%8'"#&]J1I36]
M99><GD;CV-WUG3TN.O&BDZ[HGN*H4QS]HV+*V>9(@2C_IKDA'O?D^.$D]!Z(
M'JH*3R?#JD>=ZM&SJKN;E_9OWE[OW9#:T:/P@G \>1CQ0)4?1:,':MU>2S'M
M_ L6&\(DHI!KG'<\T02B:9'-1/'*=IDU5[IGV6&AORH@3(%^GW.N]A/3N+KO
M5/(;4$L#!!0    ( %B!5E:K34[!2P(  #H%   9    >&PO=V]R:W-H965T
M<R]S:&5E=#@S+GAM;*U436_;, S]*X)7#"VP1O[H%S+'0)ML6 X#@F3=#L,.
MBDW'0F7)D^BD_?>39,=+@63H81=;E/B>^"B2Z4[I)U,!('FNA323H$)LQI2:
MO(*:F9%J0-J34NF:H37UAII& RL\J!8T#L,;6C,N@RSU>PN=I:I%P24L-#%M
M73/]\@!"[29!%.PWEGQ3H=N@6=JP#:P 'YN%MA8=6 I>@S1<2:*AG 3WT7B:
M.'_O\)W#SARLB5.R5NK)&?-B$H0N(!"0HV-@]K>%*0CAB&P8OWO.8+C2 0_7
M>_;/7KO5LF8&IDK\X 56D^ N( 64K!6X5+LOT.NY=GRY$L9_R:[W#0.2MP95
MW8-M!#67W9\]]WDX $17)P!Q#XC?"DAZ@,\<[2+SLF8,699JM2/:>5LVM_"Y
M\6BKADOWBBO4]I1;'&:?ZD:H%P#R !)*CH9<DI4ME:(50%1)YM*TFLD<R!)R
MX%NVMONV>,A4,%X;<CX#9%Q<6-CC:D;.SR[(&>&2?*M4:Y@L3$K1ANDNHWD?
MTD,74GPBI!GD(Y)$'T@<QO$1^/3M\.@UG-KD#!F*APS%GB\YP;<$Y!ILX>+?
M'/V\7QO4M@1_'9/7\5T=YW-M.38-RV$2V+XSH+<09._?13?AQV-B_Q/9*^G)
M(#WY%WLVE[EH"RC<@RJL0!.IY&7>:NVRP8P!//J^'>NU9W5C9)O%2727TNVA
ML"-.47([.'4!TX/*=E/E*],;+@T14%I8.+JU>-UU:F>@:GRQKQ7:UO'+R@XW
MT,[!GI=*X=YP_3.,R^P/4$L#!!0    ( %B!5E888Y@T.0,  &\-   9
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
MT1&)_) O;RB^SHZ]YEPIGF27*TI"*E(#?7_!N7IOI .41ZWC_P%02P,$%
M  @ 6(%65O>"KD*, P  8A$  !D   !X;"]W;W)K<VAE971S+W-H965T.#<N
M>&ULQ5C1;J,X%/T5BQVM9J1I 4-(VDV0DM#5CC0C59/IS,-J'URX":B L[;3
MM'\_MJ$$*$6M9*DOB6WN.;[WV ?9S(^4W?$40*"'(B_YPDJ%V%_:-H]3* @_
MIWLHY9,M9041LLMV-M\S((D&%;F-'2>P"Y*55CC78]<LG-.#R+,2KAGBAZ(@
M['$%.3TN+-=Z&OB>[5*A!NQPOB<[V("XV5\SV;,;EB0KH.09+1&#[<):NI>1
MZRF COB9P9&WVDB5<DOIG>I\21:6HS*"'&*A*(C\NX<UY+EBDGG\7Y-:S9P*
MV&X_L?^MBY?%W!(.:YK_RA*1+JR9A1+8DD,NOM/C/U 7-%%\,<VY_D7'.M:Q
M4'S@@A8U6&909&7U3QYJ(5H -W@!@&L [@/\%P!>#?!>"_!K@*^5J4K1.D1$
MD'#.Z!$Q%2W95$.+J=&R_*Q4Z[X13#[-)$Z$5\4^IX\ : 4E;#/!T1G:5'L
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
M5'.BOERIV1]X#5#/%XS)PZ+>H/LWD?P!4$L#!!0    ( %B!5E:X*GN3D00
M # 3   9    >&PO=V]R:W-H965T<R]S:&5E=#DP+GAM;+58;6_;-A#^*X36
M#0G06B+UZLPVT%@M5F#=@B3=/C/RV18BD9Y(Q^F_'RG)LBU1LK=E7Q*]W//P
MGN/I[LS)CA?/8@T@T6N>,3&UUE)N;FQ;)&O(J1CQ#3#U9LF+G$IU6ZQLL2F
M+DI0GMG$<0([IRFS9I/RV5TQF_"MS%(&=P42VSRGQ?=;R/AN:F%K_^ ^7:VE
M?F#/)ANZ@@>0WS9WA;JS&Y9%F@,3*6>H@.74^HAO8AQI0&GQ1PH[<72-M)0G
MSI_US9?%U'*T1Y!!(C4%5?]>8 Y9IIF4'W_5I%:SI@8>7^_9/Y?BE9@G*F#.
MLS_3A5Q/K<A""UC2;2;O^>X7J 7YFB_AF2C_HEUMZU@HV0K)\QJL/,A35OVG
MKW4@C@ XZ &0&D#: *\'X-8 ]U* 5P.\,C*5E#(.,95T-BGX#A7:6K'IBS*8
M)5K)3YG>]P=9J+>IPLG9%Y;P'- C?06!/J![2#A+TBREY:[P)?JT7$*Y-]H&
MW5,)2+WX365D#;WZE0MQC2A;H,^P@()FZ$%2N96\^'[ 7,4@:9I=JS6^/<3H
MZMTU>H=2AA[7?"L45DQLJ>1HI^RD=OVV<IWTN(X)^LJ97 OTB2U@<4I@JS@T
MP2#[8-R20<88DA%R\7M$'$(,#LTOAV,#/+X<[@RH<9NM=4L^MX?O8\ZW3)KB
M6N$\,TY7FANQH0E,+55*!!0O8,U^^@$'SL^FF+PE6?Q&9"?Q\IIX>4/L^T]!
MJI2E$BWK7!9-+A<JCTW1K%C]DE67V9=9X 9C;V*_'(>I:^62P'=.K>*N%0E]
M+VRL3H3YC3!_4-B#Y,DS4N)4LQ#EAVV247$$QPXZ+??F79L/V _"E@@#DXO-
M$H)&0C HX7>YA@)M0%5Z!DRB5$)N+!E!9VU,(M*283(*6QL6=XT\XIE5A(V*
M<%#%?$W9"G39>Z'9MBJQ-%.ME[+$F%JA(=Y1.[,,1F/2DAP;C(C3DU=1(R>Z
M4,Y6^5^H^L[*KV?#1:JU&3<HZCKB^>.6)(,1B3IYUK4*?+.B<:-H?.9+T;TJ
M;0H!B/>(J5:G^N"^'CP!@V5J+*OC;EKYQ M:VKI6$?;:R=<U\L,P,HO#SJ'7
M.X/R'KE4"O06P:NN!<:<JSF.:U XCL+V%AG,W"#$[;PSF;ECMT_*T=B"!YO;
M'10)F+M;C7RC]O:F;/%;L9U&C1RB1OZ7%E?3CH]VT1D1W$Z)2ZSB<U:GT@[#
M#AZ<#2YL<C4)QB>K.TY'RO!B5UAA?KPV[G#/"FZ/P,-T@H?'DXM;8,W3\:#=
M-_KLHO:&]=CU*3J,)7AX+OG'[? ,WY4SPN9=F9]'!GW[>19).LC3>!QF'#P\
MY/RK?GJ&<R@F9Y!X%/7%)#CW%9U&X# ?X>$!Z;_UWYK\M+(X?COM0Z/S?J=S
MF>V\GAD0'Z8F/#PV7=:%(]/J)'#;:LQV;M!68[8[FKPJ-?;144(.Q:H\DA&J
MKJJ?DM4/Z>9I<^SSL3SL:#V_U<=!Y1'%@:8Z2_I*BU7*!,I@J2B=4:B^L*(Z
MGJEN)-^4!Q9/7$J>EY=KH&K[M8%ZO^1<[F_T LTAV>QO4$L#!!0    ( %B!
M5E87(5BSQ@0  -,5   9    >&PO=V]R:W-H965T<R]S:&5E=#DQ+GAM;+68
M;6_;-A#'OPJA%4,+3)%(/3JS#;0)A@;(MJ!IN]>T3-M")=(E*3OY]B-E1[)%
M2K8'[XVMA[O3[X[D_26.MXS_$"M")'@I"RHFSDK*]:WGB6Q%2BQNV)I0=6?!
M>(FE.N5+3ZPYP?/:J2P\Y/NQ5^*<.M-Q?>V)3\>LDD5.R1,'HBI+S%\_D8)M
M)PYTWBY\R9<KJ2]XT_$:+\DSD=_63UR=>4V4>5X2*G)& 2>+B?,1WMZA6#O4
M%M]SLA4'QT"G,F/LASYYF$\<7Q.1@F12A\#J;T/N2%'H2(KCYSZHTSQ3.QX>
MOT7_HTY>)3/#@MRQXI]\+E<3)W7 G"QP5<@O;/N9[!.*=+R,%:+^!=N]K>^
MK!*2E7MG15#F=/>/7_:%.'" 88\#VCN@<QV"O4-0)[HCJ].ZQQ)/QYQM =?6
M*IH^J&M3>ZML<JJ'\5ER=3=7?G+Z0#-6$O 5OQ !7'#'RC6CA$H!V +\I:;1
M/5D0SLE<FX"/0JA+C(/'',_R(I>OX/T]D3@O/BCG;\_WX/V[#^ =R"GXNF*5
MP'0NQIY4G/II7K9G^K1C0CU,]R2[ 0'\#2 ?(8O[W?GN\-C=4]5I2H2:$J$Z
M7M ;KUL!:TZ[(*$]B%Z-MV*-,S)QU'(3A&^(,_WU%QC[O]LRO%*PHWR#)M]@
M*/KT8Y;Q2J5;[,<X5S-##23 A5KSF&;$FOXN9E3'U+UC,X6![X_&WN8P+XN5
MKSI.8W4$'#; X3#P&QA0;0W,6363BZI0'2)C%;4/UBY@?,B!(MB!-8U&R<B.
M&C6HT2#J ]VHQ<5X;B]B9,&"?@?+-!KU53!NL.)!K">N=(&KU:S'F?RL\K7J
MU-)&&!L/CX*T VC:!$%@!TP:P.1$W22FRWQ6V.N6&$],XB3H8%F,_!#9N=*&
M*QWDTAU2EP[+G"Y!P80 &>;\54W$+>;VYI>:'+"[3DP;Z(<]<V_4L(X&6?^6
M*\)M0"/S85&'QV(2VFF@WRJ//\CSR.C2E8276G9W'5:J#HM[.^P^WB$%"D.#
MU6;F1S#IX3U02CC,2X2X!=]Q4>'=&\A;V[&R0@/"#<,NJ<4(P;@'M-4K."@/
M]:0\MZ3(4M(@Z79"FYD?^+"'M%4:&)POK8^MWEA1!U7K4H&]5K3CQ%O%@B<D
MZS]I+#05R8W#KCY8K>*>Y@%;Y8+#TG6^1D!3H=PT3+L]SF:6Q*@/M-4R."QF
M)[0"FO+D0C^.##R+79RD/4(&6R6#IZ1L0X34M=.OR6O,)25<K/*U%=84+3>
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
M>]#Y'AST/:U%5NI2V.N]H<9;!P;^OJO)2Y _B*(]ZSV@B\COMQYWUN.#UF?
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
M.:*SJ-J=ENVB(^U"!!X9E6L!OJ<QB=L CB)1,T%O3*;(BAB1Q2WPX'N 7(3
MI^<(7+V[!O.*GZ&'L_/QX#EXT?EX[@F\E@!>74JO:, [5<K[Q9=M(HKR@3]^
M4L_ @R29^--4I1*R;X;,%YT[L<$+,NZI5440_D)ZDV^_@0/W.Y.@78)%'8&U
MI.S74O9MZ).?M]F<<,"6=7V(4$N4DI63&/QK&P73$GE0(.>K[LLD'#DO^S+I
M$1"V0R(]9%A'M!CY-2/?RFAO3-QPDF*I>"R8D$8*)92_U[KGNNX!"T-0>!@4
MG4!J41G45 96*A_4;@:*+:,9Y@1SJG8U$YF!KO8 :FP,41KE2 ]"Q\@$-9G
M3H:Q>)>D:3.ZR.M&[8GJ0C(P)T#B5[6/Q5NU/\Y38B(8:+WJ0T\C:.W&I7.S
M(["68F&M6&@?R1GC,OFGV(],<H2Z'%XP\ [DT*.\P V&!P77HU#H>[ZYY,.:
MP-!*X!>Y5FM+7F8JR'M B7'8#@U5]8/^ 0T]RD-A'QW0,$2Y: C--*#;6 ?7
M2N2!+EA6CM"*#;B:$TJ6B;PV.@)7ZT<P# ]%GQG"O$$ #TF9PKRA%QYAM6>(
MX E6$M-5/MG,M@9JS=X,?'U!,<7ETU);5.S=^9^3":*&+K+2+7V?6FY,]L&L
M@!7P4L_0*5K4%5I;S,:!P:]@P6"G'JQ3M*@KM+:>C0V#=A]V:JV'ND]"OCX5
M#8;+TV9L9 H+CV[PL'%>T&Z]SEOO[2 7CP+?L OJC#MJLRU,X^.@W<A=O'\8
M3!K2JZU'^8%.?: [T^!HK1LW!^UV+B(T$6K.?TBQ6@74JS%X3#AGW$BG2TLV
MZQ0MZ@JM+6-C\6#X%=91JV^\6,\NT:*NT-IZ-HX3VBUG\Y81_[45,B/4_.('
M=:>H^J#-,&MC%TO3$5K[T*@QL<AN8H_-6/66?U^+9=+*CGOI<.L4+>H*K:UI
M8Z$1['[ZHHY\<*5GEVA15VAM/1N/CNP>_<0K296]OY?=& YLS@N+['VYE*NS
M=S2=$;XJCO@%6+ ME>79;OVT_HQP7QR>'SR?PKNH_!C0P)3?)AXQ7R54@)0L
M%:1[&RB&O#SN+V\DVQ0'X',F)<N*RS7!,>%Y@/I]R9A\N\D;J#^Z3/X#4$L#
M!!0    ( %B!5E;3]J*< 0P  ..D   9    >&PO=V]R:W-H965T<R]S:&5E
M=#DY+GAM;+7=6V_;1@(%X+]":(M% FPB<G@3L[8!QYPKFL:(V^W#8A\8F;:$
M2*)+TG;WWR\E,Z*'0TW(Q>E+:RLSWTCRH:W,R<AGST7YK5KE>>W\N=WLJO/9
MJJX?/LSGU7*5;[/J??&0[YH_N2O*;58WGY;W\^JAS+/;PZ3M9DY<-YIOL_5N
M=G%VN.VZO#@K'NO->I=?ET[UN-UFY7\_YIOB^7SFS;[?\&5]OZKW-\POSAZR
M^_PFKW][N"Z;S^9'Y7:]S7?5NM@Y97YW/KOT/J@PWD\XC/C7.G^N7GWL[!_*
MUZ+XMO]$WI[/W/T]RC?YLMX36?._I_PJWVSV4G,__FC1V7'-_<37'W_7V>'!
M-P_F:U;E5\7F]_5MO3J?+6;.;7Z7/6[J+\6SR-L'%.Z]9;&I#O]UGMNQ[LQ9
M/E9UL6TG-_=@N]Z]_#_[LWTB7DWP@A,32#N!C)W@MQ/\L1."=D(P=D+83@C'
M3HC:"='8"7$[(>Y/B$Y,6+03%F-72-H)R=@)GOO]*^<>$O3R)3_D)<WJ[.*L
M+)Z=<C^^\?8?'$)WF-_$9+W;7Q\W==G\Z;J95U]\?*R:6ZK*N2JV7]>[;!_:
MRGGGW+Q<+TYQYQR'7"[_>%Q7ZY<A;]*\SM:;M\W8WVY2Y\U/;YV?G/7.^755
M/%;9[K8ZF]?-_=NO,E^V]T6\W!=RXKYXQ/E4[.I5Y=#=;7ZK _/F@1T?'?G^
MZ#X2JYCFR_>.E_S#(2XA W?HRC[]\J%LIGLGIZ=C5B>'Z=[ =&J??I,_--/]
MD].9??JGK+GSKG=R.K=/_[RLCZN[0U_+$8_=/_W4R?'3A^Z\&C_=M>3(/UXE
M_L'S?W25O+H$G'__W-SFR#K?5O\9N(L?7\A@F-S_W/M0/63+_'S6_&"K\O(I
MGUW\_6]>Y/YS**A(+$5B%(DQ),:1F$!B$HDI$*9=&,'QP@AL^L555JV<ZVQ]
M.W0!6*=.O0"06(K$*!)C2(PC,?&"A0=L_ZK[Z<+S C=,SN9/KZ-M#B.![WJA
M/DR9P^(H"*+C*"V-X3&-H36--\W+[+QT/G_=K.]?7LD,Q=)J3(TE$DN1&$5B
M#(EQ)"9>L.AUWJ(D7O12.3 J7B1>+Y3FJ";ABQ.AC(ZAC*RA_+6HLXUS_5@N
M5\W?XYSK<KW,AV)I5:;&$HFE2(PB,8;$.!(3T4"4/->/>[DTAY'83=RH%TQS
M6.*&/AD.9GP,9FP-YI?\*=\]#F;1.G%J%I%8BL0H$F-(C",Q$1OIB3PW[&5,
MFJ,6S4_N_K=(<U3@!DDPG,3%,8D+:Q)_R6M'[I;%-G?>_%Q4U=NA3%J)J9E$
M8BD2HTB,(3&.Q,3"R-$[W^N%39J#2.3W7G J<Y"W2$Y\:TR.@4SL?ZVYO!F*
MH'72U @BL12)423&D!A'8@*)222F0)@6?<_M=H1=_&97:X*N#:B60C4*U1A4
MXU!-0#4)U11*TZ^15ZV)]__O>]GG3KX6/&.K) R]T-5_#*;012E48U"-0S71
M:I']Z970115*T]-+NO02P#Z9'9D<8V*^F",)B?LQ1BY*H1J#:ARJB7%/KX0N
MJE":'N.NE/.LU<;HG34[,SG(OO%,QPLW-H(,+=F@&H-J'*H)J":AFD)I>MZ[
MKLVSEVV6#3O[S,D1#XR(^_&"D'[$H34:5&-0C4,U =4D5%,H38]X5^!Y]@9O
MU$Z@W9@<]M!X??W.<UVO'W9H.0?5&%3C4$U -0G5%$K3P]X5@YZ]&;S\.+C+
M:)\U.=[0*A"J4:C&H!J':@*J2:BF4)I^%70MI!?_!=N-T(82JJ50C4(U!M4X
M5!-034(UA=+T:Z3K1SU[06K?;EP8+V"(;^Q@7=F7F!QR:.D)U1A4XU!-> .=
MIOG%DM!%%4K3T]N5J9Z]31VYW9B8_[3 (_T00UM3J$:A&H-J'*J),5\J"5U2
MH33]&$G7B1)KGS1ZJ[%E],L[C/HQMJ\V-<90C4(U!M4X5!-034(UA=+TO'?]
M)K'WFY:M1F(69E&XZ <<69>E4(U"-0;5.%034$U"-872](!W%2BQ5Z"C-AI;
M0]L:3.)^U)&56@K5*%1C4(U#-0'5)%13*$V/>E>3$GM-*G^7@^&&MJ)0+85J
M%*HQJ,:AFH!J$JHIE*9?!5UY2@+\-B.!UJI0+85J%*HQJ,:AFH!J$JHIE*9?
M(UW[2NSMJW6;T3YW\K4 /3@)U2A48\3LEP/B)KV_,7'HH@*J26(>C!QX" JU
MJ)[>KDXE]CIUW#:C'9D<8VB["M4H5&/$/(,8)OW3WQRZIH!J<M0C4*@U]1!W
M;2BQ'\H<O=$(+4"A6@K5*%1C9.  X\(-XWZ.H<TF5)-03:$T/>]=LTGLS:9M
MHQ%ZXA.JI5"-0C5&S(K1CXCYK1K::T(U"=442M,CWM6?Q%Y_CMMJA)XMA6HI
M5*-0C;7:ZU?7OA_[_:Q#ZT^H)J&:0FGZVZ1U/:EO[TG9^BEW;NJL',JX?>[4
MC$.U%*I1J,:@&H=J JI)J*90FGXM=!VJ[^%W''WHV5&HED(U"M485.-034 U
M"=442M.OD:Z&]>TUK'7'T3YW\K4 [6FA&O7-HIE$OMO;8&/013E4$U!-^@/'
M6<TG1*$6U=/[ZEUA[<WJN!U'.S(YQMAW@L6^%:QY-#8,HJB?8NR;O&+?Y17[
M-J]CG@^%6E,/<5>,^M92:?2.HYV9'&-H%PK5:*MI&RA>' ?]'$-+3J@FH)J$
M:@JEZ7GO2D[?7G):=ASM,R=''%IQ0C7JFXU>M(B\?L*AYTJAFH!J$JHIE*8G
MO"M"?7L1.FK#T6Y,SCJT!X5JM-7T ]Y>TL\Z]/0H5!-034(UA=+TK'=]J6_O
M2R\_I8/IAM:C4"V%:A2J,:C&H9J :A*J*92F7P5=B^HO_H*M1FB_"M52J$:A
M&H-J'*H)J":AFD)I^C72U;#^#][3U[K5"*U?H5KJFQ5G\_(E2'IGABET50;5
M.%034$WZYFG6H>=7H5;5?]%.5ZT&]FIUW&:C'9D:9*B6!N;AV"CJO\,\A:[)
MH!J':@*JR5'/KD*MJ8>XZT0#^[G2L9N-=F9RC*$U:& >@/5(Y!$CR-""$ZIQ
MJ":@FH1J"J7I@>\*SL!><%IV&^TS)V<<6F\&9O_FQV[<3SCT>"E4XU!-0#4)
MU11*TQ/>E:"!O00=M=MH-R9G'=J!MIJV/TA(V,\Z]! I5.-034 U"=442M.S
M_NJW7=J[4GGU^9?!>$.[4:B60C4*U1A4XU!-0#4)U11*TR^#KD(-0OQV8P M
M5Z%:"M4H5&-0C4,U =4D5%,H3;]&NA(VL)>P]M^,#"U?H5H*U2A48U"-!V8Q
M[$6)V]OW$]!%)513P<#O&=4>@I[>KE8-[+7JR,U&:,L*U5*H1J$:@VH\,(^T
M^F'_<+Z KBFAFOK1(]!#W+6B@?ULZ>C-1F@1"M52J$:A&H-J/!AX9UPW,',,
M;3BAFD)I>MZ[AC.P-YRVO49HOPG54JA&H1J#:CP8>-_<V$PXM-V$:@JE:0D/
MNPXTM'>@H_8:[<;4K$.U%*I1J,:@&F\U[6V/@MX_NA30)2544RA-CWK7E(;V
MIO1SO<H'3U';YTV.-[0:A6H4JC&HQJ&:@&H2JBF4IE\'78$:$OQ>8PBM5J%:
M"M4H5&-0C4,U =4D5%,H3;]&N@HVM%>PUKU&^]S)UP*T>H5J%*HQJ,:AF@C-
M@Z5^&/??XDD.# M#X^B+&AJ6A$$TO/\2=FUI:&]+QVTBVI')^81VIU"-0C4&
MU3A4$ZVFOP69;\33')4L_+"?3G.4YP:+$[N#85=BAO9SH&-W!^W,Y'Q">TNH
M1J$:@VH<JHG0//[J)WY_)T8.#(N"YCMC/Z'FL-AU_>!$0KL*,;17B);]//O,
MR:&$%HA0C4(U!M4X5!.AV>41$L91/Y3F,#^,7".4@\.24S_4NV8PM#>#X[;@
MH,4@5$NA&H5J#*IQJ"9:[?6&7KR(^^$T![WSC9,T Z.\(/![T9Q7JSROTZS.
M+LZV>7F?7S6O)RMG63SNFFG[#83CK4Z9W^U_#^&'2S*;&[<+[X/R]K?/.^;B
M["&[SS]EY?UZ5SF;_*XAW?=Q<Y?*]?WJ^$E=/)S/O)GSM:CK8GOX<)5GMWFY
M']#\^5U1U-\_V2_P7)3?#G?[XG]02P,$%     @ 6(%65O(V&?,4'P  D0,"
M !H   !X;"]W;W)K<VAE971S+W-H965T,3 P+GAM;+7=76\;R9F&X;]">(-%
M%EC%[._FK,> QUU?C<S.(+-)#A9[0,NT3402'9*V)_]^24GM[NIJOF39MTZ2
ML8=UE:QYBJ;X]-M\\66S_<?NPVJUG_U^>W.W^_'9A_W^XP_/G^^N/ZQNE[L_
M;3ZN[@[_YMUF>[O<'WZY??]\]W&[6KZ]7W1[\SR=S\OGM\OUW;.7+^Y_[]?M
MRQ>;3_N;]=WJU^UL]^GV=KG]UT^KF\V7'Y\ES[K?^,OZ_8?]\3>>OWSQ<?E^
M]=MJ_]>/OVX/OWK^57F[OEW=[=:;N]EV]>['9Z^2']JD*HXK[A_RM_7JRV[P
MS[/CG^7-9O./XR_<VQ^?S8]?TNIF=;T_&LO#_WU>O5[=W!RIPQ?RST?UV==-
MCPN'_]SI^OY/?_C3O%GN5J\W-W]?O]U_^/%9_6SV=O5N^>EF_Y?-%[MZ_!/=
M?X'7FYO=_?_.OCP^=OYL=OUIM]_</BX^? 6WZ[N'_U_^_OB=&"Q(\A,+TL<%
MZ:4+LL<%V:4+\L<%^:4+BL<%Q:4+RL<%Y:4+JL<%U7A!>6)!_;B@OG2'Q>."
MQ:4+DGGW7VY^GZ"'_^3W>6F6^^7+%]O-E]GV^/B#=_R'^]#=KS_$9'UW/""_
M[;>'?[L^K-N__.G3[O [N]WL]>;VS?IN>0SM;G8U^^WAP,PV[V9JMU\?@KAZ
M.]/+]7;VM^7-I]7Q]U_M=JO];O;J^I^?UMO#OUW>O9W]>;U\L[Y9[]>KW?'?
M?[H]_/X?F]5^N;[YCX/ZU]^:V1__\!^S/\S6=[/_^;#YM#LLVKUXOC_\28Y?
MS_/KQZ_:/GS5Z8FO.DEG/V_N]A]V,W7W=O76!YX?O@5?OP]I]WWX*17%9G7]
MIUFR^,]9.D_3B2_HM;S\U<?M87ER<GESR>[I_?)D8KF2E_^V^GA8GIU<KN7E
M/R\/7_P\.;G<R,M_N=Y_W7T^]=_R@C][=OI;YRY?/O7%MY<OGPLYRKZ>I^S>
MR\Z=I_MCL5O?_R7POW\^_-[,[5>WN_^;^!)_>B#S:?+X5^0/NX_+Z]6/SPY_
M!^Y6V\^K9R___=^2<OY?4T$EL8;$%(EI$C,D9DG,D5@+8=[!R+\>C%S27[J[
M_?+N_?K-S6KJ^?XG<7'L$2"QAL04B6D2,R1F'[#B'CN^1/_\\JHLDOGA"?;S
M,-P3#TNR^7S\N!;ZVKS<%E]S6XBY-9O-VR_KFYNIT(HK8T-+8@V)*1+3)&9(
MS#Y@Y2"-694513$*[<3#TK1(JE%FH2_-RVSY-;.EF-D_'U^ ''X&O5EM9YLW
M-^OW#R_KIR(L0K$1)K&&Q!2):1(S)&;+()MIN:CJ48(G'E75BV04X#)X<D[R
M>5U^?927S.IK,BLQF:^7NP^S7Y?KMU-9%)?&9I'$&A)3)*9)S)"8K8*4)8<
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
MEIE^?0%A O3U!>=JNS$W:%^(HC]02P,$%     @ 6(%65A' LH[= @  (P@
M !H   !X;"]W;W)K<VAE971S+W-H965T,3 S+GAM;*U6R6[;,!#]%4(%B@1H
MH\5+B]068%LIFD, (^ER*'J@I9%%A")5DHK3O^^0E%7'L8T4R,7B,N]QWB,Y
M]&0CU;VN  QYK+G0TZ RIKD,0YU74%-](1L0.%-*55.#7;4.=:. %@Y4\S")
MHG%84R:"=.+&EBJ=R-9P)F"IB&[KFJH_<^!R,PWB8#MPR]:5L0-A.FGH&N[
M?&N6"GMASU*P&H1F4A %Y328Q9?9R,:[@.\,-GJG3:R2E93WMG-=3(/()@0<
M<F,9*'X>8 &<6R),XW?'&?1+6N!N>\O^V6E'+2NJ82'Y#U:8:AI\#$@!)6VY
MN96;+]#I<0GFDFOW2S9=;!20O-5&UAT8,ZB9\%_ZV/FP XC'1P!)!TCV <,C
M@$$'&+P4,.P 0^>,E^)\R*BAZ43)#5$V&MELPYGIT"B?";OM=T;A+$.<2:]%
M+FL@2U!D(>L:=^*NH@K(>S(K"F:WAG)R+?SYLAMUEH&AC)]CA+:1>OMA@GRM
M9*NI*/0D-)B;72',NSSF/H_D2!YQ0FZD,)4F5Z* XBE!B*)Z9<E6V3PYR9A!
M?D$&\3N21$ER(*'%R^'Q 7CV<GAT0LV@WZ>!XQL<X;NB2C"QUFZG_!;]G*VT
M47AQ?AVRV],-#]/98G*I&YK#-,!JH4$]0)"^?1./HT^'K'I-LNR5R)[8..QM
M')YB3S/&6UMH")0E5AXB2X*U4!L\M.@NUC%TE.4&"H(W+[\G=$-5H<D9'FY_
MS,\/>>W7'+LU;9U]2.,QGIF'70N?QR3[,=F!F'C0QSP1/.H%CTX*[BZU5]/=
M5'C,>8N7C)1*UB2G/&^YO]QH1V$=PCF!3P[SQ:'!(Y=W/);AD 6CYZGO&7 R
MS_\]0Z]$YBT-=\IG#6KMGB&-DEMA?+WI1_N7;N8*_-[X'%] _V#]H_'/YPU5
M:R8TX5 B973Q 04H_R3YCI&-*](K:;#DNV:%KS@H&X#SI91FV[$+]/\+TK]0
M2P,$%     @ 6(%65K!:8Q$# P  E T  !H   !X;"]W;W)K<VAE971S+W-H
M965T,3 T+GAM;+6776^;,!2&_XK%JJF5NI! /KL$:2VK5FF5JD;=+J9=.' 2
MK!I,;9.TTW[\CH&B4%&42.P&_/6^MA\XUO%\)^2CB@ T>8YYHA96I'5Z8=LJ
MB""FJB=22+!G+61,-5;EQE:I!!KFHIC;3K\_MF/*$LN;YVUWTIN+3'.6P)TD
M*HMC*E\N@8O=PAI8KPWW;!-ITV![\Y1N8 GZ(;V36+,KEY#%D"@F$B)AO;"^
M#"[\F1F?#_C!8*?VRL3L9"7$HZG<A NK;Q8$' )M'"B^MG %G!LC7,93Z6E5
M4QKA?OG5_3K?.^YE115<"?Z3A3I:6%.+A+"F&=?W8O<-ROV,C%\@N,J?9%>,
MG;@6"3*E15R*<04Q2XHW?2XY[ D&PW<$3BEP#A6XI< ]5# L!<.<3+&5G(-/
M-?7F4NR(-*/1S11RF+D:M\\2\]F76F(O0YWVEME*P5,&B29?M_A4Y-0'31E7
M9^03>5CZY/3DC)P0FZB(2E"$)>0A85J=8R.6;QGG^/W4W-:X&N-I!^7,E\7,
MSCLSWU+9(X/1.7'ZCML@OVJ77\.J1QSG7;E_B'R8RYVZW$:$%4>GXNCD?NZ!
M',FO[SB"W&B(U>\F.(7=L-G.!/N%2FD "PNC68'<@N5]_# 8]S\WH>K2S._(
MK(;1K3"Z;>[>4HO@$8^3-)-!A.%,4BDVDL;GA&8Z$I+]@;")9JOKL32[-/,+
MLU%N9L[@K8<G\MS>-D :5I"&[9#>_&M-0%H=C@72I9G?D5F-W*@B-^HV2D==
M8NS2S._(K(9Q7&$<_Y<H;74]EN:X-; *2!U-6(,TJ2!-6B%A6@(!59K\)8<$
M;*O9L6RZ-/,[,JM!G%80I]T&[+1+C%V:^1V9U3#.*HRS]G^12?P1GS(J-4C^
M0D*V92$DH2(I?:$K#N04<[E0<$XEMH$LLKVS)L+%3).]N.OW7+<>>%=-@V9O
M@K-UR<<"L?=28'-?P>QRPQ)%.*S1OM^;X$$ABSM 4=$BS;/BE="88^?%"*]-
M(,T [%\+H5\K)M&N+F+>/U!+ P04    " !8@596*6;LKCD#  #L$P  #0
M 'AL+W-T>6QE<RYX;6S=6%%OVC 0_BN1NTZM-#5 UI2L@+0A59JT397:A[U5
MACA@R;$SQW2P7S]?'!*@/L3ZL,&"2GSW^;[[[+LT;@>E60GV,&?,!,M<R')(
MYL84'\*PG,Y93LLK53!ID4SIG!IKZEE8%IK1M(2@7(2]3B<.<\HE&0WD(K_+
M31E,U4*:(8D;5^!NG],AZ<;O2>#HQBIE0_)T\?;'0IG;-X&[G[T[.^L\7=[N
M^B\JX)*$7M+K TBO.CBOQ3#J^##JO=PH^<TV>37_W#*YR',LK'^0ICV*,.+$
MH\?J;R6!406'=;5'@TS)MN@1<0[+3G,6/%,Q)&,J^$1SB,IHSL7*N7O@F"JA
M=&!LM]ET7?"4OQS<=18T8LV3<ZETE=ME<-^3>OH.L+9 (!>B$=@CSC$:%-08
MIN6=-:K)E?,%%-3CQU5A%<XT775[UZ0-J&XVR43IE.DF39>L7:.!8!G(T7PV
MA[M110B@,2JW@Y33F9*TTK".J >6=LJ$>("G]'NVQ;W,-NK6@:K)9F@%U4-'
MXPS@WV1SW)NTT:MX@X(_*_-I89<C*QL:C=UKEO%E92^S1@#&WL79:5&(U4?!
M9S)G;O$')QP-Z#HNF"O-?]ELT"I3ZV":!,],&S[=]/S4M'AD2[-NIV6&:^Z=
MH.:_N\\S)IFF8E.T[?UCWN57*ZY?:_]"<_5K95>Q5V1T<_P:ZU?YL8N,3T'D
M292[?PHBD^,7&1VGQK ^9&R<9+;.,8TW@//BD'R#TZ=HDP:3!1>&R]J:\S1E
M\L5QQM(;.K%_RFSQV_DIR^A"F,<&'))V_)6E?)$GS:Q[V(AZ5CO^ LOKQLUA
MU>;B,F5+EHYK4\\FU3"P YNUOB!@%[FK+C^"Q3C,CP"&Y<$48#$N"LOS/ZVG
MCZ['89BVOA?IHS%]-,9%^9!Q]<'R^&,2>_E7FB11%,?8CH['7@5C;-_B&'[\
M;)@VB,#R0*8_VVN\VGB'[.\#K*;[.@1;*=Z)V$KQO0;$OV\0D23^:F-Y( *K
M M8[D-^?!WK*'Q-%4%5,&_8$XTB28 CTHK]'XQC9G1@^_OI@3TD4)8D? <RO
M((HP!)Y&',$4@ 8,B:+J/;CS/@K7[ZFP_?_>Z#=02P,$%     @ 6(%65I>*
MNQS     $P(   L   !?<F5L<R\N<F5L<YV2N6[#, Q ?\70GC 'T"&(,V7Q
M%@3Y 5:B#]@2!8I%G;^OVJ5QD L9>3T\$MP>:4#M.*2VBZD8_1!2:5K5N %(
MMB6/:<Z10J[4+!XUA]) 1-MC0[!:+#Y +AEFM[UD%J=SI%>(7->=I3W;+T]!
M;X"O.DQQ0FE(2S,.\,W2?S+W\PPU1>5*(Y5;&GC3Y?YVX$G1H2)8%II%R=.B
M':5_'<?VD-/IKV,BM'I;Z/EQ:%0*CMQC)8QQ8K3^-8+)#^Q^ %!+ P04
M" !8@596>#=[T4('   R1   #P   'AL+W=O<FMB;V]K+GAM;,6<46_:.A2
M_XK%R]U]Z 5""&1:)S&@:Z6NH,+=ZV02 ]82FSE)N_;77R>4[AB2H_MR0*H$
MA! ^3F)_Y]A./SUK\W.E]4_V.TU4=MW:YOGN8[N=15N1\NP?O1/*OK/6)N6Y
M?6DV[6QG!(^SK1!YFK2]3B=HIURJUN=/AV/-31N^T+F(<JF5W5AN^"[%<_;G
M_?(E>Y*97,E$YB_7K>IY(EHLE4JF\E7$UZU.BV5;_7RKC7S5*N?)(C(Z2:Y;
MW?T;WX7)972R>5%"+ODJJ[;D?/7(+<AU*^C8 ZZER?)JC^KXW#(^";OS_E61
MZQN9Y,),>"Z^&EWLI-J4A[&_H@U^1A6'P^,^B!_-_PFC7J]E)"8Z*E*A\GT<
MC4A*0)5MY2YK,<53<=T:ZR=AV)QO1/FC[+?<Q?L?F%LR$"[S4=HWS%U<,=+Q
MC(I8YNQ.[3]LWP58'H+ET6*-9P^+V?W=9+2<3MB7T?WH83QEB]OI=+D @#T$
ML'<Q0/9AS@&DCT#Z9X1<+.W#M^F#!9S=L-E\^@@@^PAD_X*0/SP &2"0P<4@
M%\O9&$ .$,C!!2&=2 X1R.'%(,>CQ2V #!'(\(*03B2[':SO[M!BSLR&*_EZ
MW&]W49\0"V4A-TK:?;G*V2B*=*%RZUHVUXF,I,@@)N:7+K%@'L634(5@CR+2
M%O@X@IA9NM1J,:)T\KW.,C=>F$FZU"KAV99Q%;/JR?17(9]X8C_B &(6Z1)K
MQ&:F.YLWOE20)=^N_ "DP_31)?;'5ZWC9YDD%=V=S7G5IB1PHH>9HTNLCGNM
M-E=+85(V$2LG:I@JNL2NN!?\J E@3N@22^&&2\.^\\3V&M\L6&%$>M0 /$P&
M'K$,0 [/[-]";$[P,"]XQ%Z8"&.[C+(JRZI&<"OB32F&45FI27C)>6C=0>R%
M1:ZCGUN=Q,)D?U7]2/X"V3 Q>,1BF*:[1+\(P;X()=;2/;>8'#QB.=RI2*>"
M+?EOI[5ZF \\8A\\EAM%;$OM4@I+PU7&JX$+AQ!S@D==4^@TE7G52/=FU56J
M)-11GN1A8O"(Q?"ER*0266;ITI54_"2"F!\\8C^\77=S84J\M.SUMMS D14/
M$X9'+(Q%L<K$K\+NQ*9/1WUQ#U-%CU@5:([NE#<]3!F]2Y82/WH0$U-&[_RE
M!/NPY&5Z]S=D1$>KSEE3U-)A_N@1^Z,^=Z_%Q)32(U9*4Q+_!@HQ,:_TB+WB
MYO*U4<2,TJ,N-:JDOA8+<TF/V"4-V?V!$V)B3ND1.Z4ARZ_!]#'#^,2&0;-]
MQS ^9AB?VC UV7[=E>EC?O&)_7*2]M<28G;QB>T"\_]:.'0.A%@NS85 A0HQ
M,;GXU-,@6#7 /D!,3"X^L5QJZX':<XXYQB=V#!P89U=L%,=56L:3_4PGQ,2<
MXQ,[!T]P?8B).<<G=DY=@GO%%D6:<O/"-)Q&Q)S3)W8.BNDXIX\YIT_LG 9,
M>^2X2 2#F)AU^A>H:MXQW6ABZND3JZ<>\[W!0TQ,0GWJZ1.G_CKID2 F.A5/
M+:$CS/>K4J_9>.M$$Y-0GWKDK&DR:A]9B(E9J$]LH8:R]A!6B(E9J$]L(133
M;>F8A?K$%FJLOO=]/%PG@EDH(+80@EDV>HB)62@@MA 637MXB(E9*""V$(KI
M+@["+!006Z@:<LG?AUS<CG/B1!.S4$!LH:.1(1?S&^S> \Q" ;&%3J+IVA)B
MHDO"J,?9]@-9;A07Q6Z7B*.E!P%FH> \XVU7K'IBZ[8L9S>V<E.1*%L5Q,0L
M%)QEKK\AFFY+QRP4$%OH'?,0PGU49ZM$;NS><"$@9J$!L86:1C/?P@LQ,0L-
MB"U483Y5F.D19EFV04S,0@-B"X%HGF(ZU^8 L]" ?!BN86QX(G(N$XB)66A
M;*$_8\-U"T&<)H19:$!L(133/>F8A0;$%L(QX23I %V:3&RAVI'VJ[*H5!O!
MG)..66A /2)7CWE(0" F9J$!]<J">LR#.@'F$+/0D-A"IS,73BX',3$+#8DM
M5(?Y/KJY=C Q"PW//@_D)$L0$[/0\-RKU,IFKE5NY*JP.T-,S$)#8@NA)]V]
M60*ST)#80C@F[-Z'F(6&Q!;",>%,QA"ST)#80G68_RJS'SM^=?I-]!:9\ZQK
MV\^G7K&YT26#3>GLT6P%##$Q"PW)UR(XF.40O(ID(M\R4( 98A8*R1=&.YAC
MG>ZTJA)CV[D_P),>8A8*B2UTA(G,68:8A4)B"QUA?C4ZRT ;@IB8A4+R>:'&
M6?_2FA 3LU!XN<4)Y24 ,3$+A1==G' %,3$+A9=<4>TX/<0L%%YB3?6?)@\Q
M,0N%Q!9JPGSS.L1$;]4DMA"*>72O)GZS)K&'FD"G62[MT1Q0] [.#K&)FD!M
M'L)N'!-U.^@]G)WSN.AX_?^A*3F@Z!V='6(;G=P)<!B3<Y9,=3OH'9Z=RD7M
M:O?L\Z?8)K!*Q _V"S*[/>))-#>L?*B.Y?G]\FZY=9$D8[MMINXUCP__\N+P
M[SH^_P=02P,$%     @ 6(%65O$(LOGR @  &ST  !H   !X;"]?<F5L<R]W
M;W)K8F]O:RYX;6PN<F5L<\W;RV[:0!B&X5M!OH!XSH<JR:J;;*O< "(&HG 2
M=M7D[HN2!7RC+KJ)_*[0&#&\"^L1,O/?_QIVR^GU>!BWKZ=Q\;[?'<:';CM-
MIQ]]/ZZVPWXYWAU/P^'RSOIXWB^GR_*\Z4_+U=MR,_3.F-2?;_?H'N]O]UP\
M?YR&_]GQN%Z_KH:?Q]7O_7"8_K%Q_^=X?ANWPS!UB^?E>3-,#UW_OKM>'OO/
M%WMWV;E;/+T\=.>G%]OU<P<Y"7+S!WD)\O,'!0D*\P=%"8KS!R4)2O,'90G*
M\P<5"2KS!U4)JO,'6:,R&D!2@S5 :ZM<6X#75L&V +&MDFT!9EM%VP+4MLJV
M!;AM%6X+D-LJW19@MU6\+4!OIWH[@-Y.]78 O5WS8QN@MU.]'4!OIWH[@-Y.
M]78 O9WJ[0!Z.]7; ?1VJK<#Z.U4;P?0VZO>'J"W5[T]0&^O>GN WKYY6 +0
MVZO>'J"W5[T]0&^O>GN WE[U]@"]O>KM 7I[U=L#] ZJ=P#H'53O - [J-X!
MH'=0O0- [] \[ ;H'53O - [J-X!H'=0O0- [Z!Z!X#>0?4. +VCZAT!>D?5
M.P+TCJIW!.@=5>\(T#NJWA&@=VS^K 3H'57O"- [JMX1H'=4O2- [ZAZ1X#>
M2?5. +V3ZIT >B?5.P'T3JIW NB=5.\$T#NIW@F@=VH.FP#T3JIW NB=5.\$
MT#NIW@F@=U:],T#OK'IG@-Y9]<X O;/JG0%Z9]4[ _3.JG<&Z)U5[PS0.S>'
M!0%Z9]4[ _3.JG<&Z%U4[P+0NZC>!:!W4;T+0.^B>A> WD7U+@"]B^I= 'H7
MU;L ]"ZJ=P'H79K#W@"]B^I= 'I7U;L"]*ZJ=P7H757O"M"[JMX5H'=5O2M
M[ZIZ5X#>5?6N +VKZET!>E?5NP+TKLVP#D!O:]IQ'8#?UC0#.P8@N#7-R(X!
M&&Y-,[1C (I;TXSMF.]T?)P^=L-X+?I:-P'?J?9T^>QP_?[/Y=?%]B[^A+J_
MS1@?_P)02P,$%     @ 6(%65F51Z6]F @  ZSH  !,   !;0V]N=&5N=%]4
M>7!E<UTN>&ULS=O?;ILP%,?Q5XFXK0+88 -3TYMVMULO]@(,G :%?[+=+GW[
M.:2MM*F+5F72OC=!B>WS._A(G[M<?WN>C5L=AGYTFVCG_?PI25RS,T/MXFDV
M8UC93G:H??AJ'Y*Y;O;U@TEDFNJDF49O1K_VQQK1S?6=V=:/O5]]/H2?73>-
MF\B:WD6KV]/&8]8FJN>Y[YK:A_7D:6Q_2UF_),3AY++'[;K9784-4?)NPG'E
MSP$OY[X^&6N[UJSN:^N_U$/8E1SZQ/GGWKCX?(EW>IRVVZXQ[=0\#N%([&9K
MZM;MC/%#'Y^*7IU/]N&&S>E37)R_E#D7&';>VVEV86+6?#SN=23'T^LY%#+6
M=^=?\2TQE+[X_<QQVJUI_S([7.^/R>Z7>;AD>5Q^Q[_.^*W^!_N0D#XR2!\Y
MI \%Z4-#^B@@?920/BI('R*E-$(155!(%113!05505%54%@5%%<%!59!D552
M9)44625%5DF155)DE119)45629%54F25%%DSBJP91=:,(FM&D36CR)I19,TH
MLF8463.*K!E%UIPB:TZ1-:?(FE-DS2FRYA19<XJL.476G")K3I%54615%%D5
M159%D5519%44615%5D6155%D5119-45639%54V35%%DU159-D5539-44635%
M5DV1M:#(6E!D+2BR%A19"XJL!476@B)K09&UH,A:4&0M*;*6%%E+BJPE1=:2
M(FM)D;6DR%I29"TILI8462N*K!5%UHHB:T61M:+(6E%DK2BR5A19*XJL%456
MD5)H%2G%5I%2<!4I15>1_D]>OT_3_A_'+\]XJ+OQ-3]9_N-Z\Q-02P$"% ,4
M    " !7@596!T%-8H$   "Q    $               @ $     9&]C4')O
M<',O87!P+GAM;%!+ 0(4 Q0    ( %>!5E9.%_E:[0   "L"   1
M      "  :\   !D;V-0<F]P<R]C;W)E+GAM;%!+ 0(4 Q0    ( %>!5E:9
M7)PC$ 8  )PG   3              "  <L!  !X;"]T:&5M92]T:&5M93$N
M>&UL4$L! A0#%     @ 5X%65IZY4;X "   !C$  !@              ("!
M# @  'AL+W=O<FMS:&5E=',O<VAE970Q+GAM;%!+ 0(4 Q0    ( %>!5E;;
M-1_B.P(  +P%   8              " @4(0  !X;"]W;W)K<VAE971S+W-H
M965T,BYX;6Q02P$"% ,4    " !7@596-A%N)MX'  "U(P  &
M    @(&S$@  >&PO=V]R:W-H965T<R]S:&5E=#,N>&UL4$L! A0#%     @
M5X%65B+I[V2  P  E P  !@              ("!QQH  'AL+W=O<FMS:&5E
M=',O<VAE970T+GAM;%!+ 0(4 Q0    ( %>!5E:-B!]>>@8  &X<   8
M          " @7T>  !X;"]W;W)K<VAE971S+W-H965T-2YX;6Q02P$"% ,4
M    " !7@596BL8TD+L"  #8!@  &               @($M)0  >&PO=V]R
M:W-H965T<R]S:&5E=#8N>&UL4$L! A0#%     @ 6(%65E]%LX^J#   48P
M !@              ("!'B@  'AL+W=O<FMS:&5E=',O<VAE970W+GAM;%!+
M 0(4 Q0    ( %B!5E:9)MOSM ,  /</   8              " @?XT  !X
M;"]W;W)K<VAE971S+W-H965T."YX;6Q02P$"% ,4    " !8@596]'[^TV +
M  "@-P  &               @('H.   >&PO=V]R:W-H965T<R]S:&5E=#DN
M>&UL4$L! A0#%     @ 6(%65DS/(3R( @  G@8  !D              ("!
M?D0  'AL+W=O<FMS:&5E=',O<VAE970Q,"YX;6Q02P$"% ,4    " !8@596
M=6O[XK $  !+"@  &0              @($]1P  >&PO=V]R:W-H965T<R]S
M:&5E=#$Q+GAM;%!+ 0(4 Q0    ( %B!5E8'#[*^L"<  $1]   9
M      " @21,  !X;"]W;W)K<VAE971S+W-H965T,3(N>&UL4$L! A0#%
M  @ 6(%65EQ('\9""   "!4  !D              ("!"W0  'AL+W=O<FMS
M:&5E=',O<VAE970Q,RYX;6Q02P$"% ,4    " !8@596]:K],%P$  #K"0
M&0              @(&$?   >&PO=V]R:W-H965T<R]S:&5E=#$T+GAM;%!+
M 0(4 Q0    ( %B!5E;)B8P'Z0(  #H&   9              " @1>!  !X
M;"]W;W)K<VAE971S+W-H965T,34N>&UL4$L! A0#%     @ 6(%65N?1-V-2
M P  -P<  !D              ("!-X0  'AL+W=O<FMS:&5E=',O<VAE970Q
M-BYX;6Q02P$"% ,4    " !8@596Q,5$/L()  !O&@  &0
M@(' AP  >&PO=V]R:W-H965T<R]S:&5E=#$W+GAM;%!+ 0(4 Q0    ( %B!
M5E8*0Q4'<0T  "0G   9              " @;F1  !X;"]W;W)K<VAE971S
M+W-H965T,3@N>&UL4$L! A0#%     @ 6(%65C7EJDM(!P  .R   !D
M         ("!89\  'AL+W=O<FMS:&5E=',O<VAE970Q.2YX;6Q02P$"% ,4
M    " !8@5969CGDUX,*  "='0  &0              @('@I@  >&PO=V]R
M:W-H965T<R]S:&5E=#(P+GAM;%!+ 0(4 Q0    ( %B!5E;TX36@* D  *(7
M   9              " @9JQ  !X;"]W;W)K<VAE971S+W-H965T,C$N>&UL
M4$L! A0#%     @ 6(%65M[OIKNU"P  5"$  !D              ("!^;H
M 'AL+W=O<FMS:&5E=',O<VAE970R,BYX;6Q02P$"% ,4    " !8@596KMZ'
MW8X'  "L%   &0              @('EQ@  >&PO=V]R:W-H965T<R]S:&5E
M=#(S+GAM;%!+ 0(4 Q0    ( %B!5E;I&>#G&A   '\R   9
M  " @:K.  !X;"]W;W)K<VAE971S+W-H965T,C0N>&UL4$L! A0#%     @
M6(%65N$&7C*O"0  HA@  !D              ("!^]X  'AL+W=O<FMS:&5E
M=',O<VAE970R-2YX;6Q02P$"% ,4    " !8@596$X_X?G(#  "A!P  &0
M            @('AZ   >&PO=V]R:W-H965T<R]S:&5E=#(V+GAM;%!+ 0(4
M Q0    ( %B!5E;T^@_^)04  -T+   9              " @8KL  !X;"]W
M;W)K<VAE971S+W-H965T,C<N>&UL4$L! A0#%     @ 6(%65D(H\]4$$
MI"L  !D              ("!YO$  'AL+W=O<FMS:&5E=',O<VAE970R."YX
M;6Q02P$"% ,4    " !8@59636="HG$#  !@"   &0              @($A
M @$ >&PO=V]R:W-H965T<R]S:&5E=#(Y+GAM;%!+ 0(4 Q0    ( %B!5E9.
MM/YY1P,  + '   9              " @<D% 0!X;"]W;W)K<VAE971S+W-H
M965T,S N>&UL4$L! A0#%     @ 6(%65I)Q?SPW)   /G8  !D
M     ("!1PD! 'AL+W=O<FMS:&5E=',O<VAE970S,2YX;6Q02P$"% ,4
M" !8@596!^JV<Z $  #2"@  &0              @(&U+0$ >&PO=V]R:W-H
M965T<R]S:&5E=#,R+GAM;%!+ 0(4 Q0    ( %B!5E9&8F'1^04  ,4/   9
M              " @8PR 0!X;"]W;W)K<VAE971S+W-H965T,S,N>&UL4$L!
M A0#%     @ 6(%65L7"_,WM @  TP8  !D              ("!O#@! 'AL
M+W=O<FMS:&5E=',O<VAE970S-"YX;6Q02P$"% ,4    " !8@596J$IKS70#
M   H"   &0              @('@.P$ >&PO=V]R:W-H965T<R]S:&5E=#,U
M+GAM;%!+ 0(4 Q0    ( %B!5E95KLND-P4   T-   9              "
M@8L_ 0!X;"]W;W)K<VAE971S+W-H965T,S8N>&UL4$L! A0#%     @ 6(%6
M5G*)233H P  ) D  !D              ("!^40! 'AL+W=O<FMS:&5E=',O
M<VAE970S-RYX;6Q02P$"% ,4    " !8@596+4NU6*<&   7%@  &0
M        @($820$ >&PO=V]R:W-H965T<R]S:&5E=#,X+GAM;%!+ 0(4 Q0
M   ( %B!5E8_B4\9#P4  $4.   9              " @?9/ 0!X;"]W;W)K
M<VAE971S+W-H965T,SDN>&UL4$L! A0#%     @ 6(%65E+3@HOO!   [@L
M !D              ("!/%4! 'AL+W=O<FMS:&5E=',O<VAE970T,"YX;6Q0
M2P$"% ,4    " !8@596:/^,4($#  !Z"0  &0              @(%B6@$
M>&PO=V]R:W-H965T<R]S:&5E=#0Q+GAM;%!+ 0(4 Q0    ( %B!5E:IM) L
M/00  - *   9              " @1I> 0!X;"]W;W)K<VAE971S+W-H965T
M-#(N>&UL4$L! A0#%     @ 6(%65G!38\6/!@  =A(  !D
M ("!CF(! 'AL+W=O<FMS:&5E=',O<VAE970T,RYX;6Q02P$"% ,4    " !8
M@596[<:QCK(&   $$@  &0              @(%4:0$ >&PO=V]R:W-H965T
M<R]S:&5E=#0T+GAM;%!+ 0(4 Q0    ( %B!5E9?I?(CJ0(  /@%   9
M          " @3UP 0!X;"]W;W)K<VAE971S+W-H965T-#4N>&UL4$L! A0#
M%     @ 6(%65BAM6M.- P  [0@  !D              ("!'7,! 'AL+W=O
M<FMS:&5E=',O<VAE970T-BYX;6Q02P$"% ,4    " !8@596N>X\>?@(   K
M&   &0              @('A=@$ >&PO=V]R:W-H965T<R]S:&5E=#0W+GAM
M;%!+ 0(4 Q0    ( %B!5E;OE9I,O@(  (T'   9              " @1"
M 0!X;"]W;W)K<VAE971S+W-H965T-#@N>&UL4$L! A0#%     @ 6(%65A:=
MC@J!"P  ,G   !D              ("!!8,! 'AL+W=O<FMS:&5E=',O<VAE
M970T.2YX;6Q02P$"% ,4    " !8@596[GL =*$+  !A>0  &0
M    @(&]C@$ >&PO=V]R:W-H965T<R]S:&5E=#4P+GAM;%!+ 0(4 Q0    (
M %B!5E;;1][=<@(   L&   9              " @96: 0!X;"]W;W)K<VAE
M971S+W-H965T-3$N>&UL4$L! A0#%     @ 6(%65M@23!'F @  Z0<  !D
M             ("!/IT! 'AL+W=O<FMS:&5E=',O<VAE970U,BYX;6Q02P$"
M% ,4    " !8@596_3'1Z+T"   3!P  &0              @(%;H $ >&PO
M=V]R:W-H965T<R]S:&5E=#4S+GAM;%!+ 0(4 Q0    ( %B!5E:S@*=N: ,
M  P+   9              " @4^C 0!X;"]W;W)K<VAE971S+W-H965T-30N
M>&UL4$L! A0#%     @ 6(%65NM-O6ZN!   320  !D              ("!
M[J8! 'AL+W=O<FMS:&5E=',O<VAE970U-2YX;6Q02P$"% ,4    " !8@596
M2.+D+<D#  #Z#0  &0              @('3JP$ >&PO=V]R:W-H965T<R]S
M:&5E=#4V+GAM;%!+ 0(4 Q0    ( %B!5E9^1($-0@(  #D%   9
M      " @=.O 0!X;"]W;W)K<VAE971S+W-H965T-3<N>&UL4$L! A0#%
M  @ 6(%65D8S?>W= P   10  !D              ("!3+(! 'AL+W=O<FMS
M:&5E=',O<VAE970U."YX;6Q02P$"% ,4    " !8@5964N^>"54#  #C#0
M&0              @(%@M@$ >&PO=V]R:W-H965T<R]S:&5E=#4Y+GAM;%!+
M 0(4 Q0    ( %B!5E8%#FAE6 0  -L4   9              " @>RY 0!X
M;"]W;W)K<VAE971S+W-H965T-C N>&UL4$L! A0#%     @ 6(%65C@=V.,A
M!0  )2,  !D              ("!>[X! 'AL+W=O<FMS:&5E=',O<VAE970V
M,2YX;6Q02P$"% ,4    " !8@5962/!0M&$$  !G%@  &0
M@('3PP$ >&PO=V]R:W-H965T<R]S:&5E=#8R+GAM;%!+ 0(4 Q0    ( %B!
M5E9WZ'L\J0(  *0&   9              " @6O( 0!X;"]W;W)K<VAE971S
M+W-H965T-C,N>&UL4$L! A0#%     @ 6(%65J)R)S.1!0  8B@  !D
M         ("!2\L! 'AL+W=O<FMS:&5E=',O<VAE970V-"YX;6Q02P$"% ,4
M    " !8@596K+W=_'("  !4!@  &0              @($3T0$ >&PO=V]R
M:W-H965T<R]S:&5E=#8U+GAM;%!+ 0(4 Q0    ( %B!5E83QN% P T  ":T
M   9              " @;S3 0!X;"]W;W)K<VAE971S+W-H965T-C8N>&UL
M4$L! A0#%     @ 6(%65D0MROU5!   R!$  !D              ("!L^$!
M 'AL+W=O<FMS:&5E=',O<VAE970V-RYX;6Q02P$"% ,4    " !8@596OTAF
M7-P#  #]$0  &0              @($_Y@$ >&PO=V]R:W-H965T<R]S:&5E
M=#8X+GAM;%!+ 0(4 Q0    ( %B!5E9X#U07^ (  *P(   9
M  " @5+J 0!X;"]W;W)K<VAE971S+W-H965T-CDN>&UL4$L! A0#%     @
M6(%65C/DB9;1!0  C24  !D              ("!@>T! 'AL+W=O<FMS:&5E
M=',O<VAE970W,"YX;6Q02P$"% ,4    " !8@5960?7J)2P%   3(   &0
M            @(&)\P$ >&PO=V]R:W-H965T<R]S:&5E=#<Q+GAM;%!+ 0(4
M Q0    ( %B!5E9EB_:D P0  !T.   9              " @>SX 0!X;"]W
M;W)K<VAE971S+W-H965T-S(N>&UL4$L! A0#%     @ 6(%65D <I471 @
M0@D  !D              ("!)OT! 'AL+W=O<FMS:&5E=',O<VAE970W,RYX
M;6Q02P$"% ,4    " !8@596 ;'<5"L)  #D4P  &0              @($N
M  ( >&PO=V]R:W-H965T<R]S:&5E=#<T+GAM;%!+ 0(4 Q0    ( %B!5E;#
MN=W?(00  ,<8   9              " @9 ) @!X;"]W;W)K<VAE971S+W-H
M965T-S4N>&UL4$L! A0#%     @ 6(%65E;FC7TW!@  I3(  !D
M     ("!Z T" 'AL+W=O<FMS:&5E=',O<VAE970W-BYX;6Q02P$"% ,4
M" !8@596:J\CT(4#   G#   &0              @(%6% ( >&PO=V]R:W-H
M965T<R]S:&5E=#<W+GAM;%!+ 0(4 Q0    ( %B!5E87+(P.\ ,  $D.   9
M              " @1(8 @!X;"]W;W)K<VAE971S+W-H965T-S@N>&UL4$L!
M A0#%     @ 6(%65L^K&:R"!0  P"T  !D              ("!.1P" 'AL
M+W=O<FMS:&5E=',O<VAE970W.2YX;6Q02P$"% ,4    " !8@596MS@0!(@'
M   07   &0              @('R(0( >&PO=V]R:W-H965T<R]S:&5E=#@P
M+GAM;%!+ 0(4 Q0    ( %B!5E;\L>_ \0@   1,   9              "
M@;$I @!X;"]W;W)K<VAE971S+W-H965T.#$N>&UL4$L! A0#%     @ 6(%6
M5O>*P@*= @  LP8  !D              ("!V3(" 'AL+W=O<FMS:&5E=',O
M<VAE970X,BYX;6Q02P$"% ,4    " !8@596JTU.P4L"   Z!0  &0
M        @(&M-0( >&PO=V]R:W-H965T<R]S:&5E=#@S+GAM;%!+ 0(4 Q0
M   ( %B!5E888Y@T.0,  &\-   9              " @2\X @!X;"]W;W)K
M<VAE971S+W-H965T.#0N>&UL4$L! A0#%     @ 6(%65I!V&K;L!@  ZC4
M !D              ("!GSL" 'AL+W=O<FMS:&5E=',O<VAE970X-2YX;6Q0
M2P$"% ,4    " !8@596R4,NCY@$  !V'0  &0              @('"0@(
M>&PO=V]R:W-H965T<R]S:&5E=#@V+GAM;%!+ 0(4 Q0    ( %B!5E;W@JY"
MC ,  &(1   9              " @9%' @!X;"]W;W)K<VAE971S+W-H965T
M.#<N>&UL4$L! A0#%     @ 6(%65@Z@+<=Q P  Y0T  !D
M ("!5$L" 'AL+W=O<FMS:&5E=',O<VAE970X."YX;6Q02P$"% ,4    " !8
M@596:$?('V,#  !9#   &0              @('\3@( >&PO=V]R:W-H965T
M<R]S:&5E=#@Y+GAM;%!+ 0(4 Q0    ( %B!5E:X*GN3D00  # 3   9
M          " @992 @!X;"]W;W)K<VAE971S+W-H965T.3 N>&UL4$L! A0#
M%     @ 6(%65A<A6+/&!   TQ4  !D              ("!7E<" 'AL+W=O
M<FMS:&5E=',O<VAE970Y,2YX;6Q02P$"% ,4    " !8@596P'B_L*L#   X
M#P  &0              @(%;7 ( >&PO=V]R:W-H965T<R]S:&5E=#DR+GAM
M;%!+ 0(4 Q0    ( %B!5E82+WEY@P,  .L+   9              " @3U@
M @!X;"]W;W)K<VAE971S+W-H965T.3,N>&UL4$L! A0#%     @ 6(%65GHR
MG@?" @  - @  !D              ("!]V," 'AL+W=O<FMS:&5E=',O<VAE
M970Y-"YX;6Q02P$"% ,4    " !8@596W'-OT!0#  ")#   &0
M    @('P9@( >&PO=V]R:W-H965T<R]S:&5E=#DU+GAM;%!+ 0(4 Q0    (
M %B!5E8FXZ$*EP(  *D&   9              " @3MJ @!X;"]W;W)K<VAE
M971S+W-H965T.38N>&UL4$L! A0#%     @ 6(%65G8#6[8= P  +@H  !D
M             ("!"6T" 'AL+W=O<FMS:&5E=',O<VAE970Y-RYX;6Q02P$"
M% ,4    " !8@596WZ>I4N($  " &0  &0              @(%=< ( >&PO
M=V]R:W-H965T<R]S:&5E=#DX+GAM;%!+ 0(4 Q0    ( %B!5E;3]J*< 0P
M ..D   9              " @79U @!X;"]W;W)K<VAE971S+W-H965T.3DN
M>&UL4$L! A0#%     @ 6(%65O(V&?,4'P  D0," !H              ("!
MKH$" 'AL+W=O<FMS:&5E=',O<VAE970Q,# N>&UL4$L! A0#%     @ 6(%6
M5BY!BI-%!   V18  !H              ("!^J " 'AL+W=O<FMS:&5E=',O
M<VAE970Q,#$N>&UL4$L! A0#%     @ 6(%65IPI:SX% P  ' D  !H
M         ("!=Z4" 'AL+W=O<FMS:&5E=',O<VAE970Q,#(N>&UL4$L! A0#
M%     @ 6(%65A' LH[= @  (P@  !H              ("!M*@" 'AL+W=O
M<FMS:&5E=',O<VAE970Q,#,N>&UL4$L! A0#%     @ 6(%65K!:8Q$# P
ME T  !H              ("!R:L" 'AL+W=O<FMS:&5E=',O<VAE970Q,#0N
M>&UL4$L! A0#%     @ 6(%65BEF[*XY P  [!,   T              ( !
M!*\" 'AL+W-T>6QE<RYX;6Q02P$"% ,4    " !8@596EXJ[',     3 @
M"P              @ %HL@( 7W)E;',O+G)E;'-02P$"% ,4    " !8@596
M>#=[T4('   R1   #P              @ %1LP( >&PO=V]R:V)O;VLN>&UL
M4$L! A0#%     @ 6(%65O$(LOGR @  &ST  !H              ( !P+H"
M 'AL+U]R96QS+W=O<FMB;V]K+GAM;"YR96QS4$L! A0#%     @ 6(%65F51
MZ6]F @  ZSH  !,              ( !ZKT" %M#;VYT96YT7U1Y<&5S72YX
8;6Q02P4&     '  < #,'@  @< "

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>120
<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>121
<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>122
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.22.4</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>446</ContextCount>
  <ElementCount>518</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>129</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>11</UnitCount>
  <MyReports>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>0000001 - Document - Cover Page</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/CoverPage</Role>
      <ShortName>Cover Page</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>0000002 - Document - Audit Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/AuditInformation</Role>
      <ShortName>Audit Information</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>0000003 - Statement - CONSOLIDATED BALANCE SHEETS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS</Role>
      <ShortName>CONSOLIDATED BALANCE SHEETS</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>0000004 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETSParenthetical</Role>
      <ShortName>CONSOLIDATED BALANCE SHEETS (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>0000005 - Statement - CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME</Role>
      <ShortName>CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>0000006 - Statement - CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEParenthetical</Role>
      <ShortName>CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>0000007 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY</Role>
      <ShortName>CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>0000008 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYParenthetical</Role>
      <ShortName>CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>0000009 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS</Role>
      <ShortName>CONSOLIDATED STATEMENTS OF CASH FLOWS</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>0000010 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSParenthetical</Role>
      <ShortName>CONSOLIDATED STATEMENTS OF CASH FLOWS (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>0000011 - Disclosure - Organization</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/Organization</Role>
      <ShortName>Organization</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>0000012 - Disclosure - Significant Accounting Policies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/SignificantAccountingPolicies</Role>
      <ShortName>Significant Accounting Policies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>0000013 - Disclosure - Revenue Recognition</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/RevenueRecognition</Role>
      <ShortName>Revenue Recognition</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>0000014 - Disclosure - Credit Losses</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/CreditLosses</Role>
      <ShortName>Credit Losses</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>0000015 - Disclosure - Cash and Cash Equivalents</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/CashandCashEquivalents</Role>
      <ShortName>Cash and Cash Equivalents</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>0000016 - Disclosure - Property and Equipment</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/PropertyandEquipment</Role>
      <ShortName>Property and Equipment</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>0000017 - Disclosure - Goodwill and Intangibles</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/GoodwillandIntangibles</Role>
      <ShortName>Goodwill and Intangibles</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>0000018 - Disclosure - Long-Term Debt</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/LongTermDebt</Role>
      <ShortName>Long-Term Debt</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>0000019 - Disclosure - Leases</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/Leases</Role>
      <ShortName>Leases</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>0000020 - Disclosure - Fair Value Measurements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/FairValueMeasurements</Role>
      <ShortName>Fair Value Measurements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>0000021 - Disclosure - Information on Segments</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/InformationonSegments</Role>
      <ShortName>Information on Segments</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>0000022 - Disclosure - Derivatives and Hedging Activities</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/DerivativesandHedgingActivities</Role>
      <ShortName>Derivatives and Hedging Activities</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>0000023 - Disclosure - Stockholders' Equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/StockholdersEquity</Role>
      <ShortName>Stockholders' Equity</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>23</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>0000024 - Disclosure - Employee Benefits</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/EmployeeBenefits</Role>
      <ShortName>Employee Benefits</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>24</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>0000025 - Disclosure - Income Taxes</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/IncomeTaxes</Role>
      <ShortName>Income Taxes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>25</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>0000026 - Disclosure - Related Party Transactions</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/RelatedPartyTransactions</Role>
      <ShortName>Related Party Transactions</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>26</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>0000027 - Disclosure - Commitments and Contingencies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/CommitmentsandContingencies</Role>
      <ShortName>Commitments and Contingencies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>27</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>0000028 - Disclosure - Business Combinations</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/BusinessCombinations</Role>
      <ShortName>Business Combinations</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>28</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>0000029 - Disclosure - Income Per Common Share</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/IncomePerCommonShare</Role>
      <ShortName>Income Per Common Share</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>29</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>0000030 - Disclosure - Subsequent Events</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/SubsequentEvents</Role>
      <ShortName>Subsequent Events</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>30</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>0000031 - Disclosure - Significant Accounting Policies (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/SignificantAccountingPoliciesPolicies</Role>
      <ShortName>Significant Accounting Policies (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://installedbuildingproducts.com/role/SignificantAccountingPolicies</ParentRole>
      <Position>31</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>0000032 - Disclosure - Significant Accounting Policies (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/SignificantAccountingPoliciesTables</Role>
      <ShortName>Significant Accounting Policies (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://installedbuildingproducts.com/role/SignificantAccountingPolicies</ParentRole>
      <Position>32</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>0000033 - Disclosure - Revenue Recognition (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/RevenueRecognitionTables</Role>
      <ShortName>Revenue Recognition (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://installedbuildingproducts.com/role/RevenueRecognition</ParentRole>
      <Position>33</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>0000034 - Disclosure - Credit Losses (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/CreditLossesTables</Role>
      <ShortName>Credit Losses (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://installedbuildingproducts.com/role/CreditLosses</ParentRole>
      <Position>34</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>0000035 - Disclosure - Property and Equipment (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/PropertyandEquipmentTables</Role>
      <ShortName>Property and Equipment (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://installedbuildingproducts.com/role/PropertyandEquipment</ParentRole>
      <Position>35</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>0000036 - Disclosure - Goodwill and Intangibles (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/GoodwillandIntangiblesTables</Role>
      <ShortName>Goodwill and Intangibles (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://installedbuildingproducts.com/role/GoodwillandIntangibles</ParentRole>
      <Position>36</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>0000037 - Disclosure - Long-Term Debt (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/LongTermDebtTables</Role>
      <ShortName>Long-Term Debt (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://installedbuildingproducts.com/role/LongTermDebt</ParentRole>
      <Position>37</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>0000038 - Disclosure - Leases (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/LeasesTables</Role>
      <ShortName>Leases (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://installedbuildingproducts.com/role/Leases</ParentRole>
      <Position>38</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>0000039 - Disclosure - Fair Value Measurements (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/FairValueMeasurementsTables</Role>
      <ShortName>Fair Value Measurements (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://installedbuildingproducts.com/role/FairValueMeasurements</ParentRole>
      <Position>39</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>0000040 - Disclosure - Information on Segments (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/InformationonSegmentsTables</Role>
      <ShortName>Information on Segments (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://installedbuildingproducts.com/role/InformationonSegments</ParentRole>
      <Position>40</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>0000041 - Disclosure - Derivatives and Hedging Activities (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/DerivativesandHedgingActivitiesTables</Role>
      <ShortName>Derivatives and Hedging Activities (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://installedbuildingproducts.com/role/DerivativesandHedgingActivities</ParentRole>
      <Position>41</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>0000042 - Disclosure - Stockholders' Equity (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/StockholdersEquityTables</Role>
      <ShortName>Stockholders' Equity (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://installedbuildingproducts.com/role/StockholdersEquity</ParentRole>
      <Position>42</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>0000043 - Disclosure - Employee Benefits (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/EmployeeBenefitsTables</Role>
      <ShortName>Employee Benefits (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://installedbuildingproducts.com/role/EmployeeBenefits</ParentRole>
      <Position>43</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>0000044 - Disclosure - Income Taxes (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/IncomeTaxesTables</Role>
      <ShortName>Income Taxes (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://installedbuildingproducts.com/role/IncomeTaxes</ParentRole>
      <Position>44</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>0000045 - Disclosure - Related Party Transactions (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/RelatedPartyTransactionsTables</Role>
      <ShortName>Related Party Transactions (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://installedbuildingproducts.com/role/RelatedPartyTransactions</ParentRole>
      <Position>45</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>0000046 - Disclosure - Commitments and Contingencies (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/CommitmentsandContingenciesTables</Role>
      <ShortName>Commitments and Contingencies (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://installedbuildingproducts.com/role/CommitmentsandContingencies</ParentRole>
      <Position>46</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>0000047 - Disclosure - Business Combinations (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/BusinessCombinationsTables</Role>
      <ShortName>Business Combinations (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://installedbuildingproducts.com/role/BusinessCombinations</ParentRole>
      <Position>47</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>0000048 - Disclosure - Organization - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/OrganizationAdditionalInformationDetail</Role>
      <ShortName>Organization - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>48</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>0000049 - Disclosure - Significant Accounting Policies (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail</Role>
      <ShortName>Significant Accounting Policies (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://installedbuildingproducts.com/role/SignificantAccountingPoliciesTables</ParentRole>
      <Position>49</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>0000050 - Disclosure - Revenue Recognition - Summary of Revenues Disaggregated by End Market and Product (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail</Role>
      <ShortName>Revenue Recognition - Summary of Revenues Disaggregated by End Market and Product (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>50</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>0000051 - Disclosure - Revenue Recognition - Summary of Assets and Liabilities Related to Uncompleted Contracts and Customer Deposits (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofAssetsandLiabilitiesRelatedtoUncompletedContractsandCustomerDepositsDetail</Role>
      <ShortName>Revenue Recognition - Summary of Assets and Liabilities Related to Uncompleted Contracts and Customer Deposits (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>51</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>0000052 - Disclosure - Revenue Recognition - Schedule of Cost and Estimated Earnings on Uncompleted Contracts (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofCostandEstimatedEarningsonUncompletedContractsDetail</Role>
      <ShortName>Revenue Recognition - Schedule of Cost and Estimated Earnings on Uncompleted Contracts (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>52</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>0000053 - Disclosure - Revenue Recognition - Schedule of Net Under (Over) Billings (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofNetUnderOverBillingsDetail</Role>
      <ShortName>Revenue Recognition - Schedule of Net Under (Over) Billings (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>53</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>0000054 - Disclosure - Revenue Recognition - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/RevenueRecognitionAdditionalInformationDetail</Role>
      <ShortName>Revenue Recognition - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>54</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R55.htm</HtmlFileName>
      <LongName>0000055 - Disclosure - Credit Losses - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/CreditLossesAdditionalInformationDetails</Role>
      <ShortName>Credit Losses - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>55</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R56.htm</HtmlFileName>
      <LongName>0000056 - Disclosure - Credit Losses - Schedule of Changes in Allowance for Credit Losses (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/CreditLossesScheduleofChangesinAllowanceforCreditLossesDetails</Role>
      <ShortName>Credit Losses - Schedule of Changes in Allowance for Credit Losses (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>56</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R57.htm</HtmlFileName>
      <LongName>0000057 - Disclosure - Cash and Cash Equivalents - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/CashandCashEquivalentsAdditionalInformationDetail</Role>
      <ShortName>Cash and Cash Equivalents - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>57</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R58.htm</HtmlFileName>
      <LongName>0000058 - Disclosure - Property and Equipment - Schedule of Property and Equipment (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails</Role>
      <ShortName>Property and Equipment - Schedule of Property and Equipment (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>58</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R59.htm</HtmlFileName>
      <LongName>0000059 - Disclosure - Property and Equipment - Schedule of Depreciation and Amortization Expense on Property and Equipment, by Income Statement Category (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofDepreciationandAmortizationExpenseonPropertyandEquipmentbyIncomeStatementCategoryDetails</Role>
      <ShortName>Property and Equipment - Schedule of Depreciation and Amortization Expense on Property and Equipment, by Income Statement Category (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>59</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R60.htm</HtmlFileName>
      <LongName>0000060 - Disclosure - Goodwill and Intangibles - Summary of Change in Carrying Amount of Goodwill (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails</Role>
      <ShortName>Goodwill and Intangibles - Summary of Change in Carrying Amount of Goodwill (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>60</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R61.htm</HtmlFileName>
      <LongName>0000061 - Disclosure - Goodwill and Intangibles - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/GoodwillandIntangiblesAdditionalInformationDetail</Role>
      <ShortName>Goodwill and Intangibles - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>61</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R62.htm</HtmlFileName>
      <LongName>0000062 - Disclosure - Goodwill and Intangibles - Schedule of Gross Carrying Amount and Accumulated Amortization (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails</Role>
      <ShortName>Goodwill and Intangibles - Schedule of Gross Carrying Amount and Accumulated Amortization (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>62</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R63.htm</HtmlFileName>
      <LongName>0000063 - Disclosure - Goodwill and Intangibles - Schedule of Estimated Aggregate Annual Amortization (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofEstimatedAggregateAnnualAmortizationDetails</Role>
      <ShortName>Goodwill and Intangibles - Schedule of Estimated Aggregate Annual Amortization (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>63</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R64.htm</HtmlFileName>
      <LongName>0000064 - Disclosure - Long-term Debt - Schedule of Debt (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/LongtermDebtScheduleofDebtDetail</Role>
      <ShortName>Long-term Debt - Schedule of Debt (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>64</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R65.htm</HtmlFileName>
      <LongName>0000065 - Disclosure - Long-Term Debt - Schedule of Maturities of Long Term Debt (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/LongTermDebtScheduleofMaturitiesofLongTermDebtDetail</Role>
      <ShortName>Long-Term Debt - Schedule of Maturities of Long Term Debt (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>65</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R66.htm</HtmlFileName>
      <LongName>0000066 - Disclosure - Long-term Debt - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail</Role>
      <ShortName>Long-term Debt - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>66</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R67.htm</HtmlFileName>
      <LongName>0000067 - Disclosure - Leases - Schedule of Supplemental Balance Sheet In formation Related To Leases (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails</Role>
      <ShortName>Leases - Schedule of Supplemental Balance Sheet In formation Related To Leases (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>67</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R68.htm</HtmlFileName>
      <LongName>0000068 - Disclosure - Leases - Lease Cost Finance and Operating Leases (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/LeasesLeaseCostFinanceandOperatingLeasesDetails</Role>
      <ShortName>Leases - Lease Cost Finance and Operating Leases (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>68</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R69.htm</HtmlFileName>
      <LongName>0000069 - Disclosure - Leases - Schedule of Supplemental Cash Flow Information Related to Leases (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalCashFlowInformationRelatedtoLeasesDetails</Role>
      <ShortName>Leases - Schedule of Supplemental Cash Flow Information Related to Leases (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>69</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R70.htm</HtmlFileName>
      <LongName>0000070 - Disclosure - Leases - Finance Lease Obligations and Operating Lease Obligations (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail</Role>
      <ShortName>Leases - Finance Lease Obligations and Operating Lease Obligations (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>70</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R71.htm</HtmlFileName>
      <LongName>0000071 - Disclosure - Fair Value Measurements - Schedule of Fair Values of Financial Assets and Liabilities (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail</Role>
      <ShortName>Fair Value Measurements - Schedule of Fair Values of Financial Assets and Liabilities (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>71</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R72.htm</HtmlFileName>
      <LongName>0000072 - Disclosure - Fair value measurements - Summary of Change in Fair Value of Contingent Consideration (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/FairvaluemeasurementsSummaryofChangeinFairValueofContingentConsiderationDetail</Role>
      <ShortName>Fair value measurements - Summary of Change in Fair Value of Contingent Consideration (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>72</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R73.htm</HtmlFileName>
      <LongName>0000073 - Disclosure - Fair Value measurements - Summary of Carrying Values and Associated Fair Values of Financial Assets and Liabilities (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/FairValuemeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetail</Role>
      <ShortName>Fair Value measurements - Summary of Carrying Values and Associated Fair Values of Financial Assets and Liabilities (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>73</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R74.htm</HtmlFileName>
      <LongName>0000074 - Disclosure - Information on Segments (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/InformationonSegmentsDetails</Role>
      <ShortName>Information on Segments (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://installedbuildingproducts.com/role/InformationonSegmentsTables</ParentRole>
      <Position>74</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R75.htm</HtmlFileName>
      <LongName>0000075 - Disclosure - Derivative and Hedging Activities - Open Interest Swap Contract Summary (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesOpenInterestSwapContractSummaryDetails</Role>
      <ShortName>Derivative and Hedging Activities - Open Interest Swap Contract Summary (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>75</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R76.htm</HtmlFileName>
      <LongName>0000076 - Disclosure - Derivative and Hedging Activities - Narrative (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesNarrativeDetails</Role>
      <ShortName>Derivative and Hedging Activities - Narrative (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>76</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R77.htm</HtmlFileName>
      <LongName>0000077 - Disclosure - Derivative and Hedging Activities - Interest Rate Swap Summary (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesInterestRateSwapSummaryDetails</Role>
      <ShortName>Derivative and Hedging Activities - Interest Rate Swap Summary (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>77</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R78.htm</HtmlFileName>
      <LongName>0000078 - Disclosure - Stockholders' Equity - Change in AOCI (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/StockholdersEquityChangeinAOCIDetails</Role>
      <ShortName>Stockholders' Equity - Change in AOCI (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>78</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R79.htm</HtmlFileName>
      <LongName>0000079 - Disclosure - Stockholders' Equity - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/StockholdersEquityAdditionalInformationDetails</Role>
      <ShortName>Stockholders' Equity - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>79</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R80.htm</HtmlFileName>
      <LongName>0000080 - Disclosure - Stockholders' Equity - Schedule of Dividends Declared (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/StockholdersEquityScheduleofDividendsDeclaredDetails</Role>
      <ShortName>Stockholders' Equity - Schedule of Dividends Declared (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>80</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R81.htm</HtmlFileName>
      <LongName>0000081 - Disclosure - Employee Benefits - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail</Role>
      <ShortName>Employee Benefits - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>81</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R82.htm</HtmlFileName>
      <LongName>0000082 - Disclosure - Employee Benefits - Summary of Workers' Compensation Known Claims and IBNR Reserves (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofWorkersCompensationKnownClaimsandIBNRReservesDetail</Role>
      <ShortName>Employee Benefits - Summary of Workers' Compensation Known Claims and IBNR Reserves (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>82</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R83.htm</HtmlFileName>
      <LongName>0000083 - Disclosure - Employee Benefits - Schedule of Insurance Receivable for Claims (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/EmployeeBenefitsScheduleofInsuranceReceivableforClaimsDetail</Role>
      <ShortName>Employee Benefits - Schedule of Insurance Receivable for Claims (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>83</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R84.htm</HtmlFileName>
      <LongName>0000084 - Disclosure - Employee Benefits - Contributions to Multiemployer Pensions and Health and Welfare Benefit Plans (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/EmployeeBenefitsContributionstoMultiemployerPensionsandHealthandWelfareBenefitPlansDetails</Role>
      <ShortName>Employee Benefits - Contributions to Multiemployer Pensions and Health and Welfare Benefit Plans (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>84</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R85.htm</HtmlFileName>
      <LongName>0000085 - Disclosure - Employee Benefits - Summary of Equity-Based Awards for Employees (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail</Role>
      <ShortName>Employee Benefits - Summary of Equity-Based Awards for Employees (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>85</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R86.htm</HtmlFileName>
      <LongName>0000086 - Disclosure - Employee Benefits - Summary of Share-Based Compensation Expense Under the 2014 Omnibus Incentive Plan (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails</Role>
      <ShortName>Employee Benefits - Summary of Share-Based Compensation Expense Under the 2014 Omnibus Incentive Plan (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>86</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R87.htm</HtmlFileName>
      <LongName>0000087 - Disclosure - Employee Benefits - Summary of Stock Compensation Expense (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofStockCompensationExpenseDetail</Role>
      <ShortName>Employee Benefits - Summary of Stock Compensation Expense (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>87</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R88.htm</HtmlFileName>
      <LongName>0000088 - Disclosure - Employee Benefits - Unrecognized Share-Based Compensation Expense Related to Unvested Awards (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/EmployeeBenefitsUnrecognizedShareBasedCompensationExpenseRelatedtoUnvestedAwardsDetails</Role>
      <ShortName>Employee Benefits - Unrecognized Share-Based Compensation Expense Related to Unvested Awards (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>88</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R89.htm</HtmlFileName>
      <LongName>0000089 - Disclosure - Income Taxes - Provision for Income Taxes (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/IncomeTaxesProvisionforIncomeTaxesDetail</Role>
      <ShortName>Income Taxes - Provision for Income Taxes (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>89</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R90.htm</HtmlFileName>
      <LongName>0000090 - Disclosure - Income Taxes - Reconciliation of Effective Tax Rate on Net Income (Loss) and Federal Statutory Tax Rate (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail</Role>
      <ShortName>Income Taxes - Reconciliation of Effective Tax Rate on Net Income (Loss) and Federal Statutory Tax Rate (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>90</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R91.htm</HtmlFileName>
      <LongName>0000091 - Disclosure - Income Taxes - Components of Net Deferred Tax Asset or Liability (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail</Role>
      <ShortName>Income Taxes - Components of Net Deferred Tax Asset or Liability (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>91</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R92.htm</HtmlFileName>
      <LongName>0000092 - Disclosure - Income Taxes - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/IncomeTaxesAdditionalInformationDetail</Role>
      <ShortName>Income Taxes - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>92</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R93.htm</HtmlFileName>
      <LongName>0000093 - Disclosure - Income Taxes - Gross Unrecognized Tax Benefit (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/IncomeTaxesGrossUnrecognizedTaxBenefitDetail</Role>
      <ShortName>Income Taxes - Gross Unrecognized Tax Benefit (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>93</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R94.htm</HtmlFileName>
      <LongName>0000094 - Disclosure - Related Party Transactions - Schedule of Related Party Transactions (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/RelatedPartyTransactionsScheduleofRelatedPartyTransactionsDetail</Role>
      <ShortName>Related Party Transactions - Schedule of Related Party Transactions (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>94</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R95.htm</HtmlFileName>
      <LongName>0000095 - Disclosure - Related Party Transactions - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/RelatedPartyTransactionsAdditionalInformationDetail</Role>
      <ShortName>Related Party Transactions - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>95</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R96.htm</HtmlFileName>
      <LongName>0000096 - Disclosure - Commitments and Contingencies - Schedule of Accrued General Insurance Reserves (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofAccruedGeneralInsuranceReservesDetail</Role>
      <ShortName>Commitments and Contingencies - Schedule of Accrued General Insurance Reserves (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>96</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R97.htm</HtmlFileName>
      <LongName>0000097 - Disclosure - Commitments and Contingencies - Schedule of Insurance Receivable for Claims (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetail</Role>
      <ShortName>Commitments and Contingencies - Schedule of Insurance Receivable for Claims (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>97</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R98.htm</HtmlFileName>
      <LongName>0000098 - Disclosure - Business Combinations - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/BusinessCombinationsAdditionalInformationDetail</Role>
      <ShortName>Business Combinations - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>98</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R99.htm</HtmlFileName>
      <LongName>0000099 - Disclosure - Business Combinations - Summary of Business Acquisitions (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetail</Role>
      <ShortName>Business Combinations - Summary of Business Acquisitions (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>99</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R100.htm</HtmlFileName>
      <LongName>0000100 - Disclosure - Business Combinations - Summary of Estimated Fair Value of Assets Acquired and Liabilities Assumed (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail</Role>
      <ShortName>Business Combinations - Summary of Estimated Fair Value of Assets Acquired and Liabilities Assumed (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>100</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R101.htm</HtmlFileName>
      <LongName>0000101 - Disclosure - Business Combinations - Estimates of Acquired Intangible Assets (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/BusinessCombinationsEstimatesofAcquiredIntangibleAssetsDetail</Role>
      <ShortName>Business Combinations - Estimates of Acquired Intangible Assets (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>101</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R102.htm</HtmlFileName>
      <LongName>0000102 - Disclosure - Business Combinations - Pro Forma Results of Operations (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/BusinessCombinationsProFormaResultsofOperationsDetail</Role>
      <ShortName>Business Combinations - Pro Forma Results of Operations (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>102</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R103.htm</HtmlFileName>
      <LongName>0000103 - Disclosure - Income Per Common Share - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/IncomePerCommonShareAdditionalInformationDetail</Role>
      <ShortName>Income Per Common Share - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>103</Position>
    </Report>
    <Report instance="ibp-20221231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R104.htm</HtmlFileName>
      <LongName>0000104 - Disclosure - Subsequent Events (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://installedbuildingproducts.com/role/SubsequentEventsDetails</Role>
      <ShortName>Subsequent Events (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://installedbuildingproducts.com/role/SubsequentEvents</ParentRole>
      <Position>104</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <Logs>
    <Log type="Warning">[ix-0514-Hidden-Fact-Eligible-For-Transform] WARN: 17 fact(s) appearing in ix:hidden were eligible for transformation: us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount, us-gaap:FiniteLivedIntangibleAssetUsefulLife, us-gaap:PropertyPlantAndEquipmentUsefulLife, us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod, us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage -  ibp-20221231.htm 4</Log>
  </Logs>
  <InputFiles>
    <File doctype="10-K" original="ibp-20221231.htm">ibp-20221231.htm</File>
    <File>ibp-20221231.xsd</File>
    <File>ibp-20221231_cal.xml</File>
    <File>ibp-20221231_def.xml</File>
    <File>ibp-20221231_lab.xml</File>
    <File>ibp-20221231_pre.xml</File>
    <File>ibp-20221231xex211xsignifi.htm</File>
    <File>ibp-20221231xex231xdeloitt.htm</File>
    <File>ibp-20221231xex311xceocert.htm</File>
    <File>ibp-20221231xex312xcfocert.htm</File>
    <File>ibp-20221231xex321xceo.htm</File>
    <File>ibp-20221231xex322xcfo.htm</File>
  </InputFiles>
  <SupplementalFiles>
    <File>ibp-20221231_g1.jpg</File>
  </SupplementalFiles>
  <BaseTaxonomies>
    <BaseTaxonomy items="1580">http://fasb.org/us-gaap/2022</BaseTaxonomy>
    <BaseTaxonomy items="38">http://xbrl.sec.gov/dei/2022</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>125
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "instance": {
  "ibp-20221231.htm": {
   "axisCustom": 0,
   "axisStandard": 41,
   "baseTaxonomies": {
    "http://fasb.org/us-gaap/2022": 1580,
    "http://xbrl.sec.gov/dei/2022": 38
   },
   "contextCount": 446,
   "dts": {
    "calculationLink": {
     "local": [
      "ibp-20221231_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "ibp-20221231_def.xml"
     ]
    },
    "inline": {
     "local": [
      "ibp-20221231.htm"
     ]
    },
    "labelLink": {
     "local": [
      "ibp-20221231_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "ibp-20221231_pre.xml"
     ]
    },
    "schema": {
     "local": [
      "ibp-20221231.xsd"
     ],
     "remote": [
      "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xl-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xlink-2003-12-31.xsd",
      "http://www.xbrl.org/2005/xbrldt-2005.xsd",
      "http://www.xbrl.org/2006/ref-2006-02-27.xsd",
      "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd",
      "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd",
      "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd",
      "https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd",
      "https://xbrl.fasb.org/srt/2022/elts/srt-roles-2022.xsd",
      "https://xbrl.fasb.org/srt/2022/elts/srt-types-2022.xsd",
      "https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd",
      "https://xbrl.fasb.org/us-gaap/2022/elts/us-roles-2022.xsd",
      "https://xbrl.fasb.org/us-gaap/2022/elts/us-types-2022.xsd",
      "https://xbrl.sec.gov/country/2022/country-2022.xsd",
      "https://xbrl.sec.gov/dei/2022/dei-2022.xsd"
     ]
    }
   },
   "elementCount": 849,
   "entityCount": 1,
   "hidden": {
    "http://fasb.org/us-gaap/2022": 28,
    "http://xbrl.sec.gov/dei/2022": 4,
    "total": 32
   },
   "keyCustom": 54,
   "keyStandard": 464,
   "memberCustom": 60,
   "memberStandard": 66,
   "nsprefix": "ibp",
   "nsuri": "http://installedbuildingproducts.com/20221231",
   "report": {
    "R1": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "document",
     "isDefault": "true",
     "longName": "0000001 - Document - Cover Page",
     "menuCat": "Cover",
     "order": "1",
     "role": "http://installedbuildingproducts.com/role/CoverPage",
     "shortName": "Cover Page",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R10": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CashAcquiredFromAcquisition",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000010 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS (Parenthetical)",
     "menuCat": "Statements",
     "order": "10",
     "role": "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSParenthetical",
     "shortName": "CONSOLIDATED STATEMENTS OF CASH FLOWS (Parenthetical)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CashAcquiredFromAcquisition",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R100": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000100 - Disclosure - Business Combinations - Summary of Estimated Fair Value of Assets Acquired and Liabilities Assumed (Detail)",
     "menuCat": "Details",
     "order": "100",
     "role": "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail",
     "shortName": "Business Combinations - Summary of Estimated Fair Value of Assets Acquired and Liabilities Assumed (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i1b1456749c4141e8935d5eff49c409fb_I20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R101": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:FiniteLivedAndIndefiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "iae67bb7820424a05bb9980c0a54a1be7_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FinitelivedIntangibleAssetsAcquired1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000101 - Disclosure - Business Combinations - Estimates of Acquired Intangible Assets (Detail)",
     "menuCat": "Details",
     "order": "101",
     "role": "http://installedbuildingproducts.com/role/BusinessCombinationsEstimatesofAcquiredIntangibleAssetsDetail",
     "shortName": "Business Combinations - Estimates of Acquired Intangible Assets (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:FiniteLivedAndIndefiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "iae67bb7820424a05bb9980c0a54a1be7_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FinitelivedIntangibleAssetsAcquired1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R102": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:BusinessAcquisitionProFormaInformationTextBlock",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessAcquisitionsProFormaRevenue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000102 - Disclosure - Business Combinations - Pro Forma Results of Operations (Detail)",
     "menuCat": "Details",
     "order": "102",
     "role": "http://installedbuildingproducts.com/role/BusinessCombinationsProFormaResultsofOperationsDetail",
     "shortName": "Business Combinations - Pro Forma Results of Operations (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:BusinessAcquisitionProFormaInformationTextBlock",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessAcquisitionsProFormaRevenue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R103": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000103 - Disclosure - Income Per Common Share - Additional Information (Detail)",
     "menuCat": "Details",
     "order": "103",
     "role": "http://installedbuildingproducts.com/role/IncomePerCommonShareAdditionalInformationDetail",
     "shortName": "Income Per Common Share - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R104": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i100c14fc5dac409cbdb1dacc3ea4f5a3_I20220224",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockRepurchaseProgramAuthorizedAmount1",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000104 - Disclosure - Subsequent Events (Details)",
     "menuCat": "Details",
     "order": "104",
     "role": "http://installedbuildingproducts.com/role/SubsequentEventsDetails",
     "shortName": "Subsequent Events (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "iaf7f2985f94c4c49bd394258ac3e1c59_I20230222",
      "decimals": "-5",
      "lang": "en-US",
      "name": "us-gaap:StockRepurchaseProgramAuthorizedAmount1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R11": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000011 - Disclosure - Organization",
     "menuCat": "Notes",
     "order": "11",
     "role": "http://installedbuildingproducts.com/role/Organization",
     "shortName": "Organization",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R12": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000012 - Disclosure - Significant Accounting Policies",
     "menuCat": "Notes",
     "order": "12",
     "role": "http://installedbuildingproducts.com/role/SignificantAccountingPolicies",
     "shortName": "Significant Accounting Policies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R13": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000013 - Disclosure - Revenue Recognition",
     "menuCat": "Notes",
     "order": "13",
     "role": "http://installedbuildingproducts.com/role/RevenueRecognition",
     "shortName": "Revenue Recognition",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R14": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AllowanceForCreditLossesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000014 - Disclosure - Credit Losses",
     "menuCat": "Notes",
     "order": "14",
     "role": "http://installedbuildingproducts.com/role/CreditLosses",
     "shortName": "Credit Losses",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AllowanceForCreditLossesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R15": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000015 - Disclosure - Cash and Cash Equivalents",
     "menuCat": "Notes",
     "order": "15",
     "role": "http://installedbuildingproducts.com/role/CashandCashEquivalents",
     "shortName": "Cash and Cash Equivalents",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R16": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000016 - Disclosure - Property and Equipment",
     "menuCat": "Notes",
     "order": "16",
     "role": "http://installedbuildingproducts.com/role/PropertyandEquipment",
     "shortName": "Property and Equipment",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R17": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000017 - Disclosure - Goodwill and Intangibles",
     "menuCat": "Notes",
     "order": "17",
     "role": "http://installedbuildingproducts.com/role/GoodwillandIntangibles",
     "shortName": "Goodwill and Intangibles",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R18": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LongTermDebtTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000018 - Disclosure - Long-Term Debt",
     "menuCat": "Notes",
     "order": "18",
     "role": "http://installedbuildingproducts.com/role/LongTermDebt",
     "shortName": "Long-Term Debt",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LongTermDebtTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R19": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:LesseeFinanceLeasesTextBlock",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000019 - Disclosure - Leases",
     "menuCat": "Notes",
     "order": "19",
     "role": "http://installedbuildingproducts.com/role/Leases",
     "shortName": "Leases",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:LesseeFinanceLeasesTextBlock",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R2": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:AuditorName",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "document",
     "isDefault": "false",
     "longName": "0000002 - Document - Audit Information",
     "menuCat": "Cover",
     "order": "2",
     "role": "http://installedbuildingproducts.com/role/AuditInformation",
     "shortName": "Audit Information",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:AuditorName",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R20": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FairValueDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000020 - Disclosure - Fair Value Measurements",
     "menuCat": "Notes",
     "order": "20",
     "role": "http://installedbuildingproducts.com/role/FairValueMeasurements",
     "shortName": "Fair Value Measurements",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FairValueDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R21": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000021 - Disclosure - Information on Segments",
     "menuCat": "Notes",
     "order": "21",
     "role": "http://installedbuildingproducts.com/role/InformationonSegments",
     "shortName": "Information on Segments",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R22": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000022 - Disclosure - Derivatives and Hedging Activities",
     "menuCat": "Notes",
     "order": "22",
     "role": "http://installedbuildingproducts.com/role/DerivativesandHedgingActivities",
     "shortName": "Derivatives and Hedging Activities",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R23": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000023 - Disclosure - Stockholders' Equity",
     "menuCat": "Notes",
     "order": "23",
     "role": "http://installedbuildingproducts.com/role/StockholdersEquity",
     "shortName": "Stockholders' Equity",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R24": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CompensationAndEmployeeBenefitPlansTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000024 - Disclosure - Employee Benefits",
     "menuCat": "Notes",
     "order": "24",
     "role": "http://installedbuildingproducts.com/role/EmployeeBenefits",
     "shortName": "Employee Benefits",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CompensationAndEmployeeBenefitPlansTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R25": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000025 - Disclosure - Income Taxes",
     "menuCat": "Notes",
     "order": "25",
     "role": "http://installedbuildingproducts.com/role/IncomeTaxes",
     "shortName": "Income Taxes",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R26": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000026 - Disclosure - Related Party Transactions",
     "menuCat": "Notes",
     "order": "26",
     "role": "http://installedbuildingproducts.com/role/RelatedPartyTransactions",
     "shortName": "Related Party Transactions",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R27": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000027 - Disclosure - Commitments and Contingencies",
     "menuCat": "Notes",
     "order": "27",
     "role": "http://installedbuildingproducts.com/role/CommitmentsandContingencies",
     "shortName": "Commitments and Contingencies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R28": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000028 - Disclosure - Business Combinations",
     "menuCat": "Notes",
     "order": "28",
     "role": "http://installedbuildingproducts.com/role/BusinessCombinations",
     "shortName": "Business Combinations",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R29": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000029 - Disclosure - Income Per Common Share",
     "menuCat": "Notes",
     "order": "29",
     "role": "http://installedbuildingproducts.com/role/IncomePerCommonShare",
     "shortName": "Income Per Common Share",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R3": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000003 - Statement - CONSOLIDATED BALANCE SHEETS",
     "menuCat": "Statements",
     "order": "3",
     "role": "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS",
     "shortName": "CONSOLIDATED BALANCE SHEETS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R30": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000030 - Disclosure - Subsequent Events",
     "menuCat": "Notes",
     "order": "30",
     "role": "http://installedbuildingproducts.com/role/SubsequentEvents",
     "shortName": "Subsequent Events",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R31": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000031 - Disclosure - Significant Accounting Policies (Policies)",
     "menuCat": "Policies",
     "order": "31",
     "role": "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesPolicies",
     "shortName": "Significant Accounting Policies (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R32": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000032 - Disclosure - Significant Accounting Policies (Tables)",
     "menuCat": "Tables",
     "order": "32",
     "role": "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesTables",
     "shortName": "Significant Accounting Policies (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R33": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000033 - Disclosure - Revenue Recognition (Tables)",
     "menuCat": "Tables",
     "order": "33",
     "role": "http://installedbuildingproducts.com/role/RevenueRecognitionTables",
     "shortName": "Revenue Recognition (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R34": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000034 - Disclosure - Credit Losses (Tables)",
     "menuCat": "Tables",
     "order": "34",
     "role": "http://installedbuildingproducts.com/role/CreditLossesTables",
     "shortName": "Credit Losses (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R35": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000035 - Disclosure - Property and Equipment (Tables)",
     "menuCat": "Tables",
     "order": "35",
     "role": "http://installedbuildingproducts.com/role/PropertyandEquipmentTables",
     "shortName": "Property and Equipment (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R36": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfGoodwillTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000036 - Disclosure - Goodwill and Intangibles (Tables)",
     "menuCat": "Tables",
     "order": "36",
     "role": "http://installedbuildingproducts.com/role/GoodwillandIntangiblesTables",
     "shortName": "Goodwill and Intangibles (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfGoodwillTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R37": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDebtTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000037 - Disclosure - Long-Term Debt (Tables)",
     "menuCat": "Tables",
     "order": "37",
     "role": "http://installedbuildingproducts.com/role/LongTermDebtTables",
     "shortName": "Long-Term Debt (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDebtTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R38": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "ibp:AssetsAndLiabilitiesLesseeTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000038 - Disclosure - Leases (Tables)",
     "menuCat": "Tables",
     "order": "38",
     "role": "http://installedbuildingproducts.com/role/LeasesTables",
     "shortName": "Leases (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "ibp:AssetsAndLiabilitiesLesseeTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R39": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000039 - Disclosure - Fair Value Measurements (Tables)",
     "menuCat": "Tables",
     "order": "39",
     "role": "http://installedbuildingproducts.com/role/FairValueMeasurementsTables",
     "shortName": "Fair Value Measurements (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R4": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000004 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical)",
     "menuCat": "Statements",
     "order": "4",
     "role": "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETSParenthetical",
     "shortName": "CONSOLIDATED BALANCE SHEETS (Parenthetical)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R40": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000040 - Disclosure - Information on Segments (Tables)",
     "menuCat": "Tables",
     "order": "40",
     "role": "http://installedbuildingproducts.com/role/InformationonSegmentsTables",
     "shortName": "Information on Segments (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R41": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000041 - Disclosure - Derivatives and Hedging Activities (Tables)",
     "menuCat": "Tables",
     "order": "41",
     "role": "http://installedbuildingproducts.com/role/DerivativesandHedgingActivitiesTables",
     "shortName": "Derivatives and Hedging Activities (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R42": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000042 - Disclosure - Stockholders' Equity (Tables)",
     "menuCat": "Tables",
     "order": "42",
     "role": "http://installedbuildingproducts.com/role/StockholdersEquityTables",
     "shortName": "Stockholders' Equity (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R43": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "ibp:ScheduleOfEmployeeRelatedLiabilitiesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000043 - Disclosure - Employee Benefits (Tables)",
     "menuCat": "Tables",
     "order": "43",
     "role": "http://installedbuildingproducts.com/role/EmployeeBenefitsTables",
     "shortName": "Employee Benefits (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "ibp:ScheduleOfEmployeeRelatedLiabilitiesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R44": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000044 - Disclosure - Income Taxes (Tables)",
     "menuCat": "Tables",
     "order": "44",
     "role": "http://installedbuildingproducts.com/role/IncomeTaxesTables",
     "shortName": "Income Taxes (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R45": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfRelatedPartyTransactionsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000045 - Disclosure - Related Party Transactions (Tables)",
     "menuCat": "Tables",
     "order": "45",
     "role": "http://installedbuildingproducts.com/role/RelatedPartyTransactionsTables",
     "shortName": "Related Party Transactions (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfRelatedPartyTransactionsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R46": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "ibp:ScheduleOfAccruedInsuranceReservesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000046 - Disclosure - Commitments and Contingencies (Tables)",
     "menuCat": "Tables",
     "order": "46",
     "role": "http://installedbuildingproducts.com/role/CommitmentsandContingenciesTables",
     "shortName": "Commitments and Contingencies (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "ibp:ScheduleOfAccruedInsuranceReservesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R47": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000047 - Disclosure - Business Combinations (Tables)",
     "menuCat": "Tables",
     "order": "47",
     "role": "http://installedbuildingproducts.com/role/BusinessCombinationsTables",
     "shortName": "Business Combinations (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R48": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "ibp:NumberOfLocationsInOperation",
      "reportCount": 1,
      "unitRef": "location",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000048 - Disclosure - Organization - Additional Information (Detail)",
     "menuCat": "Details",
     "order": "48",
     "role": "http://installedbuildingproducts.com/role/OrganizationAdditionalInformationDetail",
     "shortName": "Organization - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R49": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000049 - Disclosure - Significant Accounting Policies (Detail)",
     "menuCat": "Details",
     "order": "49",
     "role": "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail",
     "shortName": "Significant Accounting Policies (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-4",
      "lang": "en-US",
      "name": "us-gaap:CashFDICInsuredAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R5": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000005 - Statement - CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME",
     "menuCat": "Statements",
     "order": "5",
     "role": "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME",
     "shortName": "CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:CostOfGoodsAndServicesSold",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R50": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000050 - Disclosure - Revenue Recognition - Summary of Revenues Disaggregated by End Market and Product (Detail)",
     "menuCat": "Details",
     "order": "50",
     "role": "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail",
     "shortName": "Revenue Recognition - Summary of Revenues Disaggregated by End Market and Product (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "iae4047cbe4fd44928d016f399247a6f8_D20220101-20221231",
      "decimals": "2",
      "lang": "en-US",
      "name": "us-gaap:ConcentrationRiskPercentage1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     }
    },
    "R51": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ContractWithCustomerAssetNet",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000051 - Disclosure - Revenue Recognition - Summary of Assets and Liabilities Related to Uncompleted Contracts and Customer Deposits (Detail)",
     "menuCat": "Details",
     "order": "51",
     "role": "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofAssetsandLiabilitiesRelatedtoUncompletedContractsandCustomerDepositsDetail",
     "shortName": "Revenue Recognition - Summary of Assets and Liabilities Related to Uncompleted Contracts and Customer Deposits (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ContractWithCustomerAssetNet",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R52": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ibp:CostsAndEstimatedEarningsOnUncompletedContractsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "ibp:CostsIncurredOnUncompletedContracts",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000052 - Disclosure - Revenue Recognition - Schedule of Cost and Estimated Earnings on Uncompleted Contracts (Detail)",
     "menuCat": "Details",
     "order": "52",
     "role": "http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofCostandEstimatedEarningsonUncompletedContractsDetail",
     "shortName": "Revenue Recognition - Schedule of Cost and Estimated Earnings on Uncompleted Contracts (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ibp:CostsAndEstimatedEarningsOnUncompletedContractsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "ibp:CostsIncurredOnUncompletedContracts",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R53": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:CostsInExcessOfBillingsAndBillingsInExcessOfCostsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "ibp:CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000053 - Disclosure - Revenue Recognition - Schedule of Net Under (Over) Billings (Detail)",
     "menuCat": "Details",
     "order": "53",
     "role": "http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofNetUnderOverBillingsDetail",
     "shortName": "Revenue Recognition - Schedule of Net Under (Over) Billings (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:CostsInExcessOfBillingsAndBillingsInExcessOfCostsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "ibp:CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R54": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000054 - Disclosure - Revenue Recognition - Additional Information (Detail)",
     "menuCat": "Details",
     "order": "54",
     "role": "http://installedbuildingproducts.com/role/RevenueRecognitionAdditionalInformationDetail",
     "shortName": "Revenue Recognition - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R55": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockholdersEquity",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000055 - Disclosure - Credit Losses - Additional Information (Details)",
     "menuCat": "Details",
     "order": "55",
     "role": "http://installedbuildingproducts.com/role/CreditLossesAdditionalInformationDetails",
     "shortName": "Credit Losses - Additional Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "id8d95aa0fd3544948b8bd65b4bc2fce9_I20200101",
      "decimals": "-5",
      "lang": "en-US",
      "name": "us-gaap:DeferredIncomeTaxAssetsNet",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R56": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "id6e5cb30ac31451891723ddbe1f912e6_I20211231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivable",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000056 - Disclosure - Credit Losses - Schedule of Changes in Allowance for Credit Losses (Details)",
     "menuCat": "Details",
     "order": "56",
     "role": "http://installedbuildingproducts.com/role/CreditLossesScheduleofChangesinAllowanceforCreditLossesDetails",
     "shortName": "Credit Losses - Schedule of Changes in Allowance for Credit Losses (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "iff4d4f6f690d4bce8ad0aafed6fdedd3_I20191231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivable",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R57": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:MoneyMarketFundsAtCarryingValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000057 - Disclosure - Cash and Cash Equivalents - Additional Information (Detail)",
     "menuCat": "Details",
     "order": "57",
     "role": "http://installedbuildingproducts.com/role/CashandCashEquivalentsAdditionalInformationDetail",
     "shortName": "Cash and Cash Equivalents - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:MoneyMarketFundsAtCarryingValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R58": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000058 - Disclosure - Property and Equipment - Schedule of Property and Equipment (Details)",
     "menuCat": "Details",
     "order": "58",
     "role": "http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails",
     "shortName": "Property and Equipment - Schedule of Property and Equipment (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R59": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DepreciationAndAmortization",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000059 - Disclosure - Property and Equipment - Schedule of Depreciation and Amortization Expense on Property and Equipment, by Income Statement Category (Details)",
     "menuCat": "Details",
     "order": "59",
     "role": "http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofDepreciationandAmortizationExpenseonPropertyandEquipmentbyIncomeStatementCategoryDetails",
     "shortName": "Property and Equipment - Schedule of Depreciation and Amortization Expense on Property and Equipment, by Income Statement Category (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ibp:PropertyPlantAndEquipmentDepreciationAllocationCategoriesTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i7a6eb5745a4144d2ab6e5aac808bcfc0_D20220101-20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:DepreciationAndAmortization",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R6": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000006 - Statement - CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (Parenthetical)",
     "menuCat": "Statements",
     "order": "6",
     "role": "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEParenthetical",
     "shortName": "CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (Parenthetical)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R60": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfGoodwillTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "id6e5cb30ac31451891723ddbe1f912e6_I20211231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:GoodwillGross",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000060 - Disclosure - Goodwill and Intangibles - Summary of Change in Carrying Amount of Goodwill (Details)",
     "menuCat": "Details",
     "order": "60",
     "role": "http://installedbuildingproducts.com/role/GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails",
     "shortName": "Goodwill and Intangibles - Summary of Change in Carrying Amount of Goodwill (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfGoodwillTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i61f3c1563a76427b8e6b9d432aa44d9a_I20201231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:GoodwillGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R61": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:GoodwillImpairmentLoss",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000061 - Disclosure - Goodwill and Intangibles - Additional Information (Detail)",
     "menuCat": "Details",
     "order": "61",
     "role": "http://installedbuildingproducts.com/role/GoodwillandIntangiblesAdditionalInformationDetail",
     "shortName": "Goodwill and Intangibles - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:GoodwillImpairmentLoss",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R62": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FiniteLivedIntangibleAssetsGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000062 - Disclosure - Goodwill and Intangibles - Schedule of Gross Carrying Amount and Accumulated Amortization (Details)",
     "menuCat": "Details",
     "order": "62",
     "role": "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails",
     "shortName": "Goodwill and Intangibles - Schedule of Gross Carrying Amount and Accumulated Amortization (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FiniteLivedIntangibleAssetsGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R63": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000063 - Disclosure - Goodwill and Intangibles - Schedule of Estimated Aggregate Annual Amortization (Details)",
     "menuCat": "Details",
     "order": "63",
     "role": "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofEstimatedAggregateAnnualAmortizationDetails",
     "shortName": "Goodwill and Intangibles - Schedule of Estimated Aggregate Annual Amortization (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R64": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfDebtTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LongTermDebt",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000064 - Disclosure - Long-term Debt - Schedule of Debt (Detail)",
     "menuCat": "Details",
     "order": "64",
     "role": "http://installedbuildingproducts.com/role/LongtermDebtScheduleofDebtDetail",
     "shortName": "Long-term Debt - Schedule of Debt (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfDebtTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LongTermDebt",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R65": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000065 - Disclosure - Long-Term Debt - Schedule of Maturities of Long Term Debt (Detail)",
     "menuCat": "Details",
     "order": "65",
     "role": "http://installedbuildingproducts.com/role/LongTermDebtScheduleofMaturitiesofLongTermDebtDetail",
     "shortName": "Long-Term Debt - Schedule of Maturities of Long Term Debt (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R66": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ibp:DeferredOfferingCostsPolicyTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "id6e5cb30ac31451891723ddbe1f912e6_I20211231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DeferredFinanceCostsNet",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000066 - Disclosure - Long-term Debt - Additional Information (Detail)",
     "menuCat": "Details",
     "order": "66",
     "role": "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail",
     "shortName": "Long-term Debt - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i5cee4ffe61be49c6ae7aacfc5b5b9775_I20211231",
      "decimals": "-5",
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R67": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ibp:AssetsAndLiabilitiesLesseeTableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeaseRightOfUseAsset",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000067 - Disclosure - Leases - Schedule of Supplemental Balance Sheet In formation Related To Leases (Details)",
     "menuCat": "Details",
     "order": "67",
     "role": "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails",
     "shortName": "Leases - Schedule of Supplemental Balance Sheet In formation Related To Leases (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ibp:AssetsAndLiabilitiesLesseeTableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:FinanceLeaseRightOfUseAsset",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R68": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:LeaseCostTableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeaseCost",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000068 - Disclosure - Leases - Lease Cost Finance and Operating Leases (Details)",
     "menuCat": "Details",
     "order": "68",
     "role": "http://installedbuildingproducts.com/role/LeasesLeaseCostFinanceandOperatingLeasesDetails",
     "shortName": "Leases - Lease Cost Finance and Operating Leases (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:LeaseCostTableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeaseCost",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R69": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeasePayments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000069 - Disclosure - Leases - Schedule of Supplemental Cash Flow Information Related to Leases (Details)",
     "menuCat": "Details",
     "order": "69",
     "role": "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalCashFlowInformationRelatedtoLeasesDetails",
     "shortName": "Leases - Schedule of Supplemental Cash Flow Information Related to Leases (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeasePayments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R7": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "icda2001dc0514113b0f97d8b8892f98e_I20191231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommonStockSharesIssued",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000007 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY",
     "menuCat": "Statements",
     "order": "7",
     "role": "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY",
     "shortName": "CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "icda2001dc0514113b0f97d8b8892f98e_I20191231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommonStockSharesIssued",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R70": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FinanceLeaseLiabilityPaymentsDueNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000070 - Disclosure - Leases - Finance Lease Obligations and Operating Lease Obligations (Detail)",
     "menuCat": "Details",
     "order": "70",
     "role": "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail",
     "shortName": "Leases - Finance Lease Obligations and Operating Lease Obligations (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FinanceLeaseLiabilityPaymentsDueNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R71": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CashAndCashEquivalentsFairValueDisclosure",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000071 - Disclosure - Fair Value Measurements - Schedule of Fair Values of Financial Assets and Liabilities (Detail)",
     "menuCat": "Details",
     "order": "71",
     "role": "http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail",
     "shortName": "Fair Value Measurements - Schedule of Fair Values of Financial Assets and Liabilities (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CashAndCashEquivalentsFairValueDisclosure",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R72": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "id6e5cb30ac31451891723ddbe1f912e6_I20211231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000072 - Disclosure - Fair value measurements - Summary of Change in Fair Value of Contingent Consideration (Detail)",
     "menuCat": "Details",
     "order": "72",
     "role": "http://installedbuildingproducts.com/role/FairvaluemeasurementsSummaryofChangeinFairValueofContingentConsiderationDetail",
     "shortName": "Fair value measurements - Summary of Change in Fair Value of Contingent Consideration (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R73": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:FairValueByBalanceSheetGroupingTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ib72425e5789e464eb55e91e39f29472a_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LongTermDebtFairValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000073 - Disclosure - Fair Value measurements - Summary of Carrying Values and Associated Fair Values of Financial Assets and Liabilities (Detail)",
     "menuCat": "Details",
     "order": "73",
     "role": "http://installedbuildingproducts.com/role/FairValuemeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetail",
     "shortName": "Fair Value measurements - Summary of Carrying Values and Associated Fair Values of Financial Assets and Liabilities (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:FairValueByBalanceSheetGroupingTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ib72425e5789e464eb55e91e39f29472a_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LongTermDebtFairValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R74": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NumberOfOperatingSegments",
      "reportCount": 1,
      "unitRef": "segment",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000074 - Disclosure - Information on Segments (Details)",
     "menuCat": "Details",
     "order": "74",
     "role": "http://installedbuildingproducts.com/role/InformationonSegmentsDetails",
     "shortName": "Information on Segments (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R75": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i0d2108f549d34ce5bfda96eeaa0b81bf_I20221231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DerivativeNotionalAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000075 - Disclosure - Derivative and Hedging Activities - Open Interest Swap Contract Summary (Details)",
     "menuCat": "Details",
     "order": "75",
     "role": "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesOpenInterestSwapContractSummaryDetails",
     "shortName": "Derivative and Hedging Activities - Open Interest Swap Contract Summary (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i0d2108f549d34ce5bfda96eeaa0b81bf_I20221231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DerivativeNotionalAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R76": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "if1142baf02ff4a46880be63e5f3a091c_I20200831",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "ibp:NumberOfSwaps",
      "reportCount": 1,
      "unique": true,
      "unitRef": "swap",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000076 - Disclosure - Derivative and Hedging Activities - Narrative (Details)",
     "menuCat": "Details",
     "order": "76",
     "role": "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesNarrativeDetails",
     "shortName": "Derivative and Hedging Activities - Narrative (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "if1142baf02ff4a46880be63e5f3a091c_I20200831",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "ibp:NumberOfSwaps",
      "reportCount": 1,
      "unique": true,
      "unitRef": "swap",
      "xsiNil": "false"
     }
    },
    "R77": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i22b861620ef3464eb72be526ade264aa_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "ibp:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000077 - Disclosure - Derivative and Hedging Activities - Interest Rate Swap Summary (Details)",
     "menuCat": "Details",
     "order": "77",
     "role": "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesInterestRateSwapSummaryDetails",
     "shortName": "Derivative and Hedging Activities - Interest Rate Swap Summary (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i22b861620ef3464eb72be526ade264aa_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "ibp:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R78": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "id6e5cb30ac31451891723ddbe1f912e6_I20211231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockholdersEquity",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000078 - Disclosure - Stockholders' Equity - Change in AOCI (Details)",
     "menuCat": "Details",
     "order": "78",
     "role": "http://installedbuildingproducts.com/role/StockholdersEquityChangeinAOCIDetails",
     "shortName": "Stockholders' Equity - Change in AOCI (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ib6ac4b7d2a984343a2a2675dcd2e6938_I20191231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:StockholdersEquity",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R79": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:TreasuryStockSharesAcquired",
      "reportCount": 1,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000079 - Disclosure - Stockholders' Equity - Additional Information (Details)",
     "menuCat": "Details",
     "order": "79",
     "role": "http://installedbuildingproducts.com/role/StockholdersEquityAdditionalInformationDetails",
     "shortName": "Stockholders' Equity - Additional Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "2",
      "lang": "en-US",
      "name": "us-gaap:TreasuryStockAcquiredAverageCostPerShare",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usdPerShare",
      "xsiNil": "false"
     }
    },
    "R8": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:DividendsDeclaredTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i4d70c0967219428891e9b6845905a960_D20221103-20221103",
      "decimals": "3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommonStockDividendsPerShareDeclared",
      "reportCount": 1,
      "unitRef": "usdPerShare",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000008 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (Parenthetical)",
     "menuCat": "Statements",
     "order": "8",
     "role": "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYParenthetical",
     "shortName": "CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (Parenthetical)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": null
    },
    "R80": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:DividendsDeclaredTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i4d70c0967219428891e9b6845905a960_D20221103-20221103",
      "decimals": "3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommonStockDividendsPerShareDeclared",
      "reportCount": 1,
      "unitRef": "usdPerShare",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000080 - Disclosure - Stockholders' Equity - Schedule of Dividends Declared (Details)",
     "menuCat": "Details",
     "order": "80",
     "role": "http://installedbuildingproducts.com/role/StockholdersEquityScheduleofDividendsDeclaredDetails",
     "shortName": "Stockholders' Equity - Schedule of Dividends Declared (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:DividendsDeclaredTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i4d70c0967219428891e9b6845905a960_D20221103-20221103",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:DividendsCommonStockCash",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R81": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "ibp:HealthInsuranceExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000081 - Disclosure - Employee Benefits - Additional Information (Detail)",
     "menuCat": "Details",
     "order": "81",
     "role": "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail",
     "shortName": "Employee Benefits - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "ibp:HealthInsuranceExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R82": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ibp:ScheduleOfEmployeeRelatedLiabilitiesTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:WorkersCompensationLiabilityCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000082 - Disclosure - Employee Benefits - Summary of Workers' Compensation Known Claims and IBNR Reserves (Detail)",
     "menuCat": "Details",
     "order": "82",
     "role": "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofWorkersCompensationKnownClaimsandIBNRReservesDetail",
     "shortName": "Employee Benefits - Summary of Workers' Compensation Known Claims and IBNR Reserves (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ibp:ScheduleOfEmployeeRelatedLiabilitiesTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:WorkersCompensationLiabilityCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R83": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InsuranceSettlementsReceivableNoncurrent",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000083 - Disclosure - Employee Benefits - Schedule of Insurance Receivable for Claims (Detail)",
     "menuCat": "Details",
     "order": "83",
     "role": "http://installedbuildingproducts.com/role/EmployeeBenefitsScheduleofInsuranceReceivableforClaimsDetail",
     "shortName": "Employee Benefits - Schedule of Insurance Receivable for Claims (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R84": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfMultiemployerPlansTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:MultiemployerPlanEmployerContributionCost",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000084 - Disclosure - Employee Benefits - Contributions to Multiemployer Pensions and Health and Welfare Benefit Plans (Details)",
     "menuCat": "Details",
     "order": "84",
     "role": "http://installedbuildingproducts.com/role/EmployeeBenefitsContributionstoMultiemployerPensionsandHealthandWelfareBenefitPlansDetails",
     "shortName": "Employee Benefits - Contributions to Multiemployer Pensions and Health and Welfare Benefit Plans (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfMultiemployerPlansTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:MultiemployerPlanEmployerContributionCost",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R85": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
      "reportCount": 1,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000085 - Disclosure - Employee Benefits - Summary of Equity-Based Awards for Employees (Detail)",
     "menuCat": "Details",
     "order": "85",
     "role": "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail",
     "shortName": "Employee Benefits - Summary of Equity-Based Awards for Employees (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i7b1daf5c317949f8b45bc9e3692eccda_D20220101-20221231",
      "decimals": "INF",
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R86": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000086 - Disclosure - Employee Benefits - Summary of Share-Based Compensation Expense Under the 2014 Omnibus Incentive Plan (Details)",
     "menuCat": "Details",
     "order": "86",
     "role": "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails",
     "shortName": "Employee Benefits - Summary of Share-Based Compensation Expense Under the 2014 Omnibus Incentive Plan (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i3f1013f46e884aa88d94776dc7259876_D20220101-20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R87": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000087 - Disclosure - Employee Benefits - Summary of Stock Compensation Expense (Detail)",
     "menuCat": "Details",
     "order": "87",
     "role": "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofStockCompensationExpenseDetail",
     "shortName": "Employee Benefits - Summary of Stock Compensation Expense (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i7a6eb5745a4144d2ab6e5aac808bcfc0_D20220101-20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R88": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000088 - Disclosure - Employee Benefits - Unrecognized Share-Based Compensation Expense Related to Unvested Awards (Details)",
     "menuCat": "Details",
     "order": "88",
     "role": "http://installedbuildingproducts.com/role/EmployeeBenefitsUnrecognizedShareBasedCompensationExpenseRelatedtoUnvestedAwardsDetails",
     "shortName": "Employee Benefits - Unrecognized Share-Based Compensation Expense Related to Unvested Awards (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R89": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CurrentFederalTaxExpenseBenefit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000089 - Disclosure - Income Taxes - Provision for Income Taxes (Detail)",
     "menuCat": "Details",
     "order": "89",
     "role": "http://installedbuildingproducts.com/role/IncomeTaxesProvisionforIncomeTaxesDetail",
     "shortName": "Income Taxes - Provision for Income Taxes (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CurrentFederalTaxExpenseBenefit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R9": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ProfitLoss",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000009 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS",
     "menuCat": "Statements",
     "order": "9",
     "role": "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS",
     "shortName": "CONSOLIDATED STATEMENTS OF CASH FLOWS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ProfitLoss",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R90": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000090 - Disclosure - Income Taxes - Reconciliation of Effective Tax Rate on Net Income (Loss) and Federal Statutory Tax Rate (Detail)",
     "menuCat": "Details",
     "order": "90",
     "role": "http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail",
     "shortName": "Income Taxes - Reconciliation of Effective Tax Rate on Net Income (Loss) and Federal Statutory Tax Rate (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R91": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "ibp:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000091 - Disclosure - Income Taxes - Components of Net Deferred Tax Asset or Liability (Detail)",
     "menuCat": "Details",
     "order": "91",
     "role": "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail",
     "shortName": "Income Taxes - Components of Net Deferred Tax Asset or Liability (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "ibp:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R92": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DeferredTaxAssetsOperatingLossCarryforwards",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000092 - Disclosure - Income Taxes - Additional Information (Detail)",
     "menuCat": "Details",
     "order": "92",
     "role": "http://installedbuildingproducts.com/role/IncomeTaxesAdditionalInformationDetail",
     "shortName": "Income Taxes - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-5",
      "lang": "en-US",
      "name": "ibp:IncomeTaxExpenseBenefitOperatingLossCarryforwards",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R93": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "id6e5cb30ac31451891723ddbe1f912e6_I20211231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:UnrecognizedTaxBenefits",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000093 - Disclosure - Income Taxes - Gross Unrecognized Tax Benefit (Detail)",
     "menuCat": "Details",
     "order": "93",
     "role": "http://installedbuildingproducts.com/role/IncomeTaxesGrossUnrecognizedTaxBenefitDetail",
     "shortName": "Income Taxes - Gross Unrecognized Tax Benefit (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "iff4d4f6f690d4bce8ad0aafed6fdedd3_I20191231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:UnrecognizedTaxBenefits",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R94": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfRelatedPartyTransactionsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ic1c6c2e6226b4b8f9eb0dd8fbad9d4f4_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromRelatedParties",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000094 - Disclosure - Related Party Transactions - Schedule of Related Party Transactions (Detail)",
     "menuCat": "Details",
     "order": "94",
     "role": "http://installedbuildingproducts.com/role/RelatedPartyTransactionsScheduleofRelatedPartyTransactionsDetail",
     "shortName": "Related Party Transactions - Schedule of Related Party Transactions (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfRelatedPartyTransactionsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ic1c6c2e6226b4b8f9eb0dd8fbad9d4f4_D20220101-20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R95": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i058b6ccaa07643c7a3b721296a456c74_I20221231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccountsReceivableRelatedPartiesCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000095 - Disclosure - Related Party Transactions - Additional Information (Detail)",
     "menuCat": "Details",
     "order": "95",
     "role": "http://installedbuildingproducts.com/role/RelatedPartyTransactionsAdditionalInformationDetail",
     "shortName": "Related Party Transactions - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i058b6ccaa07643c7a3b721296a456c74_I20221231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccountsReceivableRelatedPartiesCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R96": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ibp:ScheduleOfAccruedInsuranceReservesTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccruedInsuranceCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000096 - Disclosure - Commitments and Contingencies - Schedule of Accrued General Insurance Reserves (Detail)",
     "menuCat": "Details",
     "order": "96",
     "role": "http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofAccruedGeneralInsuranceReservesDetail",
     "shortName": "Commitments and Contingencies - Schedule of Accrued General Insurance Reserves (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ibp:ScheduleOfAccruedInsuranceReservesTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccruedInsuranceCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R97": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "ia4f683e648134f0da1371b6bd27ef351_I20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InsuranceSettlementsReceivableNoncurrent",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000097 - Disclosure - Commitments and Contingencies - Schedule of Insurance Receivable for Claims (Detail)",
     "menuCat": "Details",
     "order": "97",
     "role": "http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetail",
     "shortName": "Commitments and Contingencies - Schedule of Insurance Receivable for Claims (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ibp:InsuranceReceivableClaimsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i1f0f486b895040c1b1d766df54348319_I20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "ibp:InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R98": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NumberOfBusinessesAcquired",
      "reportCount": 1,
      "unique": true,
      "unitRef": "business",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000098 - Disclosure - Business Combinations - Additional Information (Detail)",
     "menuCat": "Details",
     "order": "98",
     "role": "http://installedbuildingproducts.com/role/BusinessCombinationsAdditionalInformationDetail",
     "shortName": "Business Combinations - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NumberOfBusinessesAcquired",
      "reportCount": 1,
      "unique": true,
      "unitRef": "business",
      "xsiNil": "false"
     }
    },
    "R99": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PaymentsToAcquireBusinessesGross",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000099 - Disclosure - Business Combinations - Summary of Business Acquisitions (Detail)",
     "menuCat": "Details",
     "order": "99",
     "role": "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetail",
     "shortName": "Business Combinations - Summary of Business Acquisitions (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "ibp-20221231.htm",
      "contextRef": "i9b145889e2ea4fada2d0aa5b7f31c758_D20220101-20221231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationConsiderationTransferred1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    }
   },
   "segmentCount": 129,
   "tag": {
    "dei_AmendmentFlag": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.",
        "label": "Amendment Flag",
        "terseLabel": "Amendment Flag"
       }
      }
     },
     "localname": "AmendmentFlag",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_AuditorFirmId": {
     "auth_ref": [
      "r847",
      "r848",
      "r849"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "PCAOB issued Audit Firm Identifier",
        "label": "Auditor Firm ID",
        "terseLabel": "Auditor Firm ID"
       }
      }
     },
     "localname": "AuditorFirmId",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/AuditInformation"
     ],
     "xbrltype": "nonemptySequenceNumberItemType"
    },
    "dei_AuditorLocation": {
     "auth_ref": [
      "r847",
      "r848",
      "r849"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor Location",
        "terseLabel": "Auditor Location"
       }
      }
     },
     "localname": "AuditorLocation",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/AuditInformation"
     ],
     "xbrltype": "internationalNameItemType"
    },
    "dei_AuditorName": {
     "auth_ref": [
      "r847",
      "r848",
      "r849"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor Name",
        "terseLabel": "Auditor Name"
       }
      }
     },
     "localname": "AuditorName",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/AuditInformation"
     ],
     "xbrltype": "internationalNameItemType"
    },
    "dei_CityAreaCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Area code of city",
        "label": "City Area Code",
        "terseLabel": "City Area Code"
       }
      }
     },
     "localname": "CityAreaCode",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_CoverAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cover page.",
        "label": "Cover [Abstract]",
        "terseLabel": "Cover [Abstract]"
       }
      }
     },
     "localname": "CoverAbstract",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "xbrltype": "stringItemType"
    },
    "dei_CurrentFiscalYearEndDate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "End date of current fiscal year in the format --MM-DD.",
        "label": "Current Fiscal Year End Date",
        "terseLabel": "Current Fiscal Year End Date"
       }
      }
     },
     "localname": "CurrentFiscalYearEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "gMonthDayItemType"
    },
    "dei_DocumentAnnualReport": {
     "auth_ref": [
      "r847",
      "r848",
      "r849"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as an annual report.",
        "label": "Document Annual Report",
        "terseLabel": "Document Annual Report"
       }
      }
     },
     "localname": "DocumentAnnualReport",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentFiscalPeriodFocus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fiscal period values are FY, Q1, Q2, and Q3.  1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.",
        "label": "Document Fiscal Period Focus",
        "terseLabel": "Document Fiscal Period Focus"
       }
      }
     },
     "localname": "DocumentFiscalPeriodFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "fiscalPeriodItemType"
    },
    "dei_DocumentFiscalYearFocus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.",
        "label": "Document Fiscal Year Focus",
        "terseLabel": "Document Fiscal Year Focus"
       }
      }
     },
     "localname": "DocumentFiscalYearFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "gYearItemType"
    },
    "dei_DocumentPeriodEndDate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period.  The format of the date is YYYY-MM-DD.",
        "label": "Document Period End Date",
        "terseLabel": "Document Period End Date"
       }
      }
     },
     "localname": "DocumentPeriodEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "dateItemType"
    },
    "dei_DocumentTransitionReport": {
     "auth_ref": [
      "r850"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as a transition report.",
        "label": "Document Transition Report",
        "terseLabel": "Document Transition Report"
       }
      }
     },
     "localname": "DocumentTransitionReport",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentType": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.",
        "label": "Document Type",
        "terseLabel": "Document Type"
       }
      }
     },
     "localname": "DocumentType",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "submissionTypeItemType"
    },
    "dei_DocumentsIncorporatedByReferenceTextBlock": {
     "auth_ref": [
      "r845"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Documents incorporated by reference.",
        "label": "Documents Incorporated by Reference [Text Block]",
        "terseLabel": "Documents Incorporated by Reference"
       }
      }
     },
     "localname": "DocumentsIncorporatedByReferenceTextBlock",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "textBlockItemType"
    },
    "dei_EntityAddressAddressLine1": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Address Line 1 such as Attn, Building Name, Street Name",
        "label": "Entity Address, Address Line One",
        "terseLabel": "Entity Address, Address Line One"
       }
      }
     },
     "localname": "EntityAddressAddressLine1",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressAddressLine2": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Address Line 2 such as Street or Suite number",
        "label": "Entity Address, Address Line Two",
        "terseLabel": "Entity Address, Address Line Two"
       }
      }
     },
     "localname": "EntityAddressAddressLine2",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressCityOrTown": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the City or Town",
        "label": "Entity Address, City or Town",
        "terseLabel": "Entity Address, City or Town"
       }
      }
     },
     "localname": "EntityAddressCityOrTown",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressPostalZipCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Code for the postal or zip code",
        "label": "Entity Address, Postal Zip Code",
        "terseLabel": "Entity Address, Postal Zip Code"
       }
      }
     },
     "localname": "EntityAddressPostalZipCode",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressStateOrProvince": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the state or province.",
        "label": "Entity Address, State or Province",
        "terseLabel": "Entity Address, State or Province"
       }
      }
     },
     "localname": "EntityAddressStateOrProvince",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "stateOrProvinceItemType"
    },
    "dei_EntityCentralIndexKey": {
     "auth_ref": [
      "r844"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.",
        "label": "Entity Central Index Key",
        "terseLabel": "Entity Central Index Key"
       }
      }
     },
     "localname": "EntityCentralIndexKey",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "centralIndexKeyItemType"
    },
    "dei_EntityCommonStockSharesOutstanding": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.",
        "label": "Entity Common Stock, Shares Outstanding",
        "terseLabel": "Entity Common Stock, Shares Outstanding"
       }
      }
     },
     "localname": "EntityCommonStockSharesOutstanding",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "sharesItemType"
    },
    "dei_EntityCurrentReportingStatus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.",
        "label": "Entity Current Reporting Status",
        "terseLabel": "Entity Current Reporting Status"
       }
      }
     },
     "localname": "EntityCurrentReportingStatus",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityEmergingGrowthCompany": {
     "auth_ref": [
      "r844"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate if registrant meets the emerging growth company criteria.",
        "label": "Entity Emerging Growth Company",
        "terseLabel": "Entity Emerging Growth Company"
       }
      }
     },
     "localname": "EntityEmergingGrowthCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityFileNumber": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.",
        "label": "Entity File Number",
        "terseLabel": "Entity File Number"
       }
      }
     },
     "localname": "EntityFileNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "fileNumberItemType"
    },
    "dei_EntityFilerCategory": {
     "auth_ref": [
      "r844"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.",
        "label": "Entity Filer Category",
        "terseLabel": "Entity Filer Category"
       }
      }
     },
     "localname": "EntityFilerCategory",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "filerCategoryItemType"
    },
    "dei_EntityIncorporationStateCountryCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Two-character EDGAR code representing the state or country of incorporation.",
        "label": "Entity Incorporation, State or Country Code",
        "terseLabel": "Entity Incorporation, State or Country Code"
       }
      }
     },
     "localname": "EntityIncorporationStateCountryCode",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "edgarStateCountryItemType"
    },
    "dei_EntityInteractiveDataCurrent": {
     "auth_ref": [
      "r851"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).",
        "label": "Entity Interactive Data Current",
        "terseLabel": "Entity Interactive Data Current"
       }
      }
     },
     "localname": "EntityInteractiveDataCurrent",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityPublicFloat": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant's most recently completed second fiscal quarter.",
        "label": "Entity Public Float",
        "terseLabel": "Entity Public Float"
       }
      }
     },
     "localname": "EntityPublicFloat",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "monetaryItemType"
    },
    "dei_EntityRegistrantName": {
     "auth_ref": [
      "r844"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.",
        "label": "Entity Registrant Name",
        "terseLabel": "Entity Registrant Name"
       }
      }
     },
     "localname": "EntityRegistrantName",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityShellCompany": {
     "auth_ref": [
      "r844"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.",
        "label": "Entity Shell Company",
        "terseLabel": "Entity Shell Company"
       }
      }
     },
     "localname": "EntityShellCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntitySmallBusiness": {
     "auth_ref": [
      "r844"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC).",
        "label": "Entity Small Business",
        "terseLabel": "Entity Small Business"
       }
      }
     },
     "localname": "EntitySmallBusiness",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityTaxIdentificationNumber": {
     "auth_ref": [
      "r844"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.",
        "label": "Entity Tax Identification Number",
        "terseLabel": "Entity Tax Identification Number"
       }
      }
     },
     "localname": "EntityTaxIdentificationNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "employerIdItemType"
    },
    "dei_EntityVoluntaryFilers": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate 'Yes' or 'No' if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act.",
        "label": "Entity Voluntary Filers",
        "terseLabel": "Entity Voluntary Filers"
       }
      }
     },
     "localname": "EntityVoluntaryFilers",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityWellKnownSeasonedIssuer": {
     "auth_ref": [
      "r852"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate 'Yes' or 'No' if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Is used on Form Type: 10-K, 10-Q, 8-K, 20-F, 6-K, 10-K/A, 10-Q/A, 20-F/A, 6-K/A, N-CSR, N-Q, N-1A.",
        "label": "Entity Well-known Seasoned Issuer",
        "terseLabel": "Entity Well-known Seasoned Issuer"
       }
      }
     },
     "localname": "EntityWellKnownSeasonedIssuer",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_IcfrAuditorAttestationFlag": {
     "auth_ref": [
      "r847",
      "r848",
      "r849"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "ICFR Auditor Attestation Flag",
        "terseLabel": "ICFR Auditor Attestation Flag"
       }
      }
     },
     "localname": "IcfrAuditorAttestationFlag",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_LocalPhoneNumber": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Local phone number for entity.",
        "label": "Local Phone Number",
        "terseLabel": "Local Phone Number"
       }
      }
     },
     "localname": "LocalPhoneNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_Security12bTitle": {
     "auth_ref": [
      "r843"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Title of a 12(b) registered security.",
        "label": "Title of 12(b) Security",
        "terseLabel": "Title of 12(b) Security"
       }
      }
     },
     "localname": "Security12bTitle",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "securityTitleItemType"
    },
    "dei_SecurityExchangeName": {
     "auth_ref": [
      "r846"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the Exchange on which a security is registered.",
        "label": "Security Exchange Name",
        "terseLabel": "Security Exchange Name"
       }
      }
     },
     "localname": "SecurityExchangeName",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "edgarExchangeCodeItemType"
    },
    "dei_TradingSymbol": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Trading symbol of an instrument as listed on an exchange.",
        "label": "Trading Symbol",
        "terseLabel": "Trading Symbol"
       }
      }
     },
     "localname": "TradingSymbol",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CoverPage"
     ],
     "xbrltype": "tradingSymbolItemType"
    },
    "ibp_ABSMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "ABS",
        "label": "ABS [Member]",
        "terseLabel": "ABS"
       }
      }
     },
     "localname": "ABSMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetail",
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_AMDMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "AMD",
        "label": "AMD [Member]",
        "terseLabel": "AMD"
       }
      }
     },
     "localname": "AMDMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetail",
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_AblCreditAgreementMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "ABL credit agreement.",
        "label": "ABL Credit Agreement [Member]",
        "terseLabel": "ABL Credit Agreement"
       }
      }
     },
     "localname": "AblCreditAgreementMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_AccountingPoliciesAndGeneralInformationLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accounting Policies and General Information [Line Items]",
        "label": "Accounting Policies and General Information [Line Items]",
        "terseLabel": "Accounting Policies and General Information [Line Items]"
       }
      }
     },
     "localname": "AccountingPoliciesAndGeneralInformationLineItems",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "ibp_AccountingPoliciesAndGeneralInformationTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accounting Policies And General Information [Table]",
        "label": "Accounting Policies And General Information [Table]",
        "terseLabel": "Accounting Policies And General Information [Table]"
       }
      }
     },
     "localname": "AccountingPoliciesAndGeneralInformationTable",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "ibp_AdjustedGrossProfitPercentage": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Adjusted Gross Profit, Percentage",
        "label": "Adjusted Gross Profit, Percentage",
        "terseLabel": "Segment gross profit percentage"
       }
      }
     },
     "localname": "AdjustedGrossProfitPercentage",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "ibp_AggregateCapWorkersCompensationLiability": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate cap carrying value of obligations and payables pertaining to claims incurred of a workers compensation nature.",
        "label": "Aggregate Cap Workers' Compensation Liability",
        "terseLabel": "Aggregate cap of insurance cost of claims"
       }
      }
     },
     "localname": "AggregateCapWorkersCompensationLiability",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "ibp_AssetsAndLiabilitiesLesseeTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of supplemental balance sheet information related to leases.",
        "label": "Assets And Liabilities, Lessee [Table Text Block]",
        "terseLabel": "Schedule of Lease-Related Assets and Liabilities"
       }
      }
     },
     "localname": "AssetsAndLiabilitiesLesseeTableTextBlock",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "ibp_AuditorInformationAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Auditor Information",
        "label": "Auditor Information [Abstract]"
       }
      }
     },
     "localname": "AuditorInformationAbstract",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "xbrltype": "stringItemType"
    },
    "ibp_BillingsInExcessOfCostOnUncompletedContracts": {
     "auth_ref": [],
     "calculation": {
      "http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofNetUnderOverBillingsDetail": {
       "order": 2.0,
       "parentTag": "ibp_CostAndEstimatedEarningsUnderOverBillingsNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Billings In Excess Of Cost On Uncompleted Contracts",
        "label": "Billings In Excess Of Cost On Uncompleted Contracts",
        "negatedLabel": "Billings in excess of costs and estimated earnings on uncompleted contracts (contract liabilities)"
       }
      }
     },
     "localname": "BillingsInExcessOfCostOnUncompletedContracts",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofNetUnderOverBillingsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities": {
     "auth_ref": [],
     "calculation": {
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail": {
       "order": 12.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Business combination recognized identifiable assets acquired and liabilities assumed accounts payable and other current liabilities",
        "label": "Business Combination Recognized Identifiable Assets Acquired And Liabilities Assumed Accounts Payable And Other Current Liabilities",
        "negatedLabel": "Accounts payable and other current liabilities"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable": {
     "auth_ref": [],
     "calculation": {
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail": {
       "order": 13.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Income Tax Payable",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Income Tax Payable",
        "negatedTerseLabel": "Income tax payable"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset": {
     "auth_ref": [],
     "calculation": {
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Business Combination, Recognized Identifiable Assets Acquired And Liabilities Assumed, Operating Lease, Right-Of-Use Asset",
        "label": "Business Combination, Recognized Identifiable Assets Acquired And Liabilities Assumed, Operating Lease, Right-Of-Use Asset",
        "terseLabel": "Operating lease right-of-use asset"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "ibp_CashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cash paid for amounts included in measurement of lease liabilities.",
        "label": "Cash Paid For Amounts Included In Measurement Of Lease Liabilities [Abstract]",
        "verboseLabel": "Cash paid for amounts included in the measurement of lease liabilities:"
       }
      }
     },
     "localname": "CashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesAbstract",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalCashFlowInformationRelatedtoLeasesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "ibp_CentralAluminumMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Central Aluminum",
        "label": "Central Aluminum [Member]",
        "terseLabel": "CAS"
       }
      }
     },
     "localname": "CentralAluminumMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetail",
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_CertainEmployeesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Certain Employees",
        "label": "Certain Employees [Member]",
        "terseLabel": "Certain Employees"
       }
      }
     },
     "localname": "CertainEmployeesMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_CommercialMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Commercial.",
        "label": "Commercial [Member]",
        "terseLabel": "Commercial"
       }
      }
     },
     "localname": "CommercialMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_CommitmentsAndContingenciesDisclosureLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Commitments and contingencies disclosure.",
        "label": "Commitments And Contingencies Disclosure [Line Items]",
        "terseLabel": "Commitments And Contingencies Disclosure [Line Items]"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesDisclosureLineItems",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "ibp_CommitmentsAndContingenciesDisclosureTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Commitments And Contingencies Disclosure [Table]",
        "label": "Commitments And Contingencies Disclosure [Table]",
        "terseLabel": "Commitments And Contingencies Disclosure [Table]"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesDisclosureTable",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "ibp_CommonStockAwardsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Common stock awards.",
        "label": "Common Stock Awards [Member]",
        "terseLabel": "Common Stock Awards"
       }
      }
     },
     "localname": "CommonStockAwardsMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsUnrecognizedShareBasedCompensationExpenseRelatedtoUnvestedAwardsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_CostAndEstimatedEarningsUnderOverBillingsNet": {
     "auth_ref": [],
     "calculation": {
      "http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofNetUnderOverBillingsDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cost and estimated earnings under or over billings net.",
        "label": "Cost and Estimated Earnings Under Over Billings Net",
        "terseLabel": "Net under billings",
        "totalLabel": "Net under billings"
       }
      }
     },
     "localname": "CostAndEstimatedEarningsUnderOverBillingsNet",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofCostandEstimatedEarningsonUncompletedContractsDetail",
      "http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofNetUnderOverBillingsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "ibp_CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts": {
     "auth_ref": [],
     "calculation": {
      "http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofNetUnderOverBillingsDetail": {
       "order": 1.0,
       "parentTag": "ibp_CostAndEstimatedEarningsUnderOverBillingsNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Costs And Estimated Earnings In Excess Of Billing On Uncompleted Contracts",
        "label": "Costs And Estimated Earnings In Excess Of Billing On Uncompleted Contracts",
        "terseLabel": "Costs and estimated earnings in excess of billings on uncompleted contracts (contract assets)"
       }
      }
     },
     "localname": "CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofNetUnderOverBillingsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "ibp_CostsAndEstimatedEarningsOnUncompletedContractsTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Costs And Estimated Earnings On Uncompleted Contracts Table [Text Block]",
        "label": "Costs And Estimated Earnings On Uncompleted Contracts [Table Text Block]",
        "terseLabel": "Schedule of Cost and Estimated Earnings on Uncompleted Contracts"
       }
      }
     },
     "localname": "CostsAndEstimatedEarningsOnUncompletedContractsTableTextBlock",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "ibp_CostsIncurredOnUncompletedContracts": {
     "auth_ref": [],
     "calculation": {
      "http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofCostandEstimatedEarningsonUncompletedContractsDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_ReceivablesLongTermContractsOrPrograms",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Costs incurred on uncompleted contracts.",
        "label": "Costs Incurred on Uncompleted Contracts",
        "terseLabel": "Costs incurred on uncompleted contracts"
       }
      }
     },
     "localname": "CostsIncurredOnUncompletedContracts",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofCostandEstimatedEarningsonUncompletedContractsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "ibp_CurrentLeaseLiabilitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents current lease liabilities abstract.",
        "label": "Current Lease Liabilities [Abstract]",
        "verboseLabel": "Current"
       }
      }
     },
     "localname": "CurrentLeaseLiabilitiesAbstract",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "ibp_CustomerInstallationMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Customer Installation",
        "label": "Customer Installation [Member]",
        "terseLabel": "Net revenue, Installation"
       }
      }
     },
     "localname": "CustomerInstallationMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_DebtInstrumentCovenantMarketCapitalizationThreshold": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt Instrument, Covenant, Market Capitalization Threshold",
        "label": "Debt Instrument, Covenant, Market Capitalization Threshold",
        "terseLabel": "Market capitalization (as percent)"
       }
      }
     },
     "localname": "DebtInstrumentCovenantMarketCapitalizationThreshold",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "ibp_DebtInstrumentMaximumCashProceeds": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt Instrument, Maximum Cash Proceeds",
        "label": "Debt Instrument, Maximum Cash Proceeds",
        "terseLabel": "Maximum cash proceeds"
       }
      }
     },
     "localname": "DebtInstrumentMaximumCashProceeds",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt Instrument, Prepayments, Percentage Of Net Cash Proceeds",
        "label": "Debt Instrument, Prepayments, Percentage Of Net Cash Proceeds",
        "terseLabel": "Percentage of net cash proceeds (as a percent)"
       }
      }
     },
     "localname": "DebtInstrumentPrepaymentsPercentageOfNetCashProceeds",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "ibp_DebtInstrumentPrepaymentsPercentageOfNetCashProceeds2": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt Instrument, Prepayments, Percentage Of Net Cash Proceeds 2",
        "label": "Debt Instrument, Prepayments, Percentage Of Net Cash Proceeds 2",
        "terseLabel": "Percentage of cash proceeds and its restricted subsidiaries (as a percent)"
       }
      }
     },
     "localname": "DebtInstrumentPrepaymentsPercentageOfNetCashProceeds2",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt Instrument, Prepayments, Step Down Percentage Of Net Cash Proceeds",
        "label": "Debt Instrument, Prepayments, Step Down Percentage Of Net Cash Proceeds",
        "terseLabel": "Step down percentage (as a percent)"
       }
      }
     },
     "localname": "DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "ibp_DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds2": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt Instrument, Prepayments, Step Down Percentage Of Net Cash Proceeds 2",
        "label": "Debt Instrument, Prepayments, Step Down Percentage Of Net Cash Proceeds 2",
        "terseLabel": "Step down percentage and its subsidiaries (as a percent)"
       }
      }
     },
     "localname": "DebtInstrumentPrepaymentsStepDownPercentageOfNetCashProceeds2",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "ibp_DebtRelatedFinancingCost": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt Related Financing Cost.",
        "label": "Debt Related Financing Cost",
        "terseLabel": "Costs incurred associated with debt-related financing transactions"
       }
      }
     },
     "localname": "DebtRelatedFinancingCost",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "ibp_DeferredIncomeTaxLiabilitiesNetMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred Income Tax Liabilities, Net",
        "label": "Deferred Income Tax Liabilities, Net [Member]",
        "terseLabel": "Long-term deferred income tax liabilities"
       }
      }
     },
     "localname": "DeferredIncomeTaxLiabilitiesNetMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_DeferredOfferingCostsPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred Offering Costs Policy.",
        "label": "Deferred Offering Costs [Policy Text Block]",
        "terseLabel": "Deferred Financing Costs"
       }
      }
     },
     "localname": "DeferredOfferingCostsPolicyTextBlock",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "ibp_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances": {
     "auth_ref": [],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail": {
       "order": 5.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred tax assets tax deferred expense reserves and accruals allowances.",
        "label": "Deferred Tax Assets Tax Deferred Expense Reserves And Accruals Allowances",
        "terseLabel": "Accrued liabilities and allowances"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowances",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "ibp_DenisonGlassAndMirrorMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Denison Glass and Mirror",
        "label": "Denison Glass and Mirror [Member]",
        "terseLabel": "Denison Glass and Mirror"
       }
      }
     },
     "localname": "DenisonGlassAndMirrorMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_DividendsDeclaredAndPaid1Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Dividends Declared And Paid 1",
        "label": "Dividends Declared And Paid 1 [Member]",
        "terseLabel": "Dividends Declared And Paid 1"
       }
      }
     },
     "localname": "DividendsDeclaredAndPaid1Member",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/StockholdersEquityScheduleofDividendsDeclaredDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_DividendsDeclaredAndPaid2Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Dividends Declared And Paid 2",
        "label": "Dividends Declared And Paid 2 [Member]",
        "terseLabel": "Dividends Declared And Paid 2"
       }
      }
     },
     "localname": "DividendsDeclaredAndPaid2Member",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/StockholdersEquityScheduleofDividendsDeclaredDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_EstimatedEarningsOnLongTermContracts": {
     "auth_ref": [],
     "calculation": {
      "http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofCostandEstimatedEarningsonUncompletedContractsDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_ReceivablesLongTermContractsOrPrograms",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Estimated earnings on long term contracts.",
        "label": "Estimated Earnings On Long Term Contracts",
        "terseLabel": "Estimated earnings"
       }
      }
     },
     "localname": "EstimatedEarningsOnLongTermContracts",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofCostandEstimatedEarningsonUncompletedContractsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityAccretionExpense": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value measurement with unobservable inputs reconciliation recurring basis liability accretion expense.",
        "label": "Fair Value Measurement With Unobservable Inputs Reconciliation Recurring Basis Liability Accretion Expense",
        "terseLabel": "Accretion in value"
       }
      }
     },
     "localname": "FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityAccretionExpense",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairvaluemeasurementsSummaryofChangeinFairValueofContingentConsiderationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnContingentConsideration": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability, Gain (Loss) On Contingent Consideration",
        "label": "Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability, Gain (Loss) On Contingent Consideration",
        "negatedTerseLabel": "Gains on acquisition earnouts"
       }
      }
     },
     "localname": "FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnContingentConsideration",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairvaluemeasurementsSummaryofChangeinFairValueofContingentConsiderationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "ibp_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnEarnoutLiability": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability, Gain (Loss) On Earnout Liability",
        "label": "Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability, Gain (Loss) On Earnout Liability",
        "terseLabel": "Earnout not being paid"
       }
      }
     },
     "localname": "FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossOnEarnoutLiability",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairvaluemeasurementsSummaryofChangeinFairValueofContingentConsiderationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "ibp_FinanceLeaseExecutoryCosts": {
     "auth_ref": [],
     "calculation": {
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail_1": {
       "order": 2.0,
       "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents executory costs of finance leases.",
        "label": "Finance Lease Executory Costs",
        "negatedTerseLabel": "Less: Amounts representing executory costs"
       }
      }
     },
     "localname": "FinanceLeaseExecutoryCosts",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "ibp_FinanceLeaseMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Finance Lease",
        "label": "Finance Lease [Member]",
        "terseLabel": "Finance Lease"
       }
      }
     },
     "localname": "FinanceLeaseMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesLeaseCostFinanceandOperatingLeasesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_FinanceLeaseObligationsIncurred": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase during the period in finance lease obligations due to entering into new capital leases.",
        "label": "Finance Lease Obligations Incurred",
        "terseLabel": "Property and equipment obtained in exchange for finance lease obligations"
       }
      }
     },
     "localname": "FinanceLeaseObligationsIncurred",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "ibp_FireproofingAndFirestoppingMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fireproofing And Firestopping",
        "label": "Fireproofing And Firestopping [Member]",
        "terseLabel": "Fireproofing/firestopping"
       }
      }
     },
     "localname": "FireproofingAndFirestoppingMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Five Point Seven Five Percentage Senior Notes Due Two Thousand Twenty Eight Member.",
        "label": "Five Point Seven Five Percentage Senior Notes Due Two Thousand Twenty Eight [Member]",
        "verboseLabel": "5.75% Senior Notes Due 2028"
       }
      }
     },
     "localname": "FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairValuemeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetail",
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/LongtermDebtScheduleofDebtDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_FiveStarMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Five Star",
        "label": "Five Star [Member]",
        "terseLabel": "Five Star"
       }
      }
     },
     "localname": "FiveStarMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetail",
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_FixedChargeCoverageRatio": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fixed charge coverage ratio.",
        "label": "Fixed charge coverage ratio",
        "terseLabel": "Fixed charge coverage ratio"
       }
      }
     },
     "localname": "FixedChargeCoverageRatio",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "pureItemType"
    },
    "ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Future Minimum Payments Under Non Cancelable Operating Leases With Initial Or Remaining Lease Terms In Excess Of One Year And Future Minimum Capital Lease Payments [Line Items]",
        "label": "Future Minimum Payments Under Non Cancelable Operating Leases With Initial Or Remaining Lease Terms In Excess Of One Year And Future Minimum Capital Lease Payments [Line Items]",
        "terseLabel": "Future Minimum Payments Under Non Cancelable Operating Leases With Initial Or Remaining Lease Terms In Excess Of One Year And Future Minimum Capital Lease Payments [Line Items]"
       }
      }
     },
     "localname": "FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsLineItems",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "ibp_FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Future Minimum Payments Under Non Cancelable Operating Leases with initial or remaining lease terms in excess of one year and future minimum capital lease payments [Table]",
        "label": "Future Minimum Payments Under Non Cancelable Operating Leases with initial or remaining lease terms in excess of one year and future minimum capital lease payments [Table]",
        "terseLabel": "Future Minimum Payments Under Non Cancelable Operating Leases with initial or remaining lease terms in excess of one year and future minimum capital lease payments [Table]"
       }
      }
     },
     "localname": "FutureMinimumPaymentsUnderNonCancelableOperatingLeasesWithInitialOrRemainingLeaseTermsInExcessOfOneYearAndFutureMinimumCapitalLeasePaymentsTable",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "ibp_GarageDoorsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Garage doors.",
        "label": "Garage Doors [Member]",
        "terseLabel": "Garage doors"
       }
      }
     },
     "localname": "GarageDoorsMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_GeneralLiabilityInsuranceProgramMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "General liability insurance program.",
        "label": "General Liability Insurance Program [Member]",
        "terseLabel": "General Liability Insurance Program"
       }
      }
     },
     "localname": "GeneralLiabilityInsuranceProgramMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion": {
     "auth_ref": [],
     "calculation": {
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gross Profit, Excluding Depreciation, Amortization And Depletion",
        "label": "Gross Profit, Excluding Depreciation, Amortization And Depletion",
        "totalLabel": "Segment gross profit"
       }
      }
     },
     "localname": "GrossProfitExcludingDepreciationAmortizationAndDepletion",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "ibp_HealthInsuranceExpense": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Health insurance expense.",
        "label": "Health Insurance Expense",
        "terseLabel": "Healthcare benefit expense, net of employee contributions"
       }
      }
     },
     "localname": "HealthInsuranceExpense",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "ibp_IWMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "I.W.",
        "label": "I.W. [Member]",
        "terseLabel": "IWI"
       }
      }
     },
     "localname": "IWMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetail",
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_IncomeTaxExpenseBenefitOperatingLossCarryforwards": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Income tax expense benefit operating loss carryforwards.",
        "label": "Income Tax Expense Benefit Operating Loss Carryforwards",
        "terseLabel": "Benefit of net operating loss carryforwards"
       }
      }
     },
     "localname": "IncomeTaxExpenseBenefitOperatingLossCarryforwards",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "ibp_IncomeTaxLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Income Tax [Line Items]",
        "label": "Income Tax [Line Items]",
        "terseLabel": "Income Tax [Line Items]"
       }
      }
     },
     "localname": "IncomeTaxLineItems",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "ibp_IncomeTaxTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Income Tax [Table]",
        "label": "Income Tax [Table]",
        "terseLabel": "Income Tax [Table]"
       }
      }
     },
     "localname": "IncomeTaxTable",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "ibp_IncomeTaxesLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Income Taxes [Line Items]",
        "label": "Income Taxes [Line Items]",
        "terseLabel": "Income Taxes [Line Items]"
       }
      }
     },
     "localname": "IncomeTaxesLineItems",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "ibp_IncrementalRevolvingCreditFacilityMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Incremental Revolving Credit Facility Member.",
        "label": "Incremental Revolving Credit Facility [Member]",
        "terseLabel": "Incremental Revolving Credit Facility"
       }
      }
     },
     "localname": "IncrementalRevolvingCreditFacilityMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_InstallationSegmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Installation Segment",
        "label": "Installation Segment [Member]",
        "terseLabel": "Installation"
       }
      }
     },
     "localname": "InstallationSegmentMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails",
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_InsulationMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Insulation.",
        "label": "Insulation [Member]",
        "terseLabel": "Insulation"
       }
      }
     },
     "localname": "InsulationMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy": {
     "auth_ref": [],
     "calculation": {
      "http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_InsuranceSettlementsReceivableNoncurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Insurance receivable and indemnification asset for claims under fully insured policy.",
        "label": "Insurance Receivable And Indemnification Asset For Claims Under Fully Insured Policy",
        "terseLabel": "Insurance receivables and indemnification assets for claims under fully insured policies"
       }
      }
     },
     "localname": "InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "ibp_InsuranceReceivableClaimsTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Summary of amount of insurance receivables, booked to offset an equal general insurance liability. The probability of receiving the amount booked as a receivable is high upon the event of owing any amounts associated with the liability.",
        "label": "Insurance Receivable Claims [Table Text Block]",
        "terseLabel": "Schedule of Insurance Receivable for Claims"
       }
      }
     },
     "localname": "InsuranceReceivableClaimsTableTextBlock",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/CommitmentsandContingenciesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "ibp_InsuranceReceivableForClaimsExceedingStopLossLimit": {
     "auth_ref": [],
     "calculation": {
      "http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_InsuranceSettlementsReceivableNoncurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Insurance receivable for claims exceeding stop loss limit.",
        "label": "Insurance Receivable For Claims Exceeding Stop Loss Limit",
        "terseLabel": "Insurance receivables for claims that exceeded the stop loss limit"
       }
      }
     },
     "localname": "InsuranceReceivableForClaimsExceedingStopLossLimit",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "ibp_IntangibleAssetsExcludingCustomerRelationshipsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Intangible Assets Excluding Customer Relationships",
        "label": "Intangible Assets Excluding Customer Relationships [Member]",
        "terseLabel": "Other intangibles, net"
       }
      }
     },
     "localname": "IntangibleAssetsExcludingCustomerRelationshipsMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_InterestRateSwapFiveEffectiveDecember312025Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Interest Rate Swap Five, Effective December 31, 2025",
        "label": "Interest Rate Swap Five, Effective December 31, 2025 [Member]",
        "terseLabel": "Interest Rate Swap Five, Effective December 31, 2025"
       }
      }
     },
     "localname": "InterestRateSwapFiveEffectiveDecember312025Member",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesOpenInterestSwapContractSummaryDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_InterestRateSwapFourEffectiveDecember312025Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Interest Rate Swap Four, Effective December 31, 2025",
        "label": "Interest Rate Swap Four, Effective December 31, 2025 [Member]",
        "terseLabel": "Interest Rate Swap Four, Effective December 31, 2025"
       }
      }
     },
     "localname": "InterestRateSwapFourEffectiveDecember312025Member",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesOpenInterestSwapContractSummaryDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_InterestRateSwapOneEffectiveJuly202021Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Interest Rate Swap One, Effective July 20, 2021",
        "label": "Interest Rate Swap One, Effective July 20, 2021 [Member]",
        "verboseLabel": "Interest Rate Swap One, Effective July 20, 2021"
       }
      }
     },
     "localname": "InterestRateSwapOneEffectiveJuly202021Member",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesOpenInterestSwapContractSummaryDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_InterestRateSwapThreeEffectiveDecember312021Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Interest Rate Swap Three, Effective December 31, 2021",
        "label": "Interest Rate Swap Three, Effective December 31, 2021 [Member]",
        "terseLabel": "Interest Rate Swap Three, Effective December 31, 2021"
       }
      }
     },
     "localname": "InterestRateSwapThreeEffectiveDecember312021Member",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesOpenInterestSwapContractSummaryDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_InterestRateSwapTwoEffectiveDecember312021Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Interest Rate Swap Two, Effective December 31, 2021",
        "label": "Interest Rate Swap Two, Effective December 31, 2021 [Member]",
        "terseLabel": "Interest Rate Swap Two, Effective December 31, 2021"
       }
      }
     },
     "localname": "InterestRateSwapTwoEffectiveDecember312021Member",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesOpenInterestSwapContractSummaryDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_LeaseAssets": {
     "auth_ref": [],
     "calculation": {
      "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents aggregate of operating and finance lease assets.",
        "label": "Lease Assets",
        "totalLabel": "Total lease assets"
       }
      }
     },
     "localname": "LeaseAssets",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "ibp_LeaseAssetsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents lease assets abstract.",
        "label": "Lease Assets [Abstract]",
        "verboseLabel": "Assets"
       }
      }
     },
     "localname": "LeaseAssetsAbstract",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "ibp_LeaseLiabilities": {
     "auth_ref": [],
     "calculation": {
      "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents total lease liabilities.",
        "label": "Lease Liabilities",
        "totalLabel": "Total lease liabilities"
       }
      }
     },
     "localname": "LeaseLiabilities",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "ibp_LeaseLiabilitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents lease liabilities abstract.",
        "label": "Lease Liabilities [Abstract]",
        "verboseLabel": "Liabilities"
       }
      }
     },
     "localname": "LeaseLiabilitiesAbstract",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "ibp_LiabilityPerformanceBasedStockAwardsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Liability Performance-based Stock Awards",
        "label": "Liability Performance-based Stock Awards [Member]",
        "terseLabel": "Liability Performance-Based Stock Awards"
       }
      }
     },
     "localname": "LiabilityPerformanceBasedStockAwardsMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_LineOfCreditFacilityAccordionFeatureIncreaseLimit": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line Of Credit Facility, Accordion Feature, Increase Limit",
        "label": "Line Of Credit Facility, Accordion Feature, Increase Limit",
        "terseLabel": "Line Of Credit Facility, Accordion Feature, Increase Limit"
       }
      }
     },
     "localname": "LineOfCreditFacilityAccordionFeatureIncreaseLimit",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "ibp_MasterLoanAgreementMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Master Loan Agreement [Member]",
        "label": "Master Loan Agreement [Member]",
        "terseLabel": "Master Loan Agreements"
       }
      }
     },
     "localname": "MasterLoanAgreementMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_NonCurrentLeaseAssetsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents Operating and fianance lease right of use assets abstract.",
        "label": "Non Current Lease Assets [Abstract]",
        "verboseLabel": "Non-Current"
       }
      }
     },
     "localname": "NonCurrentLeaseAssetsAbstract",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "ibp_NoncashActivitiesReleaseOfIndemnificationOfAcquisitionRelatedDebt": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Noncash Activities, Release Of Indemnification Of Acquisition Related Debt",
        "label": "Noncash Activities, Release Of Indemnification Of Acquisition Related Debt",
        "terseLabel": "Release of indemnification of acquisition-related debt"
       }
      }
     },
     "localname": "NoncashActivitiesReleaseOfIndemnificationOfAcquisitionRelatedDebt",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "ibp_NoncurrentLeaseLiabilitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents non-current lease liabilities abstract.",
        "label": "NonCurrent Lease Liabilities [Abstract]",
        "terseLabel": "Non-Current"
       }
      }
     },
     "localname": "NoncurrentLeaseLiabilitiesAbstract",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "ibp_NorkoteMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Norkote",
        "label": "Norkote [Member]",
        "terseLabel": "ICON"
       }
      }
     },
     "localname": "NorkoteMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetail",
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_NumberOfLocationsInOperation": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number Of Locations In Operation",
        "label": "Number Of Locations In Operation",
        "terseLabel": "Number of locations the company operates"
       }
      }
     },
     "localname": "NumberOfLocationsInOperation",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/OrganizationAdditionalInformationDetail"
     ],
     "xbrltype": "integerItemType"
    },
    "ibp_NumberOfSwaps": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of swaps.",
        "label": "Number Of Swaps",
        "terseLabel": "Number of swaps"
       }
      }
     },
     "localname": "NumberOfSwaps",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesNarrativeDetails"
     ],
     "xbrltype": "integerItemType"
    },
    "ibp_OperatingLeaseMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Operating Lease",
        "label": "Operating Lease [Member]",
        "terseLabel": "Operating Lease"
       }
      }
     },
     "localname": "OperatingLeaseMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesLeaseCostFinanceandOperatingLeasesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_OtherAcquisitionMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Other Acquisition [Member]",
        "label": "Other Acquisition [Member]",
        "terseLabel": "Other",
        "verboseLabel": "Other"
       }
      }
     },
     "localname": "OtherAcquisitionMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetail",
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_OtherBuildingProductsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Other building products.",
        "label": "Other Building Products [Member]",
        "terseLabel": "Other building products"
       }
      }
     },
     "localname": "OtherBuildingProductsMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Other Comprehensive Income (Loss), Cash Flow Hedge, Reclassification For Settlement, Before Tax",
        "label": "Other Comprehensive Income (Loss), Cash Flow Hedge, Reclassification For Settlement, Before Tax",
        "terseLabel": "(Benefit) expense associated with swap net settlements"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesInterestRateSwapSummaryDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "ibp_OtherCustomerInstallationMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Other Customer Installation",
        "label": "Other Customer Installation [Member]",
        "terseLabel": "Other"
       }
      }
     },
     "localname": "OtherCustomerInstallationMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_OtherLiabilitiesPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Other Liabilities Policy.",
        "label": "Other Liabilities [Policy Text Block]",
        "terseLabel": "Other Liabilities"
       }
      }
     },
     "localname": "OtherLiabilitiesPolicyTextBlock",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "ibp_OtherPartyOperatingLeasesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Party Operating Leases [Member]",
        "terseLabel": "Other"
       }
      }
     },
     "localname": "OtherPartyOperatingLeasesMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_OtherProductInstallationMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Other Product Installation",
        "label": "Other Product Installation [Member]",
        "terseLabel": "Other"
       }
      }
     },
     "localname": "OtherProductInstallationMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_OtherSegmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Other Segment",
        "label": "Other Segment [Member]",
        "terseLabel": "Other"
       }
      }
     },
     "localname": "OtherSegmentMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Pension plans, postretirement and other employee benefits.",
        "label": "Pension Plans, Postretirement and Other Employee Benefits [Line Items]",
        "terseLabel": "Pension Plans, Postretirement and Other Employee Benefits [Line Items]"
       }
      }
     },
     "localname": "PensionPlansPostretirementAndOtherEmployeeBenefitsLineItems",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "ibp_PensionPlansPostretirementAndOtherEmployeeBenefitsTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Pension Plans Postretirement And Other Employee Benefits [Table]",
        "label": "Pension Plans Postretirement And Other Employee Benefits [Table]",
        "terseLabel": "Pension Plans Postretirement And Other Employee Benefits [Table]"
       }
      }
     },
     "localname": "PensionPlansPostretirementAndOtherEmployeeBenefitsTable",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "ibp_PerformanceBasedAwardsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Performance based awards.",
        "label": "Performance Based Awards [Member]",
        "terseLabel": "Performance-Based Stock Awards"
       }
      }
     },
     "localname": "PerformanceBasedAwardsMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsUnrecognizedShareBasedCompensationExpenseRelatedtoUnvestedAwardsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_PerformanceBasedRestrictedStockUnitsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Performance Based Restricted Stock Units [Member]",
        "terseLabel": "Performance-Based Restricted Stock Units",
        "verboseLabel": "Performance Based Restricted Stock Units"
       }
      }
     },
     "localname": "PerformanceBasedRestrictedStockUnitsMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsUnrecognizedShareBasedCompensationExpenseRelatedtoUnvestedAwardsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_PerformanceBasedStockUnitsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Performance Based Stock Units [Member].",
        "label": "Performance Based Stock Units [Member]",
        "terseLabel": "Performance-Based Restricted Stock Units"
       }
      }
     },
     "localname": "PerformanceBasedStockUnitsMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_ProceedsFromTerminationOfDerivativeInstruments": {
     "auth_ref": [],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 19.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Proceeds from Termination of Derivative Instruments",
        "label": "Proceeds from Termination of Derivative Instruments",
        "terseLabel": "Proceeds from termination of interest rate swap agreements"
       }
      }
     },
     "localname": "ProceedsFromTerminationOfDerivativeInstruments",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS",
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "ibp_ProductInstallationMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Product Installation",
        "label": "Product Installation [Member]",
        "terseLabel": "Net revenues, Installation"
       }
      }
     },
     "localname": "ProductInstallationMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_PropertyPlantAndEquipmentDepreciationAllocationCategoriesTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Property plant and equipment depreciation allocation categories.",
        "label": "Property Plant and Equipment Depreciation Allocation Categories [Table Text Block]",
        "terseLabel": "Schedule of Depreciation and Amortization Expense on Property and Equipment, by Income Statement Category"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentDepreciationAllocationCategoriesTableTextBlock",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/PropertyandEquipmentTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "ibp_RainGuttersMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Rain gutters.",
        "label": "Rain Gutters [Member]",
        "terseLabel": "Rain gutters"
       }
      }
     },
     "localname": "RainGuttersMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_RelatedPartyOperatingLeasesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Related Party Operating Leases [Member]",
        "terseLabel": "Related\u00a0Party"
       }
      }
     },
     "localname": "RelatedPartyOperatingLeasesMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_RepairAndRemodelMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Repair and remodel.",
        "label": "Repair and Remodel[Member]",
        "terseLabel": "Repair and remodel"
       }
      }
     },
     "localname": "RepairAndRemodelMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_ResidentialNewConstructionMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Residential new construction.",
        "label": "Residential New Construction [Member]",
        "terseLabel": "Residential new construction"
       }
      }
     },
     "localname": "ResidentialNewConstructionMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_RevenueFromContractWithCustomerPaymentTerms": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Revenue From Contract With Customer, Payment Terms",
        "label": "Revenue From Contract With Customer, Payment Terms",
        "terseLabel": "Payment terms (in days)"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerPaymentTerms",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "ibp_ScheduleOfAccruedInsuranceReservesTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of accrued insurance reserves.",
        "label": "Schedule Of Accrued Insurance Reserves [Table Text Block]",
        "terseLabel": "Schedule of Accrued General Insurance Reserves"
       }
      }
     },
     "localname": "ScheduleOfAccruedInsuranceReservesTableTextBlock",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/CommitmentsandContingenciesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "ibp_ScheduleOfEmployeeRelatedLiabilitiesTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of employee related liabilities.",
        "label": "Schedule Of Employee Related Liabilities [Table Text Block]",
        "terseLabel": "Summary of Workers' Compensation Known Claims and IBNR Reserves"
       }
      }
     },
     "localname": "ScheduleOfEmployeeRelatedLiabilitiesTableTextBlock",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "ibp_ScheduleOfInsuranceLossReservesForInsuredObligationsTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of insurance loss reserves for insured obligations.",
        "label": "Schedule Of Insurance Loss Reserves For Insured Obligations [Table Text Block]",
        "terseLabel": "Schedule of Insurance Receivable for Claims"
       }
      }
     },
     "localname": "ScheduleOfInsuranceLossReservesForInsuredObligationsTableTextBlock",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness": {
     "auth_ref": [],
     "calculation": {
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_BusinessCombinationConsiderationTransferred1",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "It represents the non cash amount of seller obligations in connection with acquisition of business.",
        "label": "Seller Obligations In Connection With Acquisition Of Business",
        "terseLabel": "Less seller obligations",
        "verboseLabel": "Seller Obligations"
       }
      }
     },
     "localname": "SellerObligationsInConnectionWithAcquisitionOfBusiness",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetail",
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "ibp_SeniorSecuredCreditAgreementMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Senior Secured Credit Agreement [Member]",
        "label": "Senior Secured Credit Agreement [Member]",
        "terseLabel": "Senior Secured Credit Agreement"
       }
      }
     },
     "localname": "SeniorSecuredCreditAgreementMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfEqualInstallmentsForVestingOfStockAwards": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of equal installments for vesting restricted stock.",
        "label": "Share Based Compensation Arrangement By Share Based Payment Award Number Of Equal Installments For Vesting Of Stock Awards",
        "terseLabel": "Number of equal installments"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfEqualInstallmentsForVestingOfStockAwards",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail"
     ],
     "xbrltype": "decimalItemType"
    },
    "ibp_ShowerDoorsShelvingAndMirrorsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Shower doors shelving and mirrors.",
        "label": "Shower Doors Shelving And Mirrors [Member]",
        "terseLabel": "Shower doors, shelving and mirrors"
       }
      }
     },
     "localname": "ShowerDoorsShelvingAndMirrorsMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_SurrenderOfCommonStockAwardsByEmployees": {
     "auth_ref": [],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Surrender of common stock awards by employees.",
        "label": "Surrender Of Common Stock Awards By Employees",
        "negatedLabel": "Surrender of common stock awards by employees"
       }
      }
     },
     "localname": "SurrenderOfCommonStockAwardsByEmployees",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "ibp_SwapOffMarketTermsCapitalized": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Swap Off-Market Terms Capitalized",
        "label": "Swap Off-Market Terms Capitalized",
        "terseLabel": "Capitalized off-market terms"
       }
      }
     },
     "localname": "SwapOffMarketTermsCapitalized",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "ibp_SwingLineLoansMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Swing Line Loans.",
        "label": "Swing Line Loans [Member]",
        "terseLabel": "Swing Line Loans"
       }
      }
     },
     "localname": "SwingLineLoansMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_TermLoanAgreementMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Term loan agreement.",
        "label": "Term Loan Agreement [Member]",
        "terseLabel": "Term Loan Agreement"
       }
      }
     },
     "localname": "TermLoanAgreementMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtScheduleofDebtDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_TermLoanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Term loan.",
        "label": "Term Loan [Member]",
        "terseLabel": "Term Loan"
       }
      }
     },
     "localname": "TermLoanMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_TwoThousandAndFourteenOmnibusIncentivePlanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Two thousand and fourteen omnibus incentive plan.",
        "label": "Two Thousand And Fourteen Omnibus Incentive Plan [Member]",
        "terseLabel": "2014 Omnibus Incentive Plan"
       }
      }
     },
     "localname": "TwoThousandAndFourteenOmnibusIncentivePlanMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_TwoThousandTwentyAcquisitionsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "TwoThousandTwentyAcquisitions",
        "label": "TwoThousandTwentyAcquisitions [Member]",
        "terseLabel": "2020 Acquisitions"
       }
      }
     },
     "localname": "TwoThousandTwentyAcquisitionsMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_TwoThousandTwentyOneAcquisitionsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "TwoThousandTwentyOneAcquisitions",
        "label": "TwoThousandTwentyOneAcquisitions [Member]",
        "terseLabel": "2021 Acquisitions"
       }
      }
     },
     "localname": "TwoThousandTwentyOneAcquisitionsMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_TwoThousandTwentyTwoAcquisitionsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "TwoThousandTwentyTwoAcquisitions [Member]",
        "terseLabel": "2022 Acquisitions"
       }
      }
     },
     "localname": "TwoThousandTwentyTwoAcquisitionsMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_UnrecognizedTaxBenefitsIncreaseResultingFromLapseOfApplicableStatuteOfLimitations": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Unrecognized Tax Benefits, Increase Resulting From Lapse Of Applicable Statute Of Limitations",
        "label": "Unrecognized Tax Benefits, Increase Resulting From Lapse Of Applicable Statute Of Limitations",
        "terseLabel": "Increase as a result of expiring statutes"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsIncreaseResultingFromLapseOfApplicableStatuteOfLimitations",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesGrossUnrecognizedTaxBenefitDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "ibp_UnrecognizedTaxBenefitsNetOfIncomeTaxPenaltiesAndInterestExpense": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Unrecognized tax benefits net of income tax penalties and interest expense.",
        "label": "Unrecognized Tax Benefits Net Of Income Tax Penalties And Interest Expense",
        "terseLabel": "Decrease in unrecognized tax benefits, net of penalties and interest"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsNetOfIncomeTaxPenaltiesAndInterestExpense",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "ibp_VehicleAndEquipmentNotesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Vehicle and equipment notes.",
        "label": "Vehicle And Equipment Notes [Member]",
        "terseLabel": "Vehicle and Equipment"
       }
      }
     },
     "localname": "VehicleAndEquipmentNotesMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/LongtermDebtScheduleofDebtDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_VehiclesAndEquipmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Vehicles And Equipment [Member]",
        "label": "Vehicles And Equipment [Member]",
        "terseLabel": "Vehicles and equipment"
       }
      }
     },
     "localname": "VehiclesAndEquipmentMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_VehiclesInsuranceMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Vehicles insurance.",
        "label": "Vehicles Insurance [Member]",
        "terseLabel": "Vehicles Insurance"
       }
      }
     },
     "localname": "VehiclesInsuranceMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_WaterproofingMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Waterproofing.",
        "label": "Waterproofing [Member]",
        "terseLabel": "Waterproofing"
       }
      }
     },
     "localname": "WaterproofingMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_WeightedAverageDiscountRateOfOperatingFinanceLeasesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents weighted average discount rate of operating finance leases abstract.",
        "label": "Weighted Average Discount rate Of Operating Finance Leases [Abstract]",
        "verboseLabel": "Weighted-average discount rate"
       }
      }
     },
     "localname": "WeightedAverageDiscountRateOfOperatingFinanceLeasesAbstract",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "ibp_WeightedAverageRemainingLeaseTermOfOperatingFinanceLeasesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents weighted average remaining lease term of operating finance leases abstract.",
        "label": "Weighted Average Remaining Lease Term Of Operating Finance Leases [Abstract]",
        "verboseLabel": "Weighted-average remaining lease term"
       }
      }
     },
     "localname": "WeightedAverageRemainingLeaseTermOfOperatingFinanceLeasesAbstract",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "ibp_WindowBlindsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Window Blinds",
        "label": "Window Blinds [Member]",
        "terseLabel": "Window blinds"
       }
      }
     },
     "localname": "WindowBlindsMember",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "ibp_WorkersCompensationExpense": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "All expenses associated with Worker's Compensation Insurance benefits incurred during the period.",
        "label": "Workers Compensation Expense",
        "terseLabel": "Workers' compensation expense"
       }
      }
     },
     "localname": "WorkersCompensationExpense",
     "nsuri": "http://installedbuildingproducts.com/20221231",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "srt_AffiliatedEntityMember": {
     "auth_ref": [
      "r791",
      "r923",
      "r970",
      "r971",
      "r973"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Affiliated Entity [Member]",
        "terseLabel": "Affiliated Entity"
       }
      }
     },
     "localname": "AffiliatedEntityMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RelatedPartyTransactionsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/RelatedPartyTransactionsScheduleofRelatedPartyTransactionsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ConsolidationItemsAxis": {
     "auth_ref": [
      "r276",
      "r322",
      "r334",
      "r335",
      "r336",
      "r337",
      "r338",
      "r340",
      "r344",
      "r405",
      "r406",
      "r407",
      "r408",
      "r410",
      "r411",
      "r413",
      "r415",
      "r416",
      "r915",
      "r916"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Consolidation Items [Axis]",
        "terseLabel": "Consolidation Items [Axis]"
       }
      }
     },
     "localname": "ConsolidationItemsAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ConsolidationItemsDomain": {
     "auth_ref": [
      "r276",
      "r322",
      "r334",
      "r335",
      "r336",
      "r337",
      "r338",
      "r340",
      "r344",
      "r405",
      "r406",
      "r407",
      "r408",
      "r410",
      "r411",
      "r413",
      "r415",
      "r416",
      "r915",
      "r916"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Consolidation Items [Domain]",
        "terseLabel": "Consolidation Items [Domain]"
       }
      }
     },
     "localname": "ConsolidationItemsDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember": {
     "auth_ref": [
      "r225",
      "r280",
      "r288",
      "r295",
      "r362",
      "r585",
      "r586",
      "r587",
      "r617",
      "r618",
      "r659",
      "r662",
      "r664",
      "r665",
      "r723"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cumulative Effect, Period of Adoption, Adjustment [Member]",
        "terseLabel": "Cumulative Effect, Period of Adoption, Adjustment"
       }
      }
     },
     "localname": "CumulativeEffectPeriodOfAdoptionAdjustmentMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY",
      "http://installedbuildingproducts.com/role/CreditLossesAdditionalInformationDetails",
      "http://installedbuildingproducts.com/role/CreditLossesScheduleofChangesinAllowanceforCreditLossesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_CumulativeEffectPeriodOfAdoptionAxis": {
     "auth_ref": [
      "r225",
      "r280",
      "r288",
      "r295",
      "r362",
      "r585",
      "r586",
      "r587",
      "r617",
      "r618",
      "r659",
      "r662",
      "r664",
      "r665",
      "r723"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cumulative Effect, Period of Adoption [Axis]",
        "terseLabel": "Cumulative Effect, Period of Adoption [Axis]"
       }
      }
     },
     "localname": "CumulativeEffectPeriodOfAdoptionAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY",
      "http://installedbuildingproducts.com/role/CreditLossesAdditionalInformationDetails",
      "http://installedbuildingproducts.com/role/CreditLossesScheduleofChangesinAllowanceforCreditLossesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_CumulativeEffectPeriodOfAdoptionDomain": {
     "auth_ref": [
      "r225",
      "r280",
      "r288",
      "r295",
      "r362",
      "r585",
      "r586",
      "r587",
      "r617",
      "r618",
      "r659",
      "r662",
      "r664",
      "r665",
      "r723"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cumulative Effect, Period of Adoption [Domain]",
        "terseLabel": "Cumulative Effect, Period of Adoption [Domain]"
       }
      }
     },
     "localname": "CumulativeEffectPeriodOfAdoptionDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY",
      "http://installedbuildingproducts.com/role/CreditLossesAdditionalInformationDetails",
      "http://installedbuildingproducts.com/role/CreditLossesScheduleofChangesinAllowanceforCreditLossesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_DirectorMember": {
     "auth_ref": [
      "r887"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Director [Member]",
        "verboseLabel": "Directors"
       }
      }
     },
     "localname": "DirectorMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MajorCustomersAxis": {
     "auth_ref": [
      "r349",
      "r816",
      "r921",
      "r984"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer [Axis]",
        "terseLabel": "Customer [Axis]"
       }
      }
     },
     "localname": "MajorCustomersAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_MaximumMember": {
     "auth_ref": [
      "r401",
      "r402",
      "r403",
      "r404",
      "r542",
      "r739",
      "r770",
      "r793",
      "r794",
      "r813",
      "r831",
      "r842",
      "r917",
      "r976",
      "r977",
      "r978",
      "r979",
      "r980",
      "r981"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maximum [Member]",
        "terseLabel": "Maximum"
       }
      }
     },
     "localname": "MaximumMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/LongtermDebtScheduleofDebtDetail",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MinimumMember": {
     "auth_ref": [
      "r401",
      "r402",
      "r403",
      "r404",
      "r542",
      "r739",
      "r770",
      "r793",
      "r794",
      "r813",
      "r831",
      "r842",
      "r917",
      "r976",
      "r977",
      "r978",
      "r979",
      "r980",
      "r981"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Minimum [Member]",
        "terseLabel": "Minimum"
       }
      }
     },
     "localname": "MinimumMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/LongtermDebtScheduleofDebtDetail",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_NameOfMajorCustomerDomain": {
     "auth_ref": [
      "r349",
      "r816",
      "r921",
      "r984"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer [Domain]",
        "terseLabel": "Customer [Domain]"
       }
      }
     },
     "localname": "NameOfMajorCustomerDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_OfficerMember": {
     "auth_ref": [
      "r351"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Officer [Member]",
        "terseLabel": "Officer"
       }
      }
     },
     "localname": "OfficerMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ProductOrServiceAxis": {
     "auth_ref": [
      "r346",
      "r743",
      "r814",
      "r841",
      "r912",
      "r913",
      "r921",
      "r982"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Axis]",
        "terseLabel": "Product and Service [Axis]"
       }
      }
     },
     "localname": "ProductOrServiceAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ProductsAndServicesDomain": {
     "auth_ref": [
      "r346",
      "r743",
      "r814",
      "r841",
      "r912",
      "r913",
      "r921",
      "r982"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Domain]",
        "terseLabel": "Product and Service [Domain]"
       }
      }
     },
     "localname": "ProductsAndServicesDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RangeAxis": {
     "auth_ref": [
      "r401",
      "r402",
      "r403",
      "r404",
      "r499",
      "r542",
      "r579",
      "r580",
      "r581",
      "r738",
      "r739",
      "r770",
      "r793",
      "r794",
      "r813",
      "r831",
      "r842",
      "r911",
      "r917",
      "r977",
      "r978",
      "r979",
      "r980",
      "r981"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Axis]",
        "terseLabel": "Range [Axis]"
       }
      }
     },
     "localname": "RangeAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/LongtermDebtScheduleofDebtDetail",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_RangeMember": {
     "auth_ref": [
      "r401",
      "r402",
      "r403",
      "r404",
      "r499",
      "r542",
      "r579",
      "r580",
      "r581",
      "r738",
      "r739",
      "r770",
      "r793",
      "r794",
      "r813",
      "r831",
      "r842",
      "r911",
      "r917",
      "r977",
      "r978",
      "r979",
      "r980",
      "r981"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Domain]",
        "terseLabel": "Range [Domain]",
        "verboseLabel": "Statistical Measurement [Domain]"
       }
      }
     },
     "localname": "RangeMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/LongtermDebtScheduleofDebtDetail",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis": {
     "auth_ref": [
      "r792",
      "r987",
      "r988",
      "r989",
      "r990",
      "r991",
      "r992",
      "r993",
      "r994"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Name of Property [Axis]",
        "terseLabel": "Name of Property [Axis]"
       }
      }
     },
     "localname": "RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_RealEstateAndAccumulatedDepreciationNameOfPropertyDomain": {
     "auth_ref": [
      "r792",
      "r987",
      "r988",
      "r989",
      "r990",
      "r991",
      "r992",
      "r993",
      "r994"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Name of Property [Domain]",
        "terseLabel": "Name of Property [Domain]"
       }
      }
     },
     "localname": "RealEstateAndAccumulatedDepreciationNameOfPropertyDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RestatementAdjustmentMember": {
     "auth_ref": [
      "r277",
      "r278",
      "r279",
      "r290",
      "r291",
      "r309",
      "r664",
      "r665",
      "r876",
      "r877",
      "r878",
      "r879",
      "r880",
      "r882",
      "r883"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revision of Prior Period, Adjustment [Member]",
        "terseLabel": "Adjustment"
       }
      }
     },
     "localname": "RestatementAdjustmentMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail",
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RestatementAxis": {
     "auth_ref": [
      "r226",
      "r277",
      "r278",
      "r279",
      "r281",
      "r282",
      "r285",
      "r286",
      "r287",
      "r288",
      "r290",
      "r291",
      "r292",
      "r293",
      "r294",
      "r295",
      "r309",
      "r363",
      "r364",
      "r618",
      "r660",
      "r664",
      "r665",
      "r666",
      "r699",
      "r724",
      "r725",
      "r773",
      "r774",
      "r775",
      "r776",
      "r777",
      "r778",
      "r779",
      "r780",
      "r781",
      "r782"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revision of Prior Period [Axis]",
        "terseLabel": "Revision of Prior Period [Axis]"
       }
      }
     },
     "localname": "RestatementAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail",
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_RestatementDomain": {
     "auth_ref": [
      "r226",
      "r277",
      "r278",
      "r279",
      "r281",
      "r282",
      "r285",
      "r286",
      "r287",
      "r288",
      "r290",
      "r291",
      "r292",
      "r293",
      "r294",
      "r295",
      "r309",
      "r363",
      "r364",
      "r618",
      "r660",
      "r664",
      "r665",
      "r666",
      "r699",
      "r724",
      "r725",
      "r773",
      "r774",
      "r775",
      "r776",
      "r777",
      "r778",
      "r779",
      "r780",
      "r781",
      "r782"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revision of Prior Period [Domain]",
        "terseLabel": "Revision of Prior Period [Domain]"
       }
      }
     },
     "localname": "RestatementDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail",
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RevisionOfPriorPeriodReclassificationAdjustmentMember": {
     "auth_ref": [
      "r228"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revision of Prior Period, Reclassification, Adjustment [Member]",
        "terseLabel": "Revision of Prior Period, Reclassification, Adjustment"
       }
      }
     },
     "localname": "RevisionOfPriorPeriodReclassificationAdjustmentMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ScenarioForecastMember": {
     "auth_ref": [
      "r547",
      "r881"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Forecast [Member]",
        "terseLabel": "Forecast"
       }
      }
     },
     "localname": "ScenarioForecastMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ScenarioUnspecifiedDomain": {
     "auth_ref": [
      "r295",
      "r547",
      "r853",
      "r881"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Scenario [Domain]",
        "terseLabel": "Scenario [Domain]"
       }
      }
     },
     "localname": "ScenarioUnspecifiedDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_StatementScenarioAxis": {
     "auth_ref": [
      "r295",
      "r547",
      "r853",
      "r854",
      "r881"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Scenario [Axis]",
        "terseLabel": "Scenario [Axis]"
       }
      }
     },
     "localname": "StatementScenarioAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_TitleOfIndividualAxis": {
     "auth_ref": [
      "r887",
      "r972"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of Individual [Axis]",
        "terseLabel": "Title of Individual [Axis]"
       }
      }
     },
     "localname": "TitleOfIndividualAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_TitleOfIndividualWithRelationshipToEntityDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of Individual [Domain]",
        "terseLabel": "Relationship to Entity [Domain]"
       }
      }
     },
     "localname": "TitleOfIndividualWithRelationshipToEntityDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccountingPoliciesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounting Policies [Abstract]",
        "terseLabel": "Accounting Policies [Abstract]"
       }
      }
     },
     "localname": "AccountingPoliciesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountingStandardsUpdate201613Member": {
     "auth_ref": [
      "r358"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accounting Standards Update 2016-13 Financial Instruments-Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments.",
        "label": "Accounting Standards Update 2016-13 [Member]",
        "terseLabel": "Accounting Standards Update 2016-13"
       }
      }
     },
     "localname": "AccountingStandardsUpdate201613Member",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CreditLossesAdditionalInformationDetails",
      "http://installedbuildingproducts.com/role/CreditLossesScheduleofChangesinAllowanceforCreditLossesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccountsPayableCurrent": {
     "auth_ref": [
      "r14",
      "r839"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS": {
       "order": 3.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of 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).",
        "label": "Accounts Payable, Current",
        "terseLabel": "Accounts payable"
       }
      }
     },
     "localname": "AccountsPayableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock": {
     "auth_ref": [
      "r893"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of allowance for credit loss on accounts receivable.",
        "label": "Accounts Receivable, Allowance for Credit Loss [Table Text Block]",
        "terseLabel": "Schedule Of Changes In Allowance For Credit Losses"
       }
      }
     },
     "localname": "AccountsReceivableAllowanceForCreditLossTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CreditLossesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_AccountsReceivableMember": {
     "auth_ref": [
      "r786"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Due from customers or clients for goods or services that have been delivered or sold.",
        "label": "Accounts Receivable [Member]",
        "terseLabel": "Accounts Receivable"
       }
      }
     },
     "localname": "AccountsReceivableMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccountsReceivableNet": {
     "auth_ref": [
      "r765",
      "r785"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business.",
        "label": "Accounts Receivable, after Allowance for Credit Loss",
        "terseLabel": "Accounts receivable"
       }
      }
     },
     "localname": "AccountsReceivableNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "auth_ref": [
      "r352",
      "r353"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS": {
       "order": 2.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.",
        "label": "Accounts Receivable, after Allowance for Credit Loss, Current",
        "verboseLabel": "Accounts receivable (less allowance for credit losses of $9,549 and $8,717 at December\u00a031, 2022 and 2021, respectively)"
       }
      }
     },
     "localname": "AccountsReceivableNetCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableRelatedPartiesCurrent": {
     "auth_ref": [
      "r190",
      "r192",
      "r240",
      "r872"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of receivables arising from transactions with related parties due within one year or the normal operating cycle, if longer.",
        "label": "Accounts Receivable, Related Parties, Current",
        "terseLabel": "Accounts receivable, related parties"
       }
      }
     },
     "localname": "AccountsReceivableRelatedPartiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RelatedPartyTransactionsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedInsuranceCurrent": {
     "auth_ref": [
      "r19"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofAccruedGeneralInsuranceReservesDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_AccruedInsuranceCurrentAndNoncurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable to insurance entities to mitigate potential loss from various risks or to satisfy a promise to provide certain coverage's to employees. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Accrued Insurance, Current",
        "terseLabel": "Included in other current liabilities"
       }
      }
     },
     "localname": "AccruedInsuranceCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofAccruedGeneralInsuranceReservesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedInsuranceCurrentAndNoncurrent": {
     "auth_ref": [
      "r2",
      "r4",
      "r198",
      "r212"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofAccruedGeneralInsuranceReservesDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable to insurance entities to mitigate potential loss from various risks or to satisfy a promise to provide certain coverage's to employees.",
        "label": "Accrued Insurance",
        "totalLabel": "Total"
       }
      }
     },
     "localname": "AccruedInsuranceCurrentAndNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofAccruedGeneralInsuranceReservesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedInsuranceNoncurrent": {
     "auth_ref": [
      "r23"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofAccruedGeneralInsuranceReservesDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_AccruedInsuranceCurrentAndNoncurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and due beyond one year (or beyond one operating cycle if longer) to insurance entities to mitigate potential loss from various risks or to satisfy a promise to provide certain coverages to employees.",
        "label": "Accrued Insurance, Noncurrent",
        "terseLabel": "Included in other long-term liabilities"
       }
      }
     },
     "localname": "AccruedInsuranceNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofAccruedGeneralInsuranceReservesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember": {
     "auth_ref": [
      "r252",
      "r259",
      "r260",
      "r645",
      "r800",
      "r860"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated other comprehensive income (loss) from gain (loss) of derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness, attributable to parent.",
        "label": "Accumulated Gain (Loss), Net, Cash Flow Hedge, Parent [Member]",
        "terseLabel": "Accumulated Gain (Loss), Net, Cash Flow Hedge, Parent"
       }
      }
     },
     "localname": "AccumulatedGainLossNetCashFlowHedgeParentMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/StockholdersEquityChangeinAOCIDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Accumulated Other Comprehensive Income (Loss) [Line Items]",
        "terseLabel": "Accumulated Other Comprehensive Income (Loss) [Line Items]"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeLossLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/StockholdersEquityChangeinAOCIDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": {
     "auth_ref": [
      "r29",
      "r31",
      "r32",
      "r242",
      "r766",
      "r778",
      "r782"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS": {
       "order": 5.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated change in equity from transactions and other events and circumstances from non-owner sources, net of tax effect, at period end. Excludes Net Income (Loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners. Includes foreign currency translation items, certain pension adjustments, unrealized gains and losses on certain investments in debt and equity securities, other than temporary impairment (OTTI) losses related to factors other than credit losses on available-for-sale and held-to-maturity debt securities that an entity does not intend to sell and it is not more likely than not that the entity will be required to sell before recovery of the amortized cost basis, as well as changes in the fair value of derivatives related to the effective portion of a designated cash flow hedge.",
        "label": "Accumulated Other Comprehensive Income (Loss), Net of Tax",
        "terseLabel": "Accumulated other comprehensive income (loss)"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossTable": {
     "auth_ref": [
      "r258",
      "r259",
      "r684",
      "r685",
      "r686",
      "r687",
      "r688",
      "r689"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about components of accumulated other comprehensive income (loss).",
        "label": "Accumulated Other Comprehensive Income (Loss) [Table]",
        "terseLabel": "Accumulated Other Comprehensive Income (Loss) [Table]"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeLossTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/StockholdersEquityChangeinAOCIDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeMember": {
     "auth_ref": [
      "r28",
      "r32",
      "r159",
      "r725",
      "r773",
      "r774",
      "r860",
      "r861",
      "r862",
      "r873",
      "r874",
      "r875"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners.",
        "label": "AOCI Attributable to Parent [Member]",
        "terseLabel": "Accumulated Other Comprehensive (Loss) Income"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Acquired Finite-Lived Intangible Assets [Line Items]",
        "terseLabel": "Acquired Finite-Lived Intangible Assets [Line Items]"
       }
      }
     },
     "localname": "AcquiredFiniteLivedIntangibleAssetsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsEstimatesofAcquiredIntangibleAssetsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife": {
     "auth_ref": [
      "r90"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average amortization period of finite-lived intangible assets acquired either individually or as part of a group of assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Acquired Finite-Lived Intangible Assets, Weighted Average Useful Life",
        "terseLabel": "Weighted Average Estimated Useful Life (yrs)"
       }
      }
     },
     "localname": "AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsEstimatesofAcquiredIntangibleAssetsDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_AdditionalPaidInCapitalCommonStock": {
     "auth_ref": [
      "r9"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS": {
       "order": 2.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Additional Paid in Capital, Common Stock",
        "terseLabel": "Additional paid in capital"
       }
      }
     },
     "localname": "AdditionalPaidInCapitalCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "auth_ref": [
      "r585",
      "r586",
      "r587",
      "r873",
      "r874",
      "r875",
      "r962"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders.",
        "label": "Additional Paid-in Capital [Member]",
        "terseLabel": "Additional Paid In Capital"
       }
      }
     },
     "localname": "AdditionalPaidInCapitalMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AdjustmentsForNewAccountingPronouncementsAxis": {
     "auth_ref": [
      "r223",
      "r224",
      "r225",
      "r226",
      "r227",
      "r281",
      "r282",
      "r283",
      "r284",
      "r295",
      "r355",
      "r356",
      "r359",
      "r360",
      "r361",
      "r362",
      "r363",
      "r364",
      "r585",
      "r586",
      "r587",
      "r615",
      "r616",
      "r617",
      "r618",
      "r633",
      "r634",
      "r635",
      "r656",
      "r657",
      "r658",
      "r659",
      "r660",
      "r661",
      "r662",
      "r663",
      "r664",
      "r665",
      "r666",
      "r667",
      "r676",
      "r677",
      "r678",
      "r679",
      "r680",
      "r681",
      "r682",
      "r683",
      "r691",
      "r692",
      "r696",
      "r697",
      "r698",
      "r699",
      "r720",
      "r721",
      "r722",
      "r723",
      "r724",
      "r725",
      "r745",
      "r746",
      "r747",
      "r771",
      "r772",
      "r773",
      "r774",
      "r775",
      "r776",
      "r777",
      "r778",
      "r779",
      "r780",
      "r781",
      "r782"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by amendment to accounting standards.",
        "label": "Accounting Standards Update [Axis]",
        "terseLabel": "Adjustments for New Accounting Pronouncements [Axis]"
       }
      }
     },
     "localname": "AdjustmentsForNewAccountingPronouncementsAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CreditLossesAdditionalInformationDetails",
      "http://installedbuildingproducts.com/role/CreditLossesScheduleofChangesinAllowanceforCreditLossesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": {
     "auth_ref": [
      "r126",
      "r127",
      "r551"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement.",
        "label": "APIC, Share-Based Payment Arrangement, Increase for Cost Recognition",
        "terseLabel": "Share-based compensation expense"
       }
      }
     },
     "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]",
        "terseLabel": "Adjustments to reconcile net income to net cash provided by operating activities"
       }
      }
     },
     "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AdvertisingCostsPolicyTextBlock": {
     "auth_ref": [
      "r590"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for advertising cost.",
        "label": "Advertising Cost [Policy Text Block]",
        "terseLabel": "Advertising Costs"
       }
      }
     },
     "localname": "AdvertisingCostsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_AdvertisingExpense": {
     "auth_ref": [
      "r591"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount charged to advertising expense for the period, which are expenses incurred with the objective of increasing revenue for a specified brand, product or product line.",
        "label": "Advertising Expense",
        "terseLabel": "Advertising expenses"
       }
      }
     },
     "localname": "AdvertisingExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllOtherSegmentsMember": {
     "auth_ref": [
      "r318",
      "r334",
      "r335",
      "r336",
      "r337",
      "r338"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Operating segments classified as other. Excludes intersegment elimination and reconciling items.",
        "label": "Other Segments [Member]",
        "terseLabel": "Other"
       }
      }
     },
     "localname": "AllOtherSegmentsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AllocatedShareBasedCompensationExpense": {
     "auth_ref": [
      "r583"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.",
        "label": "Share-Based Payment Arrangement, Expense",
        "terseLabel": "Share-based compensation expense",
        "verboseLabel": "Stock compensation expense"
       }
      }
     },
     "localname": "AllocatedShareBasedCompensationExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofStockCompensationExpenseDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllowanceForCreditLossesTextBlock": {
     "auth_ref": [
      "r85"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for allowance for credit losses.",
        "label": "Allowance for Credit Losses [Text Block]",
        "terseLabel": "Credit Losses"
       }
      }
     },
     "localname": "AllowanceForCreditLossesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CreditLosses"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivable": {
     "auth_ref": [
      "r243",
      "r354",
      "r365",
      "r366",
      "r370"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of allowance for credit loss on accounts receivable.",
        "label": "Accounts Receivable, Allowance for Credit Loss",
        "periodEndLabel": "Ending balance",
        "periodStartLabel": "Beginning balance"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsReceivable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CreditLossesScheduleofChangesinAllowanceforCreditLossesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": {
     "auth_ref": [
      "r243",
      "r354",
      "r365"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current.",
        "label": "Accounts Receivable, Allowance for Credit Loss, Current",
        "terseLabel": "Allowance for doubtful accounts"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsReceivableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETSParenthetical"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries": {
     "auth_ref": [
      "r369"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase in allowance for credit loss on accounts receivable, from recovery.",
        "label": "Accounts Receivable, Allowance for Credit Loss, Recovery",
        "terseLabel": "Recoveries collected and additions"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsReceivableRecoveries",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CreditLossesScheduleofChangesinAllowanceforCreditLossesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Accounts Receivable, Allowance for Credit Loss [Roll Forward]",
        "terseLabel": "Accounts Receivable, Allowance for Credit Loss [Roll Forward]"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsReceivableRollforward",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CreditLossesScheduleofChangesinAllowanceforCreditLossesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs": {
     "auth_ref": [
      "r368"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of direct write-downs of accounts receivable charged against the allowance.",
        "label": "Accounts Receivable, Allowance for Credit Loss, Writeoff",
        "negatedTerseLabel": "Amounts written off"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsReceivableWriteOffs",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CreditLossesScheduleofChangesinAllowanceforCreditLossesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AmortizationOfFinancingCosts": {
     "auth_ref": [
      "r38",
      "r433",
      "r694",
      "r868"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization expense attributable to debt issuance costs.",
        "label": "Amortization of Debt Issuance Costs",
        "terseLabel": "Amortization expense related to financing costs"
       }
      }
     },
     "localname": "AmortizationOfFinancingCosts",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AmortizationOfFinancingCostsAndDiscounts": {
     "auth_ref": [
      "r433",
      "r694",
      "r811",
      "r812",
      "r868"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization expense attributable to debt discount (premium) and debt issuance costs.",
        "label": "Amortization of Debt Issuance Costs and Discounts",
        "terseLabel": "Amortization of deferred financing costs and debt discount"
       }
      }
     },
     "localname": "AmortizationOfFinancingCostsAndDiscounts",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AmortizationOfIntangibleAssets": {
     "auth_ref": [
      "r59",
      "r88",
      "r93"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME": {
       "order": 4.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method.",
        "label": "Amortization of Intangible Assets",
        "terseLabel": "Amortization",
        "verboseLabel": "Amortization of intangibles"
       }
      }
     },
     "localname": "AmortizationOfIntangibleAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS",
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME",
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": {
     "auth_ref": [
      "r306"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount",
        "terseLabel": "Common stock shares excluded from calculation of diluted net income per common share"
       }
      }
     },
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomePerCommonShareAdditionalInformationDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_Assets": {
     "auth_ref": [
      "r195",
      "r211",
      "r238",
      "r273",
      "r330",
      "r336",
      "r342",
      "r357",
      "r405",
      "r406",
      "r408",
      "r409",
      "r410",
      "r412",
      "r414",
      "r416",
      "r417",
      "r641",
      "r646",
      "r675",
      "r839",
      "r915",
      "r916",
      "r974"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.",
        "label": "Assets",
        "totalLabel": "Total assets"
       }
      }
     },
     "localname": "Assets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets [Abstract]",
        "terseLabel": "ASSETS"
       }
      }
     },
     "localname": "AssetsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS",
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETSParenthetical"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AssetsCurrent": {
     "auth_ref": [
      "r231",
      "r246",
      "r273",
      "r357",
      "r405",
      "r406",
      "r408",
      "r409",
      "r410",
      "r412",
      "r414",
      "r416",
      "r417",
      "r641",
      "r646",
      "r675",
      "r839",
      "r915",
      "r916",
      "r974"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS": {
       "order": 3.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.",
        "label": "Assets, Current",
        "totalLabel": "Total current assets"
       }
      }
     },
     "localname": "AssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets, Current [Abstract]",
        "terseLabel": "Current assets"
       }
      }
     },
     "localname": "AssetsCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS",
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETSParenthetical"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AssetsFairValueDisclosure": {
     "auth_ref": [
      "r173"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value portion of probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.",
        "label": "Assets, Fair Value Disclosure",
        "totalLabel": "Total financial assets"
       }
      }
     },
     "localname": "AssetsFairValueDisclosure",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsFairValueDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets, Fair Value Disclosure [Abstract]",
        "terseLabel": "Financial assets:"
       }
      }
     },
     "localname": "AssetsFairValueDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AwardTypeAxis": {
     "auth_ref": [
      "r554",
      "r555",
      "r556",
      "r558",
      "r559",
      "r560",
      "r561",
      "r562",
      "r563",
      "r564",
      "r565",
      "r566",
      "r567",
      "r568",
      "r569",
      "r570",
      "r571",
      "r572",
      "r573",
      "r574",
      "r575",
      "r578",
      "r579",
      "r580",
      "r581",
      "r582"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of award under share-based payment arrangement.",
        "label": "Award Type [Axis]",
        "terseLabel": "Award Type [Axis]"
       }
      }
     },
     "localname": "AwardTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsUnrecognizedShareBasedCompensationExpenseRelatedtoUnvestedAwardsDetails",
      "http://installedbuildingproducts.com/role/StockholdersEquityAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BalanceSheetLocationAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by location on balance sheet (statement of financial position).",
        "label": "Balance Sheet Location [Axis]",
        "terseLabel": "Balance Sheet Location [Axis]"
       }
      }
     },
     "localname": "BalanceSheetLocationAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BalanceSheetLocationDomain": {
     "auth_ref": [
      "r165",
      "r168"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Location in the balance sheet (statement of financial position).",
        "label": "Balance Sheet Location [Domain]",
        "terseLabel": "Balance Sheet Location [Domain]"
       }
      }
     },
     "localname": "BalanceSheetLocationDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_BaseRateMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Minimum rate investor will accept.",
        "label": "Base Rate [Member]",
        "terseLabel": "Base Rate"
       }
      }
     },
     "localname": "BaseRateMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).",
        "label": "Basis of Accounting, Policy [Policy Text Block]",
        "terseLabel": "Basis of Presentation"
       }
      }
     },
     "localname": "BasisOfAccountingPolicyPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_BilledContractReceivables": {
     "auth_ref": [
      "r741"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amounts due for billed services rendered or to be rendered, actions taken or to be taken, or a promise to refrain from taking certain actions in accordance with the terms of a legally binding agreement between the Company and, at a minimum, one other party. An example would be amounts billed to customers under contracts or programs but not paid as of the balance sheet date.",
        "label": "Billed Contracts Receivable",
        "terseLabel": "Less: Billings to date"
       }
      }
     },
     "localname": "BilledContractReceivables",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofCostandEstimatedEarningsonUncompletedContractsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BuildingMember": {
     "auth_ref": [
      "r98"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Facility held for productive use including, but not limited to, office, production, storage and distribution facilities.",
        "label": "Building [Member]",
        "terseLabel": "Buildings"
       }
      }
     },
     "localname": "BuildingMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_BusinessAcquisitionAcquireeDomain": {
     "auth_ref": [
      "r631",
      "r825",
      "r828"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Identification of the acquiree in a material business combination (or series of individually immaterial business combinations), which may include the name or other type of identification of the acquiree.",
        "label": "Business Acquisition, Acquiree [Domain]",
        "terseLabel": "Business Acquisition, Acquiree [Domain]"
       }
      }
     },
     "localname": "BusinessAcquisitionAcquireeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetail",
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail",
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_BusinessAcquisitionAxis": {
     "auth_ref": [
      "r141",
      "r142",
      "r631",
      "r825",
      "r828"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by business combination or series of individually immaterial business combinations.",
        "label": "Business Acquisition [Axis]",
        "terseLabel": "Business Acquisition [Axis]"
       }
      }
     },
     "localname": "BusinessAcquisitionAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetail",
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail",
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BusinessAcquisitionLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Business Acquisition [Line Items]",
        "terseLabel": "Business Acquisition [Line Items]"
       }
      }
     },
     "localname": "BusinessAcquisitionLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetail",
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic": {
     "auth_ref": [
      "r958",
      "r959"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The pro forma basic net income per share for a period as if the business combination or combinations had been completed at the beginning of a period.",
        "label": "Business Acquisition, Pro Forma Earnings Per Share, Basic",
        "terseLabel": "Basic net income per share"
       }
      }
     },
     "localname": "BusinessAcquisitionProFormaEarningsPerShareBasic",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsProFormaResultsofOperationsDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted": {
     "auth_ref": [
      "r958",
      "r959"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The pro forma diluted net income per share for a period as if the business combination or combinations had been completed at the beginning of a period.",
        "label": "Business Acquisition, Pro Forma Earnings Per Share, Diluted",
        "terseLabel": "Diluted net income per share"
       }
      }
     },
     "localname": "BusinessAcquisitionProFormaEarningsPerShareDiluted",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsProFormaResultsofOperationsDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_BusinessAcquisitionProFormaInformationTextBlock": {
     "auth_ref": [
      "r958",
      "r959"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of pro forma results of operations for a material business acquisition or series of individually immaterial business acquisitions that are material in the aggregate.",
        "label": "Business Acquisition, Pro Forma Information [Table Text Block]",
        "terseLabel": "Pro Forma Results of Operations"
       }
      }
     },
     "localname": "BusinessAcquisitionProFormaInformationTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount": {
     "auth_ref": [
      "r156"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of goodwill arising from a business combination that is expected to be deductible for tax purposes.",
        "label": "Business Acquisition, Goodwill, Expected Tax Deductible Amount",
        "terseLabel": "Goodwill acquired expected to be tax deductible"
       }
      }
     },
     "localname": "BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss": {
     "auth_ref": [
      "r629",
      "r630"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The pro forma net Income or Loss for the period as if the business combination or combinations had been completed at the beginning of a period.",
        "label": "Business Acquisition, Pro Forma Net Income (Loss)",
        "terseLabel": "Net income"
       }
      }
     },
     "localname": "BusinessAcquisitionsProFormaNetIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsProFormaResultsofOperationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessAcquisitionsProFormaRevenue": {
     "auth_ref": [
      "r629",
      "r630"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The pro forma revenue for a period as if the business combination or combinations had been completed at the beginning of the period.",
        "label": "Business Acquisition, Pro Forma Revenue",
        "terseLabel": "Net revenue"
       }
      }
     },
     "localname": "BusinessAcquisitionsProFormaRevenue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsProFormaResultsofOperationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationAcquisitionRelatedCosts": {
     "auth_ref": [
      "r138"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This element represents acquisition-related costs incurred to effect a business combination which costs have been expensed during the period. Such costs include finder's fees; advisory, legal, accounting, valuation, and other professional or consulting fees; general administrative costs, including the costs of maintaining an internal acquisitions department; and may include costs of registering and issuing debt and equity securities.",
        "label": "Business Combination, Acquisition Related Costs",
        "terseLabel": "Acquisition-related costs"
       }
      }
     },
     "localname": "BusinessCombinationAcquisitionRelatedCosts",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationConsiderationTransferred1": {
     "auth_ref": [
      "r152",
      "r153",
      "r155"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of consideration transferred, consisting of acquisition-date fair value of assets transferred by the acquirer, liabilities incurred by the acquirer, and equity interest issued by the acquirer.",
        "label": "Business Combination, Consideration Transferred",
        "totalLabel": "Total Purchase Price"
       }
      }
     },
     "localname": "BusinessCombinationConsiderationTransferred1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred": {
     "auth_ref": [
      "r150",
      "r152",
      "r153",
      "r637"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liabilities incurred by the acquirer as part of consideration transferred in a business combination.",
        "label": "Business Combination, Consideration Transferred, Liabilities Incurred",
        "terseLabel": "Seller obligations in connection with acquisition of businesses"
       }
      }
     },
     "localname": "BusinessCombinationConsiderationTransferredLiabilitiesIncurred",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1": {
     "auth_ref": [
      "r639",
      "r867"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 18.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME": {
       "order": 5.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in the value of a contingent consideration liability, including, but not limited to, differences arising upon settlement.",
        "label": "Business Combination, Contingent Consideration Arrangements, Change in Amount of Contingent Consideration, Liability",
        "terseLabel": "Gains on acquisition earnouts"
       }
      }
     },
     "localname": "BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS",
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationContingentConsiderationLiability": {
     "auth_ref": [
      "r151",
      "r154",
      "r638"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesFairValueDisclosure",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liability recognized arising from contingent consideration in a business combination.",
        "label": "Business Combination, Contingent Consideration, Liability",
        "terseLabel": "Contingent consideration"
       }
      }
     },
     "localname": "BusinessCombinationContingentConsiderationLiability",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationDisclosureTextBlock": {
     "auth_ref": [
      "r157",
      "r632"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for a business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities. The disclosure may include leverage buyout transactions (as applicable).",
        "label": "Business Combination Disclosure [Text Block]",
        "terseLabel": "Business Combinations"
       }
      }
     },
     "localname": "BusinessCombinationDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinations"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual": {
     "auth_ref": [
      "r140"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This element represents the amount of earnings or loss of the acquiree since the acquisition date included in the consolidated income statement for the reporting period.",
        "label": "Business Combination, Pro Forma Information, Earnings or Loss of Acquiree since Acquisition Date, Actual",
        "terseLabel": "Net Income (Loss)"
       }
      }
     },
     "localname": "BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual": {
     "auth_ref": [
      "r140"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This element represents the amount of revenue of the acquiree since the acquisition date included in the consolidated income statement for the reporting period.",
        "label": "Business Combination, Pro Forma Information, Revenue of Acquiree since Acquisition Date, Actual",
        "terseLabel": "Revenue"
       }
      }
     },
     "localname": "BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents": {
     "auth_ref": [
      "r144"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail": {
       "order": 11.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions, acquired at the acquisition date. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Cash and Equivalents",
        "terseLabel": "Cash"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther": {
     "auth_ref": [
      "r144"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail": {
       "order": 8.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of other assets expected to be realized or consumed before one year or the normal operating cycle, if longer, acquired at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Other",
        "terseLabel": "Other current assets"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables": {
     "auth_ref": [
      "r144"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail": {
       "order": 5.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount due from customers or clients for goods or services, including trade receivables, that have been delivered or sold in the normal course of business, and amounts due from others, including related parties expected to be converted to cash, sold or exchanged within one year or the normal operating cycle, if longer, acquired at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Receivables",
        "terseLabel": "Accounts receivable"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities": {
     "auth_ref": [
      "r144"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail": {
       "order": 9.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences assumed at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Deferred Tax Liabilities",
        "negatedTerseLabel": "Deferred income tax liabilities"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill": {
     "auth_ref": [
      "r144"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail": {
       "order": 10.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of intangible assets, excluding goodwill, acquired at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Intangible Assets, Other than Goodwill",
        "negatedTerseLabel": "Intangibles",
        "terseLabel": "Intangibles",
        "verboseLabel": "Intangibles on business combination"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail",
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory": {
     "auth_ref": [
      "r143",
      "r144"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail": {
       "order": 4.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of inventory recognized as of the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Inventory",
        "terseLabel": "Inventories"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther": {
     "auth_ref": [
      "r144"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail": {
       "order": 6.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of other liabilities due after one year or the normal operating cycle, if longer, assumed at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Noncurrent Liabilities, Other",
        "negatedTerseLabel": "Other long-term liabilities"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets": {
     "auth_ref": [
      "r144"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of other assets expected to be realized or consumed after one year or the normal operating cycle, if longer, acquired at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Other Noncurrent Assets",
        "terseLabel": "Other non-current assets"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment": {
     "auth_ref": [
      "r143",
      "r144"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail": {
       "order": 3.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of property, plant, and equipment recognized as of the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Property, Plant, and Equipment",
        "terseLabel": "Property and equipment"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet": {
     "auth_ref": [
      "r144"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount recognized for assets, including goodwill, in excess of (less than) the aggregate liabilities assumed.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired, Goodwill, and Liabilities Assumed, Net",
        "totalLabel": "Fair value of assets acquired and purchase price"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationSeparatelyRecognizedTransactionsRevenuesAndGainsRecognized": {
     "auth_ref": [
      "r139"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The revenues and gains recognized recorded for each transaction with the acquiree that is recognized separately from the acquisition of assets and assumptions of liabilities in the business combination.",
        "label": "Business Combination, Separately Recognized Transactions, Revenues and Gains Recognized",
        "terseLabel": "Gain on acquisition earnout"
       }
      }
     },
     "localname": "BusinessCombinationSeparatelyRecognizedTransactionsRevenuesAndGainsRecognized",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combinations [Abstract]",
        "terseLabel": "Business Combinations [Abstract]"
       }
      }
     },
     "localname": "BusinessCombinationsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_BusinessCombinationsPolicy": {
     "auth_ref": [
      "r136"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for completed business combinations (purchase method, acquisition method or combination of entities under common control). This accounting policy may include a general discussion of the purchase method or acquisition method of accounting (including for example, the treatment accorded contingent consideration, the identification of assets and liabilities, the purchase price allocation process, how the fair values of acquired assets and liabilities are determined) and the entity's specific application thereof. An entity that acquires another entity in a leveraged buyout transaction generally discloses the accounting policy followed by the acquiring entity in determining the basis used to value its interest in the acquired entity, and the rationale for that accounting policy.",
        "label": "Business Combinations Policy [Policy Text Block]",
        "terseLabel": "Business Combinations"
       }
      }
     },
     "localname": "BusinessCombinationsPolicy",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CapitalExpendituresIncurredButNotYetPaid": {
     "auth_ref": [
      "r64",
      "r65",
      "r66"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Future cash outflow to pay for purchases of fixed assets that have occurred.",
        "label": "Capital Expenditures Incurred but Not yet Paid",
        "terseLabel": "Unpaid purchases of property and equipment included in accounts payable"
       }
      }
     },
     "localname": "CapitalExpendituresIncurredButNotYetPaid",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CapitalizedContractCostImpairmentLoss": {
     "auth_ref": [
      "r374"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of impairment loss for asset recognized from cost incurred to obtain or fulfill contract with customer.",
        "label": "Capitalized Contract Cost, Impairment Loss",
        "terseLabel": "Impairment losses on receivables and contract assets"
       }
      }
     },
     "localname": "CapitalizedContractCostImpairmentLoss",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CarryingReportedAmountFairValueDisclosureMember": {
     "auth_ref": [
      "r180",
      "r181"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Measured as reported on the statement of financial position (balance sheet).",
        "label": "Reported Value Measurement [Member]",
        "terseLabel": "Carrying Value"
       }
      }
     },
     "localname": "CarryingReportedAmountFairValueDisclosureMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairValuemeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CashAcquiredFromAcquisition": {
     "auth_ref": [
      "r45"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow associated with the acquisition of business during the period (for example, cash that was held by the acquired business).",
        "label": "Cash Acquired from Acquisition",
        "terseLabel": "Cash acquired, net"
       }
      }
     },
     "localname": "CashAcquiredFromAcquisition",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSParenthetical"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "auth_ref": [
      "r61",
      "r234",
      "r797"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS": {
       "order": 3.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.",
        "label": "Cash and Cash Equivalents, at Carrying Value",
        "terseLabel": "Cash and cash equivalents"
       }
      }
     },
     "localname": "CashAndCashEquivalentsAtCarryingValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsFairValueDisclosure": {
     "auth_ref": [],
     "calculation": {
      "http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_AssetsFairValueDisclosure",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value portion 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.",
        "label": "Cash and Cash Equivalents, Fair Value Disclosure",
        "terseLabel": "Cash equivalents"
       }
      }
     },
     "localname": "CashAndCashEquivalentsFairValueDisclosure",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsPolicyTextBlock": {
     "auth_ref": [
      "r62"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for cash and cash equivalents, including the policy for determining which items are treated as cash equivalents. Other information that may be disclosed includes (1) the nature of any restrictions on the entity's use of its cash and cash equivalents, (2) whether the entity's cash and cash equivalents are insured or expose the entity to credit risk, (3) the classification of any negative balance accounts (overdrafts), and (4) the carrying basis of cash equivalents (for example, at cost) and whether the carrying amount of cash equivalents approximates fair value.",
        "label": "Cash and Cash Equivalents, Policy [Policy Text Block]",
        "terseLabel": "Cash and Cash Equivalents"
       }
      }
     },
     "localname": "CashAndCashEquivalentsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "auth_ref": [
      "r56",
      "r61",
      "r67"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.",
        "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents",
        "periodEndLabel": "Cash and cash equivalents at end of period",
        "periodStartLabel": "Cash and cash equivalents at beginning of period"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": {
     "auth_ref": [
      "r56",
      "r184"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect",
        "totalLabel": "Net change in cash and cash equivalents"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashFDICInsuredAmount": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of cash deposited in financial institutions as of the balance sheet date that is insured by the Federal Deposit Insurance Corporation.",
        "label": "Cash, FDIC Insured Amount",
        "terseLabel": "Amount insured by FDIC"
       }
      }
     },
     "localname": "CashFDICInsuredAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashFlowHedgingMember": {
     "auth_ref": [
      "r163"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Hedge of the exposure to variability in the cash flows of a recognized asset or liability, or of a forecasted transaction, that is attributable to a particular risk.",
        "label": "Cash Flow Hedging [Member]",
        "terseLabel": "Cash Flow Hedging"
       }
      }
     },
     "localname": "CashFlowHedgingMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesOpenInterestSwapContractSummaryDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommitmentsAndContingencies": {
     "auth_ref": [
      "r24",
      "r201",
      "r216"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS": {
       "order": 3.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur.",
        "label": "Commitments and Contingencies",
        "verboseLabel": "Commitments and contingencies (Note 17)"
       }
      }
     },
     "localname": "CommitmentsAndContingencies",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and Contingencies Disclosure [Abstract]",
        "terseLabel": "Commitments and Contingencies Disclosure [Abstract]"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "auth_ref": [
      "r102",
      "r399",
      "r400",
      "r787",
      "r914"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for commitments and contingencies.",
        "label": "Commitments and Contingencies Disclosure [Text Block]",
        "terseLabel": "Commitments and Contingencies"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CommitmentsandContingencies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CommonStockDividendsPerShareDeclared": {
     "auth_ref": [
      "r111"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate dividends declared during the period for each share of common stock outstanding.",
        "label": "Common Stock, Dividends, Per Share, Declared",
        "terseLabel": "Cash dividends declared per share (in USD per share)"
       }
      }
     },
     "localname": "CommonStockDividendsPerShareDeclared",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME",
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYParenthetical",
      "http://installedbuildingproducts.com/role/StockholdersEquityScheduleofDividendsDeclaredDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_CommonStockMember": {
     "auth_ref": [
      "r873",
      "r874",
      "r962"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock that is subordinate to all other stock of the issuer.",
        "label": "Common Stock [Member]",
        "terseLabel": "Common Stock"
       }
      }
     },
     "localname": "CommonStockMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r8"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face amount or stated value per share of common stock.",
        "label": "Common Stock, Par or Stated Value Per Share",
        "terseLabel": "Common stock, par value (in USD per share)"
       }
      }
     },
     "localname": "CommonStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETSParenthetical"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "auth_ref": [
      "r8"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws.",
        "label": "Common Stock, Shares Authorized",
        "terseLabel": "Common stock, shares authorized (in shares)"
       }
      }
     },
     "localname": "CommonStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETSParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesIssued": {
     "auth_ref": [
      "r8"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.",
        "label": "Common Stock, Shares, Issued",
        "periodEndLabel": "BALANCE, Shares",
        "periodStartLabel": "BALANCE, Shares",
        "terseLabel": "Common stock, shares issued (in shares)"
       }
      }
     },
     "localname": "CommonStockSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETSParenthetical",
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "auth_ref": [
      "r8",
      "r106"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.",
        "label": "Common Stock, Shares, Outstanding",
        "terseLabel": "Common stock, shares outstanding (in shares)"
       }
      }
     },
     "localname": "CommonStockSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETSParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockValue": {
     "auth_ref": [
      "r8",
      "r839"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS": {
       "order": 1.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.",
        "label": "Common Stock, Value, Issued",
        "verboseLabel": "Common stock; $0.01 par value: 100,000,000 authorized, 33,429,557 and 33,271,659 issued and 28,306,482 and 29,706,401 shares outstanding at December\u00a031, 2022 and 2021, respectively"
       }
      }
     },
     "localname": "CommonStockValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CompensationAndEmployeeBenefitPlansTextBlock": {
     "auth_ref": [
      "r115",
      "r118",
      "r119",
      "r128"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for an entity's employee compensation and benefit plans, including, but not limited to, postemployment and postretirement benefit plans, defined benefit pension plans, defined contribution plans, non-qualified and supplemental benefit plans, deferred compensation, share-based compensation, life insurance, severance, health care, unemployment and other benefit plans.",
        "label": "Compensation and Employee Benefit Plans [Text Block]",
        "terseLabel": "Employee Benefits"
       }
      }
     },
     "localname": "CompensationAndEmployeeBenefitPlansTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefits"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CompensationAndRetirementDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Retirement Benefits [Abstract]",
        "terseLabel": "Retirement Benefits [Abstract]"
       }
      }
     },
     "localname": "CompensationAndRetirementDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_ComprehensiveIncomeNetOfTax": {
     "auth_ref": [
      "r33",
      "r254",
      "r256",
      "r262",
      "r762",
      "r767"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent",
        "totalLabel": "Comprehensive income"
       }
      }
     },
     "localname": "ComprehensiveIncomeNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ComprehensiveIncomeNetOfTaxAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent [Abstract]",
        "terseLabel": "Other comprehensive gain (loss), net of tax:"
       }
      }
     },
     "localname": "ComprehensiveIncomeNetOfTaxAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskBenchmarkDomain": {
     "auth_ref": [
      "r76",
      "r77",
      "r182",
      "r183",
      "r349",
      "r786"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The denominator in a calculation of a disclosed concentration risk percentage.",
        "label": "Concentration Risk Benchmark [Domain]",
        "terseLabel": "Concentration Risk Benchmark [Domain]"
       }
      }
     },
     "localname": "ConcentrationRiskBenchmarkDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConcentrationRiskByBenchmarkAxis": {
     "auth_ref": [
      "r76",
      "r77",
      "r182",
      "r183",
      "r349",
      "r784",
      "r786"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by benchmark of concentration risk.",
        "label": "Concentration Risk Benchmark [Axis]",
        "terseLabel": "Concentration Risk Benchmark [Axis]"
       }
      }
     },
     "localname": "ConcentrationRiskByBenchmarkAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskByTypeAxis": {
     "auth_ref": [
      "r76",
      "r77",
      "r182",
      "r183",
      "r349",
      "r786",
      "r986"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of concentration risk, for example, but not limited to, asset, liability, net assets, geographic, customer, employees, supplier, lender.",
        "label": "Concentration Risk Type [Axis]",
        "terseLabel": "Concentration Risk Type [Axis]"
       }
      }
     },
     "localname": "ConcentrationRiskByTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskCreditRisk": {
     "auth_ref": [
      "r207",
      "r315"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for credit risk.",
        "label": "Concentration Risk, Credit Risk, Policy [Policy Text Block]",
        "terseLabel": "Concentration of Credit Risk"
       }
      }
     },
     "localname": "ConcentrationRiskCreditRisk",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ConcentrationRiskPercentage1": {
     "auth_ref": [
      "r76",
      "r77",
      "r182",
      "r183",
      "r349"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the \"benchmark\" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.",
        "label": "Concentration Risk, Percentage",
        "terseLabel": "Customer risk (as a percent)"
       }
      }
     },
     "localname": "ConcentrationRiskPercentage1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ConcentrationRiskTypeDomain": {
     "auth_ref": [
      "r76",
      "r77",
      "r182",
      "r183",
      "r349",
      "r786"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "For an entity that discloses a concentration risk as a percentage of some financial balance or benchmark, identifies the type (for example, asset, liability, net assets, geographic, customer, employees, supplier, lender) of the concentration.",
        "label": "Concentration Risk Type [Domain]",
        "terseLabel": "Concentration Risk Type [Domain]"
       }
      }
     },
     "localname": "ConcentrationRiskTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConsolidationPolicyTextBlock": {
     "auth_ref": [
      "r158",
      "r801"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy regarding (1) the principles it follows in consolidating or combining the separate financial statements, including the principles followed in determining the inclusion or exclusion of subsidiaries or other entities in the consolidated or combined financial statements and (2) its treatment of interests (for example, common stock, a partnership interest or other means of exerting influence) in other entities, for example consolidation or use of the equity or cost methods of accounting. The accounting policy may also address the accounting treatment for intercompany accounts and transactions, noncontrolling interest, and the income statement treatment in consolidation for issuances of stock by a subsidiary.",
        "label": "Consolidation, Policy [Policy Text Block]",
        "terseLabel": "Consolidation"
       }
      }
     },
     "localname": "ConsolidationPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ConstructionContractorReceivableRetainage": {
     "auth_ref": [
      "r241",
      "r740"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of right to consideration in exchange for good or service transferred to customer withheld under retainage provision in long-term contract or program when right to consideration is unconditional.",
        "label": "Construction Contractor, Receivable, Retainage",
        "terseLabel": "Retainage receivables"
       }
      }
     },
     "localname": "ConstructionContractorReceivableRetainage",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock": {
     "auth_ref": [
      "r920"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of receivable, contract asset, and contract liability from contract with customer. Includes, but is not limited to, change in contract asset and contract liability.",
        "label": "Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block]",
        "terseLabel": "Summary of Assets and Liabilities Related to Uncompleted Contracts and Customer Deposits"
       }
      }
     },
     "localname": "ContractWithCustomerAssetAndLiabilityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ContractWithCustomerAssetNet": {
     "auth_ref": [
      "r450",
      "r452",
      "r473"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time.",
        "label": "Contract with Customer, Asset, after Allowance for Credit Loss",
        "terseLabel": "Contract assets"
       }
      }
     },
     "localname": "ContractWithCustomerAssetNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofAssetsandLiabilitiesRelatedtoUncompletedContractsandCustomerDepositsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ContractWithCustomerLiability": {
     "auth_ref": [
      "r450",
      "r451",
      "r473"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable.",
        "label": "Contract with Customer, Liability",
        "negatedLabel": "Contract liabilities"
       }
      }
     },
     "localname": "ContractWithCustomerLiability",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofAssetsandLiabilitiesRelatedtoUncompletedContractsandCustomerDepositsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": {
     "auth_ref": [
      "r474"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due.",
        "label": "Contract with Customer, Liability, Revenue Recognized",
        "terseLabel": "Contract liability revenue recognized"
       }
      }
     },
     "localname": "ContractWithCustomerLiabilityRevenueRecognized",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization": {
     "auth_ref": [
      "r863",
      "r864"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails": {
       "order": 2.0,
       "parentTag": "ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cost of product sold and service rendered, excluding depreciation, depletion, and amortization.",
        "label": "Cost of Goods and Service, Excluding Depreciation, Depletion, and Amortization",
        "terseLabel": "Cost of sales"
       }
      }
     },
     "localname": "CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CostOfGoodsAndServicesSold": {
     "auth_ref": [
      "r41",
      "r743"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME": {
       "order": 2.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Cost of Goods and Services Sold",
        "terseLabel": "Cost of sales"
       }
      }
     },
     "localname": "CostOfGoodsAndServicesSold",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CostOfSalesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Primary financial statement caption encompassing cost of sales.",
        "label": "Cost of Sales [Member]",
        "terseLabel": "Cost of sales"
       }
      }
     },
     "localname": "CostOfSalesMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofStockCompensationExpenseDetail",
      "http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofDepreciationandAmortizationExpenseonPropertyandEquipmentbyIncomeStatementCategoryDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CostsInExcessOfBillingsAndBillingsInExcessOfCostsTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of long-term contract or program.",
        "label": "Long-Term Contract or Program Disclosure [Table Text Block]",
        "terseLabel": "Schedule of Net Under Billings"
       }
      }
     },
     "localname": "CostsInExcessOfBillingsAndBillingsInExcessOfCostsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CreditFacilityAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing.",
        "label": "Credit Facility [Axis]",
        "terseLabel": "Credit Facility [Axis]"
       }
      }
     },
     "localname": "CreditFacilityAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CreditFacilityDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing.",
        "label": "Credit Facility [Domain]",
        "terseLabel": "Credit Facility [Domain]"
       }
      }
     },
     "localname": "CreditFacilityDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CreditLossAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Credit Loss [Abstract]"
       }
      }
     },
     "localname": "CreditLossAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_CurrentFederalTaxExpenseBenefit": {
     "auth_ref": [
      "r871",
      "r954",
      "r956"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesProvisionforIncomeTaxesDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current national tax expense (benefit) for non-US (United States of America) jurisdiction.",
        "label": "Current Federal Tax Expense (Benefit)",
        "terseLabel": "Federal"
       }
      }
     },
     "localname": "CurrentFederalTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesProvisionforIncomeTaxesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r135",
      "r612",
      "r622",
      "r871"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesProvisionforIncomeTaxesDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current income tax expense (benefit) pertaining to taxable income (loss) from continuing operations.",
        "label": "Current Income Tax Expense (Benefit)",
        "totalLabel": "Current income tax expense (benefit)"
       }
      }
     },
     "localname": "CurrentIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesProvisionforIncomeTaxesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current Income Tax Expense (Benefit), Continuing Operations [Abstract]",
        "terseLabel": "Current:"
       }
      }
     },
     "localname": "CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesProvisionforIncomeTaxesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CurrentStateAndLocalTaxExpenseBenefit": {
     "auth_ref": [
      "r871",
      "r954",
      "r956"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesProvisionforIncomeTaxesDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction.",
        "label": "Current State and Local Tax Expense (Benefit)",
        "terseLabel": "State"
       }
      }
     },
     "localname": "CurrentStateAndLocalTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesProvisionforIncomeTaxesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CustomerConcentrationRiskMember": {
     "auth_ref": [
      "r74",
      "r349"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Reflects the percentage that revenues in the period from one or more significant customers is to net revenues, as defined by the entity, such as total net revenues, product line revenues, segment revenues. The risk is the materially adverse effects of loss of a significant customer.",
        "label": "Customer Concentration Risk [Member]",
        "terseLabel": "Customer Concentration Risk"
       }
      }
     },
     "localname": "CustomerConcentrationRiskMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CustomerRelationshipsMember": {
     "auth_ref": [
      "r149"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Customer relationship that exists between an entity and its customer, for example, but not limited to, tenant relationships.",
        "label": "Customer Relationships [Member]",
        "terseLabel": "Customer relationships"
       }
      }
     },
     "localname": "CustomerRelationshipsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsEstimatesofAcquiredIntangibleAssetsDetail",
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS",
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Disclosure [Abstract]",
        "terseLabel": "Debt Disclosure [Abstract]"
       }
      }
     },
     "localname": "DebtDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentAxis": {
     "auth_ref": [
      "r1",
      "r2",
      "r3",
      "r196",
      "r199",
      "r210",
      "r276",
      "r418",
      "r419",
      "r420",
      "r421",
      "r422",
      "r423",
      "r424",
      "r425",
      "r426",
      "r427",
      "r428",
      "r429",
      "r430",
      "r431",
      "r432",
      "r433",
      "r695",
      "r808",
      "r809",
      "r810",
      "r811",
      "r812",
      "r869"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of debt instrument, including, but not limited to, draws against credit facilities.",
        "label": "Debt Instrument [Axis]",
        "terseLabel": "Debt Instrument [Axis]"
       }
      }
     },
     "localname": "DebtInstrumentAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairValuemeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetail",
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/LongtermDebtScheduleofDebtDetail",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage points added to the reference rate to compute the variable rate on the debt instrument.",
        "label": "Debt Instrument, Basis Spread on Variable Rate",
        "terseLabel": "Margin interest rate percentage"
       }
      }
     },
     "localname": "DebtInstrumentBasisSpreadOnVariableRate1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DebtInstrumentFaceAmount": {
     "auth_ref": [
      "r186",
      "r188",
      "r418",
      "r695",
      "r809",
      "r810"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face (par) amount of debt instrument at time of issuance.",
        "label": "Debt Instrument, Face Amount",
        "terseLabel": "Debt instrument, face amount"
       }
      }
     },
     "localname": "DebtInstrumentFaceAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentInterestRateStatedPercentage": {
     "auth_ref": [
      "r21",
      "r419"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Contractual interest rate for funds borrowed, under the debt agreement.",
        "label": "Debt Instrument, Interest Rate, Stated Percentage",
        "terseLabel": "Notes payable Interest rate"
       }
      }
     },
     "localname": "DebtInstrumentInterestRateStatedPercentage",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/LongtermDebtScheduleofDebtDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DebtInstrumentLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Debt Instrument [Line Items]",
        "terseLabel": "Debt Instrument [Line Items]"
       }
      }
     },
     "localname": "DebtInstrumentLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/LongtermDebtScheduleofDebtDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentNameDomain": {
     "auth_ref": [
      "r22",
      "r276",
      "r418",
      "r419",
      "r420",
      "r421",
      "r422",
      "r423",
      "r424",
      "r425",
      "r426",
      "r427",
      "r428",
      "r429",
      "r430",
      "r431",
      "r432",
      "r433",
      "r695",
      "r808",
      "r809",
      "r810",
      "r811",
      "r812",
      "r869"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The name for the particular debt instrument or borrowing that distinguishes it from other debt instruments or borrowings, including draws against credit facilities.",
        "label": "Debt Instrument, Name [Domain]",
        "terseLabel": "Debt Instrument, Name [Domain]"
       }
      }
     },
     "localname": "DebtInstrumentNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairValuemeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetail",
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/LongtermDebtScheduleofDebtDetail",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtInstrumentPeriodicPaymentPrincipal": {
     "auth_ref": [
      "r22"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the required periodic payments applied to principal.",
        "label": "Debt Instrument, Periodic Payment, Principal",
        "terseLabel": "Quarterly principal payments"
       }
      }
     },
     "localname": "DebtInstrumentPeriodicPaymentPrincipal",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentTable": {
     "auth_ref": [
      "r22",
      "r107",
      "r108",
      "r109",
      "r110",
      "r185",
      "r186",
      "r188",
      "r206",
      "r276",
      "r418",
      "r419",
      "r420",
      "r421",
      "r422",
      "r423",
      "r424",
      "r425",
      "r426",
      "r427",
      "r428",
      "r429",
      "r430",
      "r431",
      "r432",
      "r433",
      "r434",
      "r695",
      "r808",
      "r809",
      "r810",
      "r811",
      "r812",
      "r869"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A table or schedule providing information pertaining to long-term debt instruments or arrangements, including identification, terms, features, collateral requirements and other information necessary to a fair presentation. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the company, if longer.",
        "label": "Schedule of Long-Term Debt Instruments [Table]",
        "terseLabel": "Schedule of Long-term Debt Instruments [Table]"
       }
      }
     },
     "localname": "DebtInstrumentTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/LongtermDebtScheduleofDebtDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentTerm": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Period of time between issuance and maturity of debt instrument, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Debt Instrument, Term",
        "terseLabel": "Term loan facility maturity period (in years)"
       }
      }
     },
     "localname": "DebtInstrumentTerm",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_DebtInstrumentUnamortizedDiscount": {
     "auth_ref": [
      "r185",
      "r188",
      "r918"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after accumulated amortization, of debt discount.",
        "label": "Debt Instrument, Unamortized Discount",
        "terseLabel": "Unamortized debt issuance costs"
       }
      }
     },
     "localname": "DebtInstrumentUnamortizedDiscount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtScheduleofDebtDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredFederalIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r871",
      "r955",
      "r956"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesProvisionforIncomeTaxesDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredIncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred national tax expense (benefit) for non-US (United States of America) jurisdiction.",
        "label": "Deferred Federal Income Tax Expense (Benefit)",
        "terseLabel": "Federal"
       }
      }
     },
     "localname": "DeferredFederalIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesProvisionforIncomeTaxesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredFinanceCostsNet": {
     "auth_ref": [
      "r187",
      "r918"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after accumulated amortization, of debt issuance costs. Includes, but is not limited to, legal, accounting, underwriting, printing, and registration costs.",
        "label": "Debt Issuance Costs, Net",
        "terseLabel": "Deferred financing costs",
        "verboseLabel": "Deferred financing costs and debt issuance costs, net"
       }
      }
     },
     "localname": "DeferredFinanceCostsNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxAssetsNet": {
     "auth_ref": [
      "r595",
      "r596"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting.",
        "label": "Deferred Income Tax Assets, Net",
        "terseLabel": "Cumulative effect on retained earnings, tax"
       }
      }
     },
     "localname": "DeferredIncomeTaxAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CreditLossesAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r59",
      "r135",
      "r613",
      "r621",
      "r622",
      "r871"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesProvisionforIncomeTaxesDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "Deferred Income Tax Expense (Benefit)",
        "totalLabel": "Deferred income tax expense (benefit)"
       }
      }
     },
     "localname": "DeferredIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesProvisionforIncomeTaxesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred Income Tax Expense (Benefit), Continuing Operations [Abstract]",
        "terseLabel": "Deferred:"
       }
      }
     },
     "localname": "DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesProvisionforIncomeTaxesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DeferredIncomeTaxLiabilities": {
     "auth_ref": [
      "r5",
      "r6",
      "r197",
      "r209",
      "r607"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_DeferredTaxAssetsLiabilitiesNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences.",
        "label": "Deferred Tax Liabilities, Gross",
        "negatedTotalLabel": "Long-term deferred tax liabilities"
       }
      }
     },
     "localname": "DeferredIncomeTaxLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxLiabilitiesNet": {
     "auth_ref": [
      "r595",
      "r596"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS": {
       "order": 6.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting.",
        "label": "Deferred Income Tax Liabilities, Net",
        "terseLabel": "Deferred income taxes"
       }
      }
     },
     "localname": "DeferredIncomeTaxLiabilitiesNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxesAndTaxCredits": {
     "auth_ref": [
      "r60"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred income tax expense (benefit) and income tax credits.",
        "label": "Deferred Income Taxes and Tax Credits",
        "terseLabel": "Deferred income taxes"
       }
      }
     },
     "localname": "DeferredIncomeTaxesAndTaxCredits",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r871",
      "r955",
      "r956"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesProvisionforIncomeTaxesDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_DeferredIncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction.",
        "label": "Deferred State and Local Income Tax Expense (Benefit)",
        "terseLabel": "State"
       }
      }
     },
     "localname": "DeferredStateAndLocalIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesProvisionforIncomeTaxesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets": {
     "auth_ref": [],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail": {
       "order": 3.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from intangible assets including goodwill.",
        "label": "Deferred Tax Assets, Goodwill and Intangible Assets",
        "terseLabel": "Intangibles"
       }
      }
     },
     "localname": "DeferredTaxAssetsGoodwillAndIntangibleAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsGross": {
     "auth_ref": [
      "r608"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_DeferredTaxAssetsNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.",
        "label": "Deferred Tax Assets, Gross",
        "totalLabel": "Long-term deferred tax assets"
       }
      }
     },
     "localname": "DeferredTaxAssetsGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsInventory": {
     "auth_ref": [
      "r133",
      "r953"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from inventory.",
        "label": "Deferred Tax Assets, Inventory",
        "terseLabel": "Inventories"
       }
      }
     },
     "localname": "DeferredTaxAssetsInventory",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsLiabilitiesNet": {
     "auth_ref": [
      "r952"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, without jurisdictional netting.",
        "label": "Deferred Tax Assets, Net",
        "totalLabel": "Net deferred tax assets"
       }
      }
     },
     "localname": "DeferredTaxAssetsLiabilitiesNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsNet": {
     "auth_ref": [
      "r952"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_DeferredTaxLiabilities",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.",
        "label": "Deferred Tax Assets, Net of Valuation Allowance",
        "totalLabel": "Net deferred tax assets"
       }
      }
     },
     "localname": "DeferredTaxAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsNetAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred Tax Assets, Net [Abstract]",
        "terseLabel": "Deferred Tax Assets"
       }
      }
     },
     "localname": "DeferredTaxAssetsNetAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DeferredTaxAssetsOperatingLossCarryforwards": {
     "auth_ref": [
      "r133",
      "r953"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail": {
       "order": 6.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible operating loss carryforwards.",
        "label": "Deferred Tax Assets, Operating Loss Carryforwards",
        "terseLabel": "Deferred tax assets, net operating loss carryforwards",
        "verboseLabel": "Net operating loss carryforwards"
       }
      }
     },
     "localname": "DeferredTaxAssetsOperatingLossCarryforwards",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsOther": {
     "auth_ref": [
      "r133",
      "r953"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary differences, classified as other.",
        "label": "Deferred Tax Assets, Other",
        "terseLabel": "Other"
       }
      }
     },
     "localname": "DeferredTaxAssetsOther",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment": {
     "auth_ref": [],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail": {
       "order": 7.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from property, plant, and equipment.",
        "label": "Deferred Tax Assets, Property, Plant and Equipment",
        "terseLabel": "Property and equipment"
       }
      }
     },
     "localname": "DeferredTaxAssetsPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts": {
     "auth_ref": [
      "r133",
      "r953"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail": {
       "order": 4.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary difference from allowance for credit loss on accounts receivable.",
        "label": "Deferred Tax Asset, Tax Deferred Expense, Reserve and Accrual, Accounts Receivable, Allowance for Credit Loss",
        "terseLabel": "Allowance for doubtful accounts"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsValuationAllowance": {
     "auth_ref": [
      "r609"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredTaxAssetsNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax assets for which it is more likely than not that a tax benefit will not be realized.",
        "label": "Deferred Tax Assets, Valuation Allowance",
        "negatedLabel": "Less: Valuation allowance"
       }
      }
     },
     "localname": "DeferredTaxAssetsValuationAllowance",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilities": {
     "auth_ref": [
      "r129",
      "r952"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences without jurisdictional netting.",
        "label": "Deferred Tax Liabilities, Net",
        "negatedTotalLabel": "Net deferred tax liabilities"
       }
      }
     },
     "localname": "DeferredTaxLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred Tax Liabilities, Gross [Abstract]",
        "terseLabel": "Deferred Tax Liabilities"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesDeferredExpenseReservesAndAccruals": {
     "auth_ref": [],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail": {
       "order": 3.0,
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from reserves and accruals.",
        "label": "Deferred Tax Liabilities, Deferred Expense, Reserves and Accruals",
        "negatedLabel": "Accrued liabilities and allowances"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesDeferredExpenseReservesAndAccruals",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets": {
     "auth_ref": [
      "r133",
      "r953"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail": {
       "order": 5.0,
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from intangible assets including goodwill.",
        "label": "Deferred Tax Liabilities, Goodwill and Intangible Assets",
        "negatedLabel": "Intangibles"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesGoodwillAndIntangibleAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesInvestments": {
     "auth_ref": [],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from investments (excludes investments in subsidiaries and equity method investments).",
        "label": "Deferred Tax Liabilities, Investments",
        "negatedLabel": "Investment in partnership"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesInvestments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesOther": {
     "auth_ref": [
      "r133",
      "r953"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail": {
       "order": 4.0,
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences classified as other.",
        "label": "Deferred Tax Liabilities, Other",
        "negatedLabel": "Other"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesOther",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment": {
     "auth_ref": [
      "r133",
      "r953"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from property, plant, and equipment.",
        "label": "Deferred Tax Liabilities, Property, Plant and Equipment",
        "negatedLabel": "Property and equipment"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPostretirementHealthCoverageMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Plan designed to provide postretirement health benefits to retiree or beneficiary. Includes, but is not limited to, defined benefit and defined contribution plans.",
        "label": "Postretirement Health Coverage [Member]",
        "terseLabel": "Medical IBNR Included in Accrued Compensation",
        "verboseLabel": "Health &amp; welfare plans"
       }
      }
     },
     "localname": "DefinedBenefitPostretirementHealthCoverageMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsContributionstoMultiemployerPensionsandHealthandWelfareBenefitPlansDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DefinedContributionPlanAdministrativeExpenses": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of administrative expense incurred by defined contribution plan.",
        "label": "Defined Contribution Plan, Administrative Expense",
        "terseLabel": "Administration expense related to employee contribution plan"
       }
      }
     },
     "localname": "DefinedContributionPlanAdministrativeExpenses",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DepreciationAndAmortization": {
     "auth_ref": [
      "r59",
      "r97"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 8.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The current period expense charged against earnings on long-lived, physical assets not used in production, and which are not intended for resale, to allocate or recognize the cost of such assets over their useful lives; or to record the reduction in book value of an intangible asset over the benefit period of such asset; or to reflect consumption during the period of an asset that is not used in production.",
        "label": "Depreciation, Depletion and Amortization, Nonproduction",
        "terseLabel": "Depreciation and amortization expense",
        "verboseLabel": "Depreciation and amortization of property and equipment"
       }
      }
     },
     "localname": "DepreciationAndAmortization",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS",
      "http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofDepreciationandAmortizationExpenseonPropertyandEquipmentbyIncomeStatementCategoryDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DepreciationDepletionAndAmortization": {
     "auth_ref": [
      "r59",
      "r325"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets.",
        "label": "Depreciation, Depletion and Amortization",
        "terseLabel": "Depreciation and amortization"
       }
      }
     },
     "localname": "DepreciationDepletionAndAmortization",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DerivativeAssetStatementOfFinancialPositionExtensibleEnumeration": {
     "auth_ref": [
      "r648"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates line item in statement of financial position that includes derivative asset.",
        "label": "Derivative Asset, Statement of Financial Position [Extensible Enumeration]",
        "terseLabel": "Derivative Asset, Statement of Financial Position [Extensible Enumeration]"
       }
      }
     },
     "localname": "DerivativeAssetStatementOfFinancialPositionExtensibleEnumeration",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "enumerationSetItemType"
    },
    "us-gaap_DerivativeAssets": {
     "auth_ref": [
      "r247",
      "r248",
      "r674",
      "r799"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_AssetsFairValueDisclosure",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value, after the effects of master netting arrangements, of a financial asset or other contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset. Includes assets not subject to a master netting arrangement and not elected to be offset.",
        "label": "Derivative Asset",
        "terseLabel": "Derivative financial instruments"
       }
      }
     },
     "localname": "DerivativeAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DerivativeContractTypeDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Financial instrument or contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset.",
        "label": "Derivative Contract [Domain]",
        "terseLabel": "Derivative Contract [Domain]"
       }
      }
     },
     "localname": "DerivativeContractTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesInterestRateSwapSummaryDetails",
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesNarrativeDetails",
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesOpenInterestSwapContractSummaryDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DerivativeFixedInterestRate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fixed interest rate related to the interest rate derivative.",
        "label": "Derivative, Fixed Interest Rate",
        "terseLabel": "Interest rate of derivative instruments"
       }
      }
     },
     "localname": "DerivativeFixedInterestRate",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesNarrativeDetails",
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesOpenInterestSwapContractSummaryDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DerivativeInstrumentRiskAxis": {
     "auth_ref": [
      "r166",
      "r167",
      "r170",
      "r171",
      "r799"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of derivative contract.",
        "label": "Derivative Instrument [Axis]",
        "terseLabel": "Derivative Instrument [Axis]"
       }
      }
     },
     "localname": "DerivativeInstrumentRiskAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesInterestRateSwapSummaryDetails",
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesNarrativeDetails",
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesOpenInterestSwapContractSummaryDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Derivative Instruments and Hedging Activities Disclosure [Abstract]",
        "terseLabel": "Derivative Instruments and Hedging Activities Disclosure [Abstract]"
       }
      }
     },
     "localname": "DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock": {
     "auth_ref": [
      "r172",
      "r654"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for derivative instruments and hedging activities including, but not limited to, risk management strategies, non-hedging derivative instruments, assets, liabilities, revenue and expenses, and methodologies and assumptions used in determining the amounts.",
        "label": "Derivative Instruments and Hedging Activities Disclosure [Text Block]",
        "terseLabel": "Derivatives and Hedging Activities"
       }
      }
     },
     "localname": "DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/DerivativesandHedgingActivities"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Derivative Instruments and Hedging Activities Disclosures [Line Items]",
        "terseLabel": "Derivative Instruments and Hedging Activities Disclosures [Line Items]"
       }
      }
     },
     "localname": "DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesInterestRateSwapSummaryDetails",
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesNarrativeDetails",
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesOpenInterestSwapContractSummaryDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about derivatives and hedging activities.",
        "label": "Derivative Instruments and Hedging Activities Disclosures [Table]",
        "terseLabel": "Derivative Instruments and Hedging Activities Disclosures [Table]"
       }
      }
     },
     "localname": "DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesInterestRateSwapSummaryDetails",
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesNarrativeDetails",
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesOpenInterestSwapContractSummaryDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis": {
     "auth_ref": [
      "r164",
      "r166",
      "r170"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of hedging relationship.",
        "label": "Hedging Relationship [Axis]",
        "terseLabel": "Hedging Relationship [Axis]"
       }
      }
     },
     "localname": "DerivativeInstrumentsGainLossByHedgingRelationshipAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesOpenInterestSwapContractSummaryDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DerivativeInstrumentsGainLossReclassificationFromAccumulatedOCIToIncomeEstimatedNetAmountToBeTransferred": {
     "auth_ref": [
      "r653"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The estimated value of gains (losses), net anticipated to be transferred in the future from accumulated other comprehensive income into earnings.",
        "label": "Derivative Instruments, Gain (Loss) Reclassification from Accumulated OCI to Income, Estimated Net Amount to be Transferred",
        "terseLabel": "Reclassification from accumulated other comprehensive income to interest expense"
       }
      }
     },
     "localname": "DerivativeInstrumentsGainLossReclassificationFromAccumulatedOCIToIncomeEstimatedNetAmountToBeTransferred",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DerivativeLiabilities": {
     "auth_ref": [
      "r247",
      "r248",
      "r674",
      "r799"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesFairValueDisclosure",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value, after the effects of master netting arrangements, of a financial liability or contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset. Includes liabilities not subject to a master netting arrangement and not elected to be offset.",
        "label": "Derivative Liability",
        "terseLabel": "Derivative financial instruments"
       }
      }
     },
     "localname": "DerivativeLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DerivativeLiabilityStatementOfFinancialPositionExtensibleEnumeration": {
     "auth_ref": [
      "r648"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates line item in statement of financial position that includes derivative liability.",
        "label": "Derivative Liability, Statement of Financial Position [Extensible Enumeration]",
        "terseLabel": "Derivative Liability, Statement of Financial Position [Extensible Enumeration]"
       }
      }
     },
     "localname": "DerivativeLiabilityStatementOfFinancialPositionExtensibleEnumeration",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "enumerationSetItemType"
    },
    "us-gaap_DerivativeNotionalAmount": {
     "auth_ref": [
      "r960",
      "r961"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Nominal or face amount used to calculate payment on derivative.",
        "label": "Derivative, Notional Amount",
        "terseLabel": "Notional amount of derivative instruments"
       }
      }
     },
     "localname": "DerivativeNotionalAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesNarrativeDetails",
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesOpenInterestSwapContractSummaryDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DerivativeNumberOfInstrumentsHeld": {
     "auth_ref": [
      "r161",
      "r162"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of derivative instruments of a particular group held by the entity.",
        "label": "Derivative, Number of Instruments Held",
        "terseLabel": "Number of derivatives"
       }
      }
     },
     "localname": "DerivativeNumberOfInstrumentsHeld",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesNarrativeDetails"
     ],
     "xbrltype": "integerItemType"
    },
    "us-gaap_DerivativesMethodsOfAccountingHedgingDerivatives": {
     "auth_ref": [
      "r652"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for derivatives used in hedging relationships, which may include how gains or losses are recognized and presented in the financial statements, and amortization policies for deferred amounts.",
        "label": "Derivatives, Methods of Accounting, Hedging Derivatives [Policy Text Block]",
        "terseLabel": "Derivative Instruments and Hedging Activities"
       }
      }
     },
     "localname": "DerivativesMethodsOfAccountingHedgingDerivatives",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DesignatedAsHedgingInstrumentMember": {
     "auth_ref": [
      "r164"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Derivative instrument designated as hedging instrument under Generally Accepted Accounting Principles (GAAP).",
        "label": "Designated as Hedging Instrument [Member]",
        "terseLabel": "Designated as Hedging Instrument"
       }
      }
     },
     "localname": "DesignatedAsHedgingInstrumentMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesNarrativeDetails",
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesOpenInterestSwapContractSummaryDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DisaggregationOfRevenueLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Disaggregation of Revenue [Line Items]",
        "terseLabel": "Disaggregation of Revenue [Line Items]"
       }
      }
     },
     "localname": "DisaggregationOfRevenueLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisaggregationOfRevenueTable": {
     "auth_ref": [
      "r472",
      "r814",
      "r815",
      "r816",
      "r817",
      "r818",
      "r819",
      "r820"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.",
        "label": "Disaggregation of Revenue [Table]",
        "terseLabel": "Disaggregation of Revenue [Table]"
       }
      }
     },
     "localname": "DisaggregationOfRevenueTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisaggregationOfRevenueTableTextBlock": {
     "auth_ref": [
      "r921"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.",
        "label": "Disaggregation of Revenue [Table Text Block]",
        "terseLabel": "Summary of Revenues Disaggregated by End Market and Product"
       }
      }
     },
     "localname": "DisaggregationOfRevenueTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DividendsAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information about distribution of earnings to shareholders including, but not limited to, cash, property or capital stock.",
        "label": "Dividends [Axis]",
        "terseLabel": "Dividends [Axis]"
       }
      }
     },
     "localname": "DividendsAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/StockholdersEquityScheduleofDividendsDeclaredDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DividendsCommonStockCash": {
     "auth_ref": [
      "r111"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of paid and unpaid common stock dividends declared with the form of settlement in cash.",
        "label": "Dividends, Common Stock, Cash",
        "negatedTerseLabel": "Dividends Declared ($2.16 per share)",
        "terseLabel": "Amount Declared"
       }
      }
     },
     "localname": "DividendsCommonStockCash",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY",
      "http://installedbuildingproducts.com/role/StockholdersEquityScheduleofDividendsDeclaredDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DividendsDeclaredTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of information related to dividends declared, including paid and unpaid dividends.",
        "label": "Dividends Declared [Table Text Block]",
        "terseLabel": "Schedule of Dividends"
       }
      }
     },
     "localname": "DividendsDeclaredTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/StockholdersEquityTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DividendsDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Distributions of earnings to shareholders including but not limited to cash, property or capital stock.",
        "label": "Dividends [Domain]",
        "terseLabel": "Dividends [Domain]"
       }
      }
     },
     "localname": "DividendsDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/StockholdersEquityScheduleofDividendsDeclaredDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DividendsPayableAmountPerShare": {
     "auth_ref": [
      "r64"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The per share amount of a dividend declared, but not paid, as of the financial reporting date.",
        "label": "Dividends Payable, Amount Per Share",
        "terseLabel": "First quarterly dividends payable (in dollars per share)"
       }
      }
     },
     "localname": "DividendsPayableAmountPerShare",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_DividendsPayableLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Dividends Payable [Line Items]",
        "terseLabel": "Dividends Payable [Line Items]"
       }
      }
     },
     "localname": "DividendsPayableLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/StockholdersEquityAdditionalInformationDetails",
      "http://installedbuildingproducts.com/role/StockholdersEquityScheduleofDividendsDeclaredDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DividendsPayableTable": {
     "auth_ref": [
      "r64"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A table that contains information regarding dividends that have been declared but not paid as of the financial reporting date. This information may contain the amount, amount per share, declared date, and date to be paid.",
        "label": "Dividends Payable [Table]",
        "terseLabel": "Dividends Payable [Table]"
       }
      }
     },
     "localname": "DividendsPayableTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/StockholdersEquityAdditionalInformationDetails",
      "http://installedbuildingproducts.com/role/StockholdersEquityScheduleofDividendsDeclaredDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings Per Share [Abstract]",
        "terseLabel": "Earnings Per Share:"
       }
      }
     },
     "localname": "EarningsPerShareAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareBasic": {
     "auth_ref": [
      "r263",
      "r285",
      "r286",
      "r288",
      "r289",
      "r290",
      "r296",
      "r298",
      "r303",
      "r304",
      "r305",
      "r309",
      "r665",
      "r666",
      "r763",
      "r768",
      "r804"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.",
        "label": "Earnings Per Share, Basic",
        "terseLabel": "Basic (in USD per share)"
       }
      }
     },
     "localname": "EarningsPerShareBasic",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerShareDiluted": {
     "auth_ref": [
      "r263",
      "r285",
      "r286",
      "r288",
      "r289",
      "r290",
      "r298",
      "r303",
      "r304",
      "r305",
      "r309",
      "r665",
      "r666",
      "r763",
      "r768",
      "r804"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.",
        "label": "Earnings Per Share, Diluted",
        "terseLabel": "Diluted (in USD per share)"
       }
      }
     },
     "localname": "EarningsPerShareDiluted",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerShareTextBlock": {
     "auth_ref": [
      "r306",
      "r307",
      "r308",
      "r310"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for earnings per share.",
        "label": "Earnings Per Share [Text Block]",
        "terseLabel": "Income Per Common Share"
       }
      }
     },
     "localname": "EarningsPerShareTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomePerCommonShare"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateContinuingOperations": {
     "auth_ref": [
      "r598"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.",
        "label": "Effective Income Tax Rate Reconciliation, Percent",
        "totalLabel": "Total tax expense"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateContinuingOperations",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effective Income Tax Rate Reconciliation, Percent [Abstract]",
        "terseLabel": "Percent"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate": {
     "auth_ref": [
      "r274",
      "r598",
      "r623"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail": {
       "order": 5.0,
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of domestic federal statutory tax rate applicable to pretax income (loss).",
        "label": "Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent",
        "verboseLabel": "Income tax at federal statutory rate"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance": {
     "auth_ref": [
      "r950",
      "r957"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to changes in the valuation allowance for deferred tax assets.",
        "label": "Effective Income Tax Rate Reconciliation, Change in Deferred Tax Assets Valuation Allowance, Percent",
        "terseLabel": "Change in valuation allowance"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost": {
     "auth_ref": [
      "r950",
      "r957"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying domestic federal statutory income tax rate to pretax income (loss) from continuing operation, attributable to nondeductible expense for share-based payment arrangement.",
        "label": "Effective Income Tax Rate Reconciliation, Nondeductible Expense, Share-Based Payment Arrangement, Percent",
        "terseLabel": "Stock compensation"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent": {
     "auth_ref": [],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail": {
       "order": 6.0,
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of the difference, between reported income tax expense (benefit) and the expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations, that is attributable to tax exempt income, equity in earnings (loss) of an unconsolidated subsidiary, minority interest income (expense), tax holiday, disposition of a business, disposition of an asset, repatriation of foreign earnings, repatriation of foreign earnings jobs creation act of 2004, change in enacted tax rate, prior year income taxes, change in deferred tax asset valuation allowance, and other adjustments.",
        "label": "Effective Income Tax Rate Reconciliation, Other Reconciling Items, Percent",
        "terseLabel": "Other permanent items"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes": {
     "auth_ref": [
      "r950",
      "r957"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail": {
       "order": 4.0,
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations applicable to state and local income tax expense (benefit), net of federal tax expense (benefit).",
        "label": "Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Percent",
        "terseLabel": "State income taxes, net of federal benefit"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationTaxContingencies": {
     "auth_ref": [
      "r950",
      "r957"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail": {
       "order": 3.0,
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to income tax contingencies. Includes, but not limited to, domestic tax contingency, foreign tax contingency, state and local tax contingency, and other contingencies.",
        "label": "Effective Income Tax Rate Reconciliation, Tax Contingency, Percent",
        "terseLabel": "Change in uncertain tax positions"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationTaxContingencies",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EmployeeRelatedLiabilitiesCurrent": {
     "auth_ref": [
      "r19"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "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).",
        "label": "Employee-related Liabilities, Current",
        "terseLabel": "Accrued compensation"
       }
      }
     },
     "localname": "EmployeeRelatedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": {
     "auth_ref": [
      "r584"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement.",
        "label": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount",
        "terseLabel": "Unrecognized Compensation Expense on Unvested Awards"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsUnrecognizedShareBasedCompensationExpenseRelatedtoUnvestedAwardsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": {
     "auth_ref": [
      "r584"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition",
        "terseLabel": "Weighted Average Remaining Vesting Period"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsUnrecognizedShareBasedCompensationExpenseRelatedtoUnvestedAwardsDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense": {
     "auth_ref": [
      "r583"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of tax benefit for recognition of expense of award under share-based payment arrangement.",
        "label": "Share-Based Payment Arrangement, Expense, Tax Benefit",
        "terseLabel": "Share based compensation, recognized tax benefits"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeStockOptionMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share-based payment arrangement granting right, subject to vesting and other restrictions, to purchase or sell certain number of shares at predetermined price for specified period of time.",
        "label": "Share-Based Payment Arrangement, Option [Member]",
        "terseLabel": "Share-based Payment Arrangement, Option"
       }
      }
     },
     "localname": "EmployeeStockOptionMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity [Abstract]",
        "terseLabel": "Equity [Abstract]"
       }
      }
     },
     "localname": "EquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_EquityComponentDomain": {
     "auth_ref": [
      "r106",
      "r225",
      "r258",
      "r259",
      "r260",
      "r277",
      "r278",
      "r279",
      "r282",
      "r291",
      "r294",
      "r312",
      "r362",
      "r449",
      "r585",
      "r586",
      "r587",
      "r617",
      "r618",
      "r664",
      "r684",
      "r685",
      "r686",
      "r687",
      "r688",
      "r689",
      "r725",
      "r773",
      "r774",
      "r775"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc.",
        "label": "Equity Component [Domain]",
        "terseLabel": "Equity Component [Domain]"
       }
      }
     },
     "localname": "EquityComponentDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY",
      "http://installedbuildingproducts.com/role/CreditLossesAdditionalInformationDetails",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/StockholdersEquityChangeinAOCIDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EurodollarMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Interest rate based on U.S. dollar denominated deposits at foreign banks or foreign branches of U.S. banks.",
        "label": "Eurodollar [Member]",
        "terseLabel": "Eurodollar"
       }
      }
     },
     "localname": "EurodollarMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]",
        "terseLabel": "Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]"
       }
      }
     },
     "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable": {
     "auth_ref": [
      "r668",
      "r669",
      "r672"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about asset and liability measured at fair value on recurring and nonrecurring basis.",
        "label": "Fair Value, Recurring and Nonrecurring [Table]",
        "terseLabel": "Fair Value, Recurring and Nonrecurring [Table]"
       }
      }
     },
     "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]",
        "terseLabel": "Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]"
       }
      }
     },
     "localname": "FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairvaluemeasurementsSummaryofChangeinFairValueofContingentConsiderationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]",
        "terseLabel": "Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]"
       }
      }
     },
     "localname": "FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairValuemeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueByBalanceSheetGroupingTable": {
     "auth_ref": [
      "r173",
      "r180",
      "r181"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about the fair value of financial instruments, including financial assets and financial liabilities, and the measurements of those instruments, assets, and liabilities.",
        "label": "Fair Value, by Balance Sheet Grouping [Table]",
        "terseLabel": "Fair Value, by Balance Sheet Grouping [Table]"
       }
      }
     },
     "localname": "FairValueByBalanceSheetGroupingTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairValuemeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueByBalanceSheetGroupingTextBlock": {
     "auth_ref": [
      "r173",
      "r180"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the fair value of financial instruments, including financial assets and financial liabilities, and the measurements of those instruments, assets, and liabilities.",
        "label": "Fair Value, by Balance Sheet Grouping [Table Text Block]",
        "terseLabel": "Summary of Carrying Values and Associated Fair Values of Financial Assets and Liabilities"
       }
      }
     },
     "localname": "FairValueByBalanceSheetGroupingTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairValueMeasurementsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FairValueByFairValueHierarchyLevelAxis": {
     "auth_ref": [
      "r426",
      "r501",
      "r502",
      "r503",
      "r504",
      "r505",
      "r506",
      "r669",
      "r735",
      "r736",
      "r737",
      "r809",
      "r810",
      "r821",
      "r822",
      "r823"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by level within fair value hierarchy and fair value measured at net asset value per share as practical expedient.",
        "label": "Fair Value Hierarchy and NAV [Axis]",
        "terseLabel": "Fair Value Hierarchy and NAV [Axis]"
       }
      }
     },
     "localname": "FairValueByFairValueHierarchyLevelAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail",
      "http://installedbuildingproducts.com/role/FairValuemeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueByMeasurementBasisAxis": {
     "auth_ref": [
      "r173",
      "r177",
      "r426",
      "r809",
      "r810"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by measurement basis.",
        "label": "Measurement Basis [Axis]",
        "terseLabel": "Measurement Basis [Axis]"
       }
      }
     },
     "localname": "FairValueByMeasurementBasisAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairValuemeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueDisclosureItemAmountsDomain": {
     "auth_ref": [
      "r426",
      "r809",
      "r810"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Measurement basis, for example, but not limited to, reported value, fair value, portion at fair value, portion at other than fair value.",
        "label": "Fair Value Measurement [Domain]",
        "terseLabel": "Fair Value Measurement [Domain]"
       }
      }
     },
     "localname": "FairValueDisclosureItemAmountsDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairValuemeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueDisclosuresAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value Disclosures [Abstract]",
        "terseLabel": "Fair Value Disclosures [Abstract]"
       }
      }
     },
     "localname": "FairValueDisclosuresAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueDisclosuresTextBlock": {
     "auth_ref": [
      "r671"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for the fair value of financial instruments (as defined), including financial assets and financial liabilities (collectively, as defined), and the measurements of those instruments as well as disclosures related to the fair value of non-financial assets and liabilities. Such disclosures about the financial instruments, assets, and liabilities would include: (1) the fair value of the required items together with their carrying amounts (as appropriate); (2) for items for which it is not practicable to estimate fair value, disclosure would include: (a) information pertinent to estimating fair value (including, carrying amount, effective interest rate, and maturity, and (b) the reasons why it is not practicable to estimate fair value; (3) significant concentrations of credit risk including: (a) information about the activity, region, or economic characteristics identifying a concentration, (b) the maximum amount of loss the entity is exposed to based on the gross fair value of the related item, (c) policy for requiring collateral or other security and information as to accessing such collateral or security, and (d) the nature and brief description of such collateral or security; (4) quantitative information about market risks and how such risks are managed; (5) for items measured on both a recurring and nonrecurring basis information regarding the inputs used to develop the fair value measurement; and (6) for items presented in the financial statement for which fair value measurement is elected: (a) information necessary to understand the reasons for the election, (b) discussion of the effect of fair value changes on earnings, (c) a description of [similar groups] items for which the election is made and the relation thereof to the balance sheet, the aggregate carrying value of items included in the balance sheet that are not eligible for the election; (7) all other required (as defined) and desired information.",
        "label": "Fair Value Disclosures [Text Block]",
        "terseLabel": "Fair Value Measurements"
       }
      }
     },
     "localname": "FairValueDisclosuresTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairValueMeasurements"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FairValueInputsLevel1Member": {
     "auth_ref": [
      "r426",
      "r501",
      "r506",
      "r669",
      "r735",
      "r821",
      "r822",
      "r823"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Quoted prices in active markets for identical assets or liabilities that the reporting entity can access at the measurement date.",
        "label": "Fair Value, Inputs, Level 1 [Member]",
        "terseLabel": "Level\u00a01"
       }
      }
     },
     "localname": "FairValueInputsLevel1Member",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueInputsLevel2Member": {
     "auth_ref": [
      "r426",
      "r501",
      "r506",
      "r669",
      "r736",
      "r809",
      "r810",
      "r821",
      "r822",
      "r823"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Inputs other than quoted prices included within level 1 that are observable for an asset or liability, either directly or indirectly, including, but not limited to, quoted prices for similar assets or liabilities in active markets, or quoted prices for identical or similar assets or liabilities in inactive markets.",
        "label": "Fair Value, Inputs, Level 2 [Member]",
        "terseLabel": "Level\u00a02"
       }
      }
     },
     "localname": "FairValueInputsLevel2Member",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail",
      "http://installedbuildingproducts.com/role/FairValuemeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueInputsLevel3Member": {
     "auth_ref": [
      "r426",
      "r501",
      "r502",
      "r503",
      "r504",
      "r505",
      "r506",
      "r669",
      "r737",
      "r809",
      "r810",
      "r821",
      "r822",
      "r823"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.",
        "label": "Fair Value, Inputs, Level 3 [Member]",
        "terseLabel": "Level\u00a03"
       }
      }
     },
     "localname": "FairValueInputsLevel3Member",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock": {
     "auth_ref": [
      "r174",
      "r176"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the fair value measurement of liabilities using significant unobservable inputs (Level 3), a reconciliation of the beginning and ending balances, separately presenting changes attributable to the following: (1) total gains or losses for the period (realized and unrealized), segregating those gains or losses included in earnings (or changes in net assets), and gains or losses recognized in other comprehensive income (loss) and a description of where those gains or losses included in earnings (or changes in net assets) are reported in the statement of income (or activities); (2) purchases, sales, issues, and settlements (each type disclosed separately); and (3) transfers in and transfers out of Level 3 (for example, transfers due to changes in the observability of significant inputs) by class of liability.",
        "label": "Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation [Table Text Block]",
        "terseLabel": "Change in Fair Value of the Contingent Consideration"
       }
      }
     },
     "localname": "FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairValueMeasurementsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings": {
     "auth_ref": [
      "r670"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of gain (loss) recognized in income from liability measured at fair value on recurring basis using unobservable input (level 3).",
        "label": "Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability, Gain (Loss) Included in Earnings",
        "terseLabel": "Fair value adjustments"
       }
      }
     },
     "localname": "FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairvaluemeasurementsSummaryofChangeinFairValueofContingentConsiderationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases": {
     "auth_ref": [
      "r175"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of purchases of financial instrument classified as a liability measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.",
        "label": "Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability, Purchases",
        "terseLabel": "Preliminary purchase price"
       }
      }
     },
     "localname": "FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairvaluemeasurementsSummaryofChangeinFairValueofContingentConsiderationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchasesSalesIssuancesSettlements": {
     "auth_ref": [
      "r175"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of purchases, (sales), issuances and (settlements) of financial instrument classified as a liability measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.",
        "label": "Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability, Purchases, (Sales), Issuances, (Settlements)",
        "negatedTerseLabel": "Amounts paid to sellers"
       }
      }
     },
     "localname": "FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchasesSalesIssuancesSettlements",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairvaluemeasurementsSummaryofChangeinFairValueofContingentConsiderationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements": {
     "auth_ref": [
      "r175"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of settlements of financial instrument classified as a liability measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.",
        "label": "Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability, Settlements",
        "negatedLabel": "Settlement adjustments"
       }
      }
     },
     "localname": "FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairvaluemeasurementsSummaryofChangeinFairValueofContingentConsiderationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue": {
     "auth_ref": [
      "r174"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value of financial instrument classified as a liability measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.",
        "label": "Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability Value",
        "periodEndLabel": "Ending Balance",
        "periodStartLabel": "Beginning Balance"
       }
      }
     },
     "localname": "FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairvaluemeasurementsSummaryofChangeinFairValueofContingentConsiderationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": {
     "auth_ref": [
      "r426",
      "r501",
      "r502",
      "r503",
      "r504",
      "r505",
      "r506",
      "r735",
      "r736",
      "r737",
      "r809",
      "r810",
      "r821",
      "r822",
      "r823"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Categories used to prioritize the inputs to valuation techniques to measure fair value.",
        "label": "Fair Value Hierarchy and NAV [Domain]",
        "terseLabel": "Fair Value Hierarchy and NAV [Domain]"
       }
      }
     },
     "localname": "FairValueMeasurementsFairValueHierarchyDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail",
      "http://installedbuildingproducts.com/role/FairValuemeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueOfFinancialInstrumentsPolicy": {
     "auth_ref": [
      "r178",
      "r179"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for determining the fair value of financial instruments.",
        "label": "Fair Value of Financial Instruments, Policy [Policy Text Block]",
        "terseLabel": "Fair Values"
       }
      }
     },
     "localname": "FairValueOfFinancialInstrumentsPolicy",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FairValueRecurringBasisUnobservableInputReconciliationLiabilityGainLossStatementOfIncomeExtensibleList": {
     "auth_ref": [
      "r670"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates line item in statement in which net income is reported that includes gain (loss) from liability measured at fair value using unobservable input (level 3).",
        "label": "Fair Value, Liability, Recurring Basis, Unobservable Input Reconciliation, Gain (Loss), Statement of Income or Comprehensive Income [Extensible Enumeration]",
        "terseLabel": "Fair Value, Liability, Recurring Basis, Unobservable Input Reconciliation, Gain (Loss), Statement of Income or Comprehensive Income [Extensible Enumeration]"
       }
      }
     },
     "localname": "FairValueRecurringBasisUnobservableInputReconciliationLiabilityGainLossStatementOfIncomeExtensibleList",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairvaluemeasurementsSummaryofChangeinFairValueofContingentConsiderationDetail"
     ],
     "xbrltype": "enumerationSetItemType"
    },
    "us-gaap_FinanceLeaseInterestExpense": {
     "auth_ref": [
      "r703",
      "r709",
      "r838"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/LeasesLeaseCostFinanceandOperatingLeasesDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_LeaseCost",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of interest expense on finance lease liability.",
        "label": "Finance Lease, Interest Expense",
        "verboseLabel": "Interest on finance lease obligations"
       }
      }
     },
     "localname": "FinanceLeaseInterestExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesLeaseCostFinanceandOperatingLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseInterestPaymentOnLiability": {
     "auth_ref": [
      "r705",
      "r713"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of interest paid on finance lease liability.",
        "label": "Finance Lease, Interest Payment on Liability",
        "verboseLabel": "Operating cash flows for finance leases"
       }
      }
     },
     "localname": "FinanceLeaseInterestPaymentOnLiability",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalCashFlowInformationRelatedtoLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiability": {
     "auth_ref": [
      "r701",
      "r718"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail_1": {
       "order": 1.0,
       "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease.",
        "label": "Finance Lease, Liability",
        "totalLabel": "Present value of future minimum lease payments"
       }
      }
     },
     "localname": "FinanceLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finance Lease, Liability [Abstract]",
        "terseLabel": "Finance\u00a0Leases"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FinanceLeaseLiabilityCurrent": {
     "auth_ref": [
      "r701"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS": {
       "order": 5.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      },
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_FinanceLeaseLiability",
       "weight": 1.0
      },
      "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails": {
       "order": 4.0,
       "parentTag": "ibp_LeaseLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease, classified as current.",
        "label": "Finance Lease, Liability, Current",
        "negatedTerseLabel": "Less: Current obligation under leases",
        "terseLabel": "Current maturities of finance lease obligations",
        "verboseLabel": "Financing"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS",
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail",
      "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock": {
     "auth_ref": [
      "r969"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of undiscounted cash flows of finance lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to finance lease liability recognized in statement of financial position.",
        "label": "Finance Lease, Liability, Fiscal Year Maturity [Table Text Block]",
        "terseLabel": "Schedule of Undiscounted Cash Flows Finance Lease Obligations"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityMaturityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FinanceLeaseLiabilityNoncurrent": {
     "auth_ref": [
      "r701"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS": {
       "order": 3.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      },
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_FinanceLeaseLiability",
       "weight": 1.0
      },
      "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails": {
       "order": 2.0,
       "parentTag": "ibp_LeaseLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease, classified as noncurrent.",
        "label": "Finance Lease, Liability, Noncurrent",
        "terseLabel": "Finance lease obligations",
        "verboseLabel": "Long-term lease obligations"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS",
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail",
      "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDue": {
     "auth_ref": [
      "r718"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail_1": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for finance lease.",
        "label": "Finance Lease, Liability, to be Paid",
        "totalLabel": "Total minimum lease payments"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityPaymentsDue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive": {
     "auth_ref": [
      "r718"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail": {
       "order": 3.0,
       "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finance Lease, Liability, to be Paid, after Year Five",
        "terseLabel": "Thereafter"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityPaymentsDueAfterYearFive",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths": {
     "auth_ref": [
      "r718"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail": {
       "order": 4.0,
       "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finance Lease, Liability, to be Paid, Year One",
        "terseLabel": "2023"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityPaymentsDueNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive": {
     "auth_ref": [
      "r718"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finance Lease, Liability, to be Paid, Year Five",
        "terseLabel": "2027"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityPaymentsDueYearFive",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour": {
     "auth_ref": [
      "r718"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail": {
       "order": 5.0,
       "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finance Lease, Liability, to be Paid, Year Four",
        "terseLabel": "2026"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityPaymentsDueYearFour",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree": {
     "auth_ref": [
      "r718"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finance Lease, Liability, to be Paid, Year Three",
        "terseLabel": "2025"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityPaymentsDueYearThree",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo": {
     "auth_ref": [
      "r718"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail": {
       "order": 6.0,
       "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finance Lease, Liability, to be Paid, Year Two",
        "terseLabel": "2024"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityPaymentsDueYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount": {
     "auth_ref": [
      "r718"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail_1": {
       "order": 3.0,
       "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for finance lease.",
        "label": "Finance Lease, Liability, Undiscounted Excess Amount",
        "negatedTerseLabel": "Less: Amounts representing interest"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityUndiscountedExcessAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeasePrincipalPayments": {
     "auth_ref": [
      "r704",
      "r713"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow for principal payment on finance lease.",
        "label": "Finance Lease, Principal Payments",
        "negatedLabel": "Principal payments on finance lease obligations",
        "verboseLabel": "Financing cash flows for finance leases"
       }
      }
     },
     "localname": "FinanceLeasePrincipalPayments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS",
      "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalCashFlowInformationRelatedtoLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseRightOfUseAsset": {
     "auth_ref": [
      "r700"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails": {
       "order": 2.0,
       "parentTag": "ibp_LeaseAssets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after accumulated amortization, of right-of-use asset from finance lease.",
        "label": "Finance Lease, Right-of-Use Asset, after Accumulated Amortization",
        "verboseLabel": "Finance"
       }
      }
     },
     "localname": "FinanceLeaseRightOfUseAsset",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseRightOfUseAssetAmortization": {
     "auth_ref": [
      "r703",
      "r709",
      "r838"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/LeasesLeaseCostFinanceandOperatingLeasesDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_LeaseCost",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization expense attributable to right-of-use asset from finance lease.",
        "label": "Finance Lease, Right-of-Use Asset, Amortization",
        "terseLabel": "Amortization of leased assets"
       }
      }
     },
     "localname": "FinanceLeaseRightOfUseAssetAmortization",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesLeaseCostFinanceandOperatingLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList": {
     "auth_ref": [
      "r702"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates line item in statement of financial position that includes finance lease right-of-use asset.",
        "label": "Finance Lease, Right-of-Use Asset, Statement of Financial Position [Extensible Enumeration]",
        "terseLabel": "Finance Lease, Right-of-Use Asset, Statement of Financial Position [Extensible List]"
       }
      }
     },
     "localname": "FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails"
     ],
     "xbrltype": "enumerationSetItemType"
    },
    "us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent": {
     "auth_ref": [
      "r716",
      "r838"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average discount rate for finance lease calculated at point in time.",
        "label": "Finance Lease, Weighted Average Discount Rate, Percent",
        "terseLabel": "Finance leases (as percent)"
       }
      }
     },
     "localname": "FinanceLeaseWeightedAverageDiscountRatePercent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1": {
     "auth_ref": [
      "r715",
      "r838"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average remaining lease term for finance lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Finance Lease, Weighted Average Remaining Lease Term",
        "terseLabel": "Finance leases (in years)"
       }
      }
     },
     "localname": "FinanceLeaseWeightedAverageRemainingLeaseTerm1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Financing Receivable, Allowance for Credit Loss [Line Items]",
        "terseLabel": "Financing Receivable, Allowance for Credit Loss [Line Items]"
       }
      }
     },
     "localname": "FinancingReceivableAllowanceForCreditLossesLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CreditLossesAdditionalInformationDetails",
      "http://installedbuildingproducts.com/role/CreditLossesScheduleofChangesinAllowanceforCreditLossesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedAndIndefiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of finite-lived and indefinite-lived intangible assets acquired as part of a business combination.",
        "label": "Finite-Lived and Indefinite-Lived Intangible Assets Acquired as Part of Business Combination [Table Text Block]",
        "terseLabel": "Estimates of Acquired Intangible Assets"
       }
      }
     },
     "localname": "FiniteLivedAndIndefiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetUsefulLife": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Finite-Lived Intangible Asset, Useful Life",
        "terseLabel": "Estimated useful life"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetUsefulLife",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": {
     "auth_ref": [
      "r236",
      "r392"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Finite-Lived Intangible Assets, Accumulated Amortization",
        "terseLabel": "Accumulated Amortization"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable": {
     "auth_ref": [
      "r89"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A table containing detailed characteristics of finite-lived intangible assets acquired during a business combination. Finite-lived intangible assets are assets that have no physical form, but have expected future economic benefit, and are expected to be used over a defined period. Acquired finite-lived intangible assets are disclosed by major class (assets that can be grouped together because they are similar, either by their nature or by their use in operations of the Entity) and in total. Additionally, any significant residual value (the expected value of the asset at the end of its useful life) and the weighted-average amortization period are also disclosed.",
        "label": "Finite-Lived Intangible Assets Acquired as Part of Business Combination [Table]",
        "terseLabel": "Finite-Lived Intangible Assets Acquired as Part of Business Combination [Table]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsEstimatesofAcquiredIntangibleAssetsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for asset, excluding financial asset and goodwill, lacking physical substance with finite life expected to be recognized after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, after Year Five",
        "terseLabel": "Thereafter"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofEstimatedAggregateAnnualAmortizationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": {
     "auth_ref": [
      "r94"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Year One",
        "terseLabel": "2023"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofEstimatedAggregateAnnualAmortizationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive": {
     "auth_ref": [
      "r94"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Five",
        "terseLabel": "2027"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFive",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofEstimatedAggregateAnnualAmortizationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": {
     "auth_ref": [
      "r94"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Four",
        "terseLabel": "2026"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofEstimatedAggregateAnnualAmortizationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": {
     "auth_ref": [
      "r94"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Three",
        "terseLabel": "2025"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofEstimatedAggregateAnnualAmortizationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": {
     "auth_ref": [
      "r94"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Two",
        "terseLabel": "2024"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofEstimatedAggregateAnnualAmortizationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": {
     "auth_ref": [
      "r389",
      "r391",
      "r392",
      "r393",
      "r744",
      "r748"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by major type or class of finite-lived intangible assets.",
        "label": "Finite-Lived Intangible Assets by Major Class [Axis]",
        "terseLabel": "Finite-Lived Intangible Assets by Major Class [Axis]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsEstimatesofAcquiredIntangibleAssetsDetail",
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS",
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsGross": {
     "auth_ref": [
      "r92",
      "r748"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Finite-Lived Intangible Assets, Gross",
        "terseLabel": "Gross Carrying Amount"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Finite-Lived Intangible Assets [Line Items]",
        "terseLabel": "Finite-Lived Intangible Assets [Line Items]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "auth_ref": [
      "r89",
      "r91"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The major class of finite-lived intangible asset (for example, patents, trademarks, copyrights, etc.) A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of a company.",
        "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]",
        "terseLabel": "Finite-Lived Intangible Assets, Major Class Name [Domain]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsEstimatesofAcquiredIntangibleAssetsDetail",
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS",
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsNet": {
     "auth_ref": [
      "r92",
      "r744"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS": {
       "order": 1.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      },
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Finite-Lived Intangible Assets, Net",
        "terseLabel": "Intangible assets",
        "totalLabel": "Net Book Value"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS",
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Assets, Net, Amortization Expense, Rolling Maturity [Abstract]",
        "terseLabel": "Finite Lived Intangible Assets Net Amortization Expense Rolling Maturity [Abstract]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofEstimatedAggregateAnnualAmortizationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsPeriodIncreaseDecrease": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in carrying value of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Finite-Lived Intangible Assets, Period Increase (Decrease)",
        "terseLabel": "Increase in gross carrying amount of intangibles"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsPeriodIncreaseDecrease",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinitelivedIntangibleAssetsAcquired1": {
     "auth_ref": [
      "r390"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase in assets, excluding financial assets, lacking physical substance with a definite life, from an acquisition.",
        "label": "Finite-Lived Intangible Assets Acquired",
        "terseLabel": "Estimated Fair Value"
       }
      }
     },
     "localname": "FinitelivedIntangibleAssetsAcquired1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsEstimatesofAcquiredIntangibleAssetsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FurnitureAndFixturesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Equipment commonly used in offices and stores that have no permanent connection to the structure of a building or utilities. Examples include, but are not limited to, desks, chairs, tables, and bookcases.",
        "label": "Furniture and Fixtures [Member]",
        "terseLabel": "Furniture, fixtures and equipment"
       }
      }
     },
     "localname": "FurnitureAndFixturesMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_GainLossOnDispositionOfAssets": {
     "auth_ref": [
      "r868",
      "r906",
      "r910"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of gain (loss) on sale or disposal of property, plant and equipment assets, excluding oil and gas property and timber property.",
        "label": "Gain (Loss) on Disposition of Property Plant Equipment, Excluding Oil and Gas Property and Timber Property",
        "negatedLabel": "Gain on sale of property and equipment"
       }
      }
     },
     "localname": "GainLossOnDispositionOfAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GeneralAndAdministrativeExpense": {
     "auth_ref": [
      "r42"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME": {
       "order": 3.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate total of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line.",
        "label": "General and Administrative Expense",
        "terseLabel": "Administrative"
       }
      }
     },
     "localname": "GeneralAndAdministrativeExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GeneralAndAdministrativeExpenseMember": {
     "auth_ref": [
      "r37"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Primary financial statement caption encompassing general and administrative expense.",
        "label": "General and Administrative Expense [Member]",
        "terseLabel": "Administrative"
       }
      }
     },
     "localname": "GeneralAndAdministrativeExpenseMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofStockCompensationExpenseDetail",
      "http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofDepreciationandAmortizationExpenseonPropertyandEquipmentbyIncomeStatementCategoryDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_GeneralLiabilityMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Type of business insurance which provides insurance coverage for a wide variety of liability exposures including, but not limited to, contractual liability, product liability and personal injury liability.",
        "label": "General Liability [Member]",
        "terseLabel": "General Liability"
       }
      }
     },
     "localname": "GeneralLiabilityMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_Goodwill": {
     "auth_ref": [
      "r235",
      "r375",
      "r761",
      "r807",
      "r839",
      "r894",
      "r901"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail": {
       "order": 7.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": 1.0
      },
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS": {
       "order": 2.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      },
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.",
        "label": "Goodwill",
        "terseLabel": "Goodwill",
        "totalLabel": "Goodwill (net)",
        "verboseLabel": "Goodwill"
       }
      }
     },
     "localname": "Goodwill",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail",
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS",
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillAcquiredDuringPeriod": {
     "auth_ref": [
      "r378",
      "r807"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase in asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized resulting from a business combination.",
        "label": "Goodwill, Acquired During Period",
        "terseLabel": "Business combinations"
       }
      }
     },
     "localname": "GoodwillAcquiredDuringPeriod",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Goodwill and Intangible Assets Disclosure [Abstract]",
        "terseLabel": "Goodwill and Intangible Assets Disclosure [Abstract]"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock": {
     "auth_ref": [
      "r95"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for goodwill and intangible assets.",
        "label": "Goodwill and Intangible Assets Disclosure [Text Block]",
        "terseLabel": "Goodwill and Intangibles"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/GoodwillandIntangibles"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy": {
     "auth_ref": [
      "r387",
      "r388",
      "r807"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for goodwill. This accounting policy also may address how an entity assesses and measures impairment of goodwill, how reporting units are determined, how goodwill is allocated to such units, and how the fair values of the reporting units are determined.",
        "label": "Goodwill and Intangible Assets, Goodwill, Policy [Policy Text Block]",
        "terseLabel": "Goodwill"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsGoodwillPolicy",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_GoodwillGross": {
     "auth_ref": [
      "r377",
      "r384",
      "r807"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_Goodwill",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.",
        "label": "Goodwill, Gross",
        "periodEndLabel": "Goodwill (Gross), ending balance",
        "periodStartLabel": "Goodwill (Gross), beginning balance"
       }
      }
     },
     "localname": "GoodwillGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillImpairedAccumulatedImpairmentLoss": {
     "auth_ref": [
      "r377",
      "r384",
      "r807"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_Goodwill",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of accumulated impairment loss for an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.",
        "label": "Goodwill, Impaired, Accumulated Impairment Loss",
        "negatedTerseLabel": "Accumulated impairment losses"
       }
      }
     },
     "localname": "GoodwillImpairedAccumulatedImpairmentLoss",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillImpairmentLoss": {
     "auth_ref": [
      "r59",
      "r376",
      "r381",
      "r387",
      "r807"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of loss from the write-down of an asset representing the future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.",
        "label": "Goodwill, Impairment Loss",
        "terseLabel": "Goodwill impairment"
       }
      }
     },
     "localname": "GoodwillImpairmentLoss",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Goodwill [Line Items]",
        "terseLabel": "Goodwill [Line Items]"
       }
      }
     },
     "localname": "GoodwillLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_GoodwillOtherIncreaseDecrease": {
     "auth_ref": [
      "r383"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease), classified as other, of an asset representing the future economic benefits from other assets acquired in a business combination that are not individually identified and separately recognized.",
        "label": "Goodwill, Other Increase (Decrease)",
        "terseLabel": "Other additions"
       }
      }
     },
     "localname": "GoodwillOtherIncreaseDecrease",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillPurchaseAccountingAdjustments": {
     "auth_ref": [
      "r137",
      "r900"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) from adjustments after acquisition date under purchase accounting of an asset representing the future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.",
        "label": "Goodwill, Purchase Accounting Adjustments",
        "terseLabel": "Goodwill adjustments"
       }
      }
     },
     "localname": "GoodwillPurchaseAccountingAdjustments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillRollForward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Goodwill [Roll Forward]",
        "terseLabel": "Goodwill [Roll Forward]"
       }
      }
     },
     "localname": "GoodwillRollForward",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_GranteeStatusAxis": {
     "auth_ref": [
      "r550",
      "r552",
      "r554",
      "r555",
      "r556",
      "r558",
      "r559",
      "r560",
      "r561",
      "r562",
      "r563",
      "r564",
      "r565",
      "r566",
      "r567",
      "r568",
      "r569",
      "r570",
      "r571",
      "r572",
      "r573",
      "r574",
      "r575",
      "r578",
      "r579",
      "r580",
      "r581",
      "r582"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by status of recipient to whom award is granted.",
        "label": "Grantee Status [Axis]",
        "terseLabel": "Grantee Status [Axis]"
       }
      }
     },
     "localname": "GranteeStatusAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_GranteeStatusDomain": {
     "auth_ref": [
      "r550",
      "r552",
      "r554",
      "r555",
      "r556",
      "r558",
      "r559",
      "r560",
      "r561",
      "r562",
      "r563",
      "r564",
      "r565",
      "r566",
      "r567",
      "r568",
      "r569",
      "r570",
      "r571",
      "r572",
      "r573",
      "r574",
      "r575",
      "r578",
      "r579",
      "r580",
      "r581",
      "r582"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Status of recipient to whom award is granted.",
        "label": "Grantee Status [Domain]",
        "terseLabel": "Grantee Status [Domain]"
       }
      }
     },
     "localname": "GranteeStatusDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_GrossProfit": {
     "auth_ref": [
      "r40",
      "r273",
      "r330",
      "r335",
      "r341",
      "r344",
      "r357",
      "r405",
      "r406",
      "r408",
      "r409",
      "r410",
      "r412",
      "r414",
      "r416",
      "r417",
      "r675",
      "r806",
      "r915"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME": {
       "order": 1.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": 1.0
      },
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.",
        "label": "Gross Profit",
        "totalLabel": "Gross profit"
       }
      }
     },
     "localname": "GrossProfit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME",
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeAxis": {
     "auth_ref": [
      "r208",
      "r219",
      "r983"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by guarantee for guaranteed benefit obligations in traditional and nontraditional long-duration contracts with policy and contract holders.",
        "label": "Guaranteed Insurance Contract, Type of Guarantee [Axis]",
        "terseLabel": "Guaranteed Insurance Contract, Type of Guarantee [Axis]"
       }
      }
     },
     "localname": "GuaranteedInsuranceContractTypeOfGuaranteeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_GuaranteedInsuranceContractTypeOfGuaranteeDomain": {
     "auth_ref": [
      "r783",
      "r840",
      "r983"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Guarantee for guaranteed benefit obligations in traditional and nontraditional long-duration contracts with policy and contract holders.",
        "label": "Guaranteed Insurance Contract, Type of Guarantee [Domain]",
        "terseLabel": "Guaranteed Insurance Contract, Type of Guarantee [Domain]"
       }
      }
     },
     "localname": "GuaranteedInsuranceContractTypeOfGuaranteeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_HedgingDesignationAxis": {
     "auth_ref": [
      "r164",
      "r651"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by designation of purpose of derivative instrument.",
        "label": "Hedging Designation [Axis]",
        "terseLabel": "Hedging Designation [Axis]"
       }
      }
     },
     "localname": "HedgingDesignationAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesNarrativeDetails",
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesOpenInterestSwapContractSummaryDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_HedgingDesignationDomain": {
     "auth_ref": [
      "r164"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Designation of purpose of derivative instrument.",
        "label": "Hedging Designation [Domain]",
        "terseLabel": "Hedging Designation [Domain]"
       }
      }
     },
     "localname": "HedgingDesignationDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesNarrativeDetails",
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesOpenInterestSwapContractSummaryDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_HedgingRelationshipDomain": {
     "auth_ref": [
      "r164"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Nature or intent of a hedge.",
        "label": "Hedging Relationship [Domain]",
        "terseLabel": "Hedging Relationship [Domain]"
       }
      }
     },
     "localname": "HedgingRelationshipDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesOpenInterestSwapContractSummaryDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ImpairmentOfIntangibleAssetsFinitelived": {
     "auth_ref": [
      "r868",
      "r905"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of impairment loss recognized in the period resulting from the write-down of the carrying amount of a finite-lived intangible asset to fair value.",
        "label": "Impairment of Intangible Assets, Finite-Lived",
        "terseLabel": "Intangible asset impairment"
       }
      }
     },
     "localname": "ImpairmentOfIntangibleAssetsFinitelived",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ImpairmentOfLongLivedAssetsHeldForUse": {
     "auth_ref": [
      "r59",
      "r96",
      "r100"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate amount of write-downs for impairments recognized during the period for long lived assets held for use (including those held for disposal by means other than sale).",
        "label": "Impairment, Long-Lived Asset, Held-for-Use",
        "terseLabel": "Impairment of long-lived assets"
       }
      }
     },
     "localname": "ImpairmentOfLongLivedAssetsHeldForUse",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for the impairment and disposal of long-lived assets including goodwill and other intangible assets.",
        "label": "Impairment or Disposal of Long-Lived Assets, Including Intangible Assets, Policy [Policy Text Block]",
        "terseLabel": "Impairment of Other Intangible and Long-Lived Assets"
       }
      }
     },
     "localname": "ImpairmentOrDisposalOfLongLivedAssetsIncludingIntangibleAssetsPolicyPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": {
     "auth_ref": [
      "r35",
      "r193",
      "r202",
      "r218",
      "r330",
      "r335",
      "r341",
      "r344",
      "r764",
      "r806"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME": {
       "order": 1.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.",
        "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest",
        "totalLabel": "Income before income taxes"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME",
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeStatementAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Statement [Abstract]",
        "terseLabel": "Income Statement [Abstract]"
       }
      }
     },
     "localname": "IncomeStatementAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeStatementLocationAxis": {
     "auth_ref": [
      "r394",
      "r396"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by location in the income statement.",
        "label": "Income Statement Location [Axis]",
        "terseLabel": "Income Statement Location [Axis]"
       }
      }
     },
     "localname": "IncomeStatementLocationAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofStockCompensationExpenseDetail",
      "http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofDepreciationandAmortizationExpenseonPropertyandEquipmentbyIncomeStatementCategoryDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeStatementLocationDomain": {
     "auth_ref": [
      "r396"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Location in the income statement.",
        "label": "Income Statement Location [Domain]",
        "terseLabel": "Income Statement Location [Domain]"
       }
      }
     },
     "localname": "IncomeStatementLocationDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofStockCompensationExpenseDetail",
      "http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofDepreciationandAmortizationExpenseonPropertyandEquipmentbyIncomeStatementCategoryDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IncomeTaxDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Disclosure [Abstract]",
        "terseLabel": "Income Tax Disclosure [Abstract]"
       }
      }
     },
     "localname": "IncomeTaxDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "auth_ref": [
      "r274",
      "r599",
      "r605",
      "r611",
      "r619",
      "r624",
      "r626",
      "r627",
      "r628"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.",
        "label": "Income Tax Disclosure [Text Block]",
        "terseLabel": "Income Taxes"
       }
      }
     },
     "localname": "IncomeTaxDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxes"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r275",
      "r293",
      "r294",
      "r328",
      "r597",
      "r620",
      "r625",
      "r769"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME": {
       "order": 2.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0
      },
      "http://installedbuildingproducts.com/role/IncomeTaxesProvisionforIncomeTaxesDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.",
        "label": "Income Tax Expense (Benefit)",
        "terseLabel": "Income tax expense (benefit)",
        "totalLabel": "Total tax expense",
        "verboseLabel": "Income tax provision"
       }
      }
     },
     "localname": "IncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME",
      "http://installedbuildingproducts.com/role/IncomeTaxesProvisionforIncomeTaxesDetail",
      "http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Expense (Benefit), Effective Income Tax Rate Reconciliation, Amount [Abstract]",
        "terseLabel": "Amount"
       }
      }
     },
     "localname": "IncomeTaxExpenseBenefitContinuingOperationsIncomeTaxReconciliationAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxPolicyTextBlock": {
     "auth_ref": [
      "r257",
      "r593",
      "r594",
      "r605",
      "r606",
      "r610",
      "r614"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements.",
        "label": "Income Tax, Policy [Policy Text Block]",
        "terseLabel": "Income Taxes"
       }
      }
     },
     "localname": "IncomeTaxPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance": {
     "auth_ref": [
      "r950"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail": {
       "order": 4.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to increase (decrease) in the valuation allowance for deferred tax assets.",
        "label": "Effective Income Tax Rate Reconciliation, Change in Deferred Tax Assets Valuation Allowance, Amount",
        "terseLabel": "Change in valuation allowance"
       }
      }
     },
     "localname": "IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate": {
     "auth_ref": [
      "r598"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of income tax expense or benefit for the period computed by applying the domestic federal statutory tax rates to pretax income from continuing operations.",
        "label": "Effective Income Tax Rate Reconciliation at Federal Statutory Income Tax Rate, Amount",
        "terseLabel": "Income tax at federal statutory rate"
       }
      }
     },
     "localname": "IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost": {
     "auth_ref": [
      "r950"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of reported income tax expense (benefit) in excess of (less than) expected income tax expense (benefit) computed by applying domestic federal statutory income tax rate to pretax income (loss) from continuing operation, attributable to nondeductible expense for award under share-based payment arrangement. Includes, but is not limited to, expense determined to be nondeductible upon grant or after for award under share-based payment arrangement.",
        "label": "Effective Income Tax Rate Reconciliation, Nondeductible Expense, Share-Based Payment Arrangement, Amount",
        "terseLabel": "Stock compensation"
       }
      }
     },
     "localname": "IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationOtherAdjustments": {
     "auth_ref": [
      "r950"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail": {
       "order": 3.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to other adjustments.",
        "label": "Effective Income Tax Rate Reconciliation, Other Adjustments, Amount",
        "terseLabel": "Other permanent items"
       }
      }
     },
     "localname": "IncomeTaxReconciliationOtherAdjustments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes": {
     "auth_ref": [
      "r950"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail": {
       "order": 6.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to state and local income tax expense (benefit).",
        "label": "Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Amount",
        "terseLabel": "State income taxes, net of federal benefit"
       }
      }
     },
     "localname": "IncomeTaxReconciliationStateAndLocalIncomeTaxes",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationTaxContingencies": {
     "auth_ref": [
      "r950"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail": {
       "order": 5.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to increase (decrease) in income tax contingencies. Including, but not limited to, domestic tax contingency, foreign tax contingency, state and local tax contingency, and other contingencies.",
        "label": "Effective Income Tax Rate Reconciliation, Tax Contingency, Amount",
        "terseLabel": "Change in uncertain tax positions"
       }
      }
     },
     "localname": "IncomeTaxReconciliationTaxContingencies",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesReconciliationofEffectiveTaxRateonNetIncomeLossandFederalStatutoryTaxRateDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxesPaidNet": {
     "auth_ref": [
      "r63"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income, net of any cash received during the current period as refunds for the overpayment of taxes.",
        "label": "Income Taxes Paid, Net",
        "terseLabel": "Income taxes, net of refunds"
       }
      }
     },
     "localname": "IncomeTaxesPaidNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsPayable": {
     "auth_ref": [
      "r58"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 10.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Increase (Decrease) in Accounts Payable",
        "terseLabel": "Accounts payable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsPayable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "auth_ref": [
      "r58"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 6.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.",
        "label": "Increase (Decrease) in Accounts Receivable",
        "negatedLabel": "Accounts receivable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsReceivable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInIncomeTaxes": {
     "auth_ref": [
      "r867"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 14.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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, and in deferred and other tax liabilities and assets.",
        "label": "Increase (Decrease) in Income Taxes",
        "terseLabel": "Income taxes receivable/payable"
       }
      }
     },
     "localname": "IncreaseDecreaseInIncomeTaxes",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "auth_ref": [
      "r58"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 13.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.",
        "label": "Increase (Decrease) in Inventories",
        "negatedLabel": "Inventories"
       }
      }
     },
     "localname": "IncreaseDecreaseInInventories",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Operating Capital [Abstract]",
        "terseLabel": "Changes in assets and liabilities, excluding effects of acquisitions"
       }
      }
     },
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncreaseDecreaseInOtherOperatingAssets": {
     "auth_ref": [
      "r58"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 7.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in operating assets classified as other.",
        "label": "Increase (Decrease) in Other Operating Assets",
        "negatedLabel": "Other assets"
       }
      }
     },
     "localname": "IncreaseDecreaseInOtherOperatingAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInOtherOperatingLiabilities": {
     "auth_ref": [
      "r58"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 16.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in operating liabilities classified as other.",
        "label": "Increase (Decrease) in Other Operating Liabilities",
        "terseLabel": "Other liabilities"
       }
      }
     },
     "localname": "IncreaseDecreaseInOtherOperatingLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": {
     "auth_ref": [
      "r299",
      "r300",
      "r301",
      "r305",
      "r553"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Incremental Common Shares Attributable to Dilutive Effect of Share-Based Payment Arrangements",
        "terseLabel": "Dilutive effect of outstanding restricted stock awards (in shares)"
       }
      }
     },
     "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomePerCommonShareAdditionalInformationDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_InsuranceSettlementsReceivableNoncurrent": {
     "auth_ref": [
      "r856"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount due after one year of the balance sheet date (or one operating cycle, if longer) of amount due in settlement of a claim for reimbursement from an insurance company when the Company has suffered a loss covered under an insurance policy.",
        "label": "Insurance Settlements Receivable, Noncurrent",
        "terseLabel": "Included in other non-current assets",
        "totalLabel": "Total insurance receivables and indemnification assets included in other non-current assets"
       }
      }
     },
     "localname": "InsuranceSettlementsReceivableNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetail",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsScheduleofInsuranceReceivableforClaimsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestExpense": {
     "auth_ref": [
      "r187",
      "r204",
      "r261",
      "r324",
      "r693"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the cost of borrowed funds accounted for as interest expense.",
        "label": "Interest Expense",
        "terseLabel": "Other expense, net",
        "verboseLabel": "Interest expense, net"
       }
      }
     },
     "localname": "InterestExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME",
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestPaidNet": {
     "auth_ref": [
      "r266",
      "r269",
      "r270"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount.",
        "label": "Interest Paid, Excluding Capitalized Interest, Operating Activities",
        "terseLabel": "Interest"
       }
      }
     },
     "localname": "InterestPaidNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestRateSwapMember": {
     "auth_ref": [
      "r837"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Forward based contracts in which two parties agree to swap periodic payments that are fixed at the outset of the swap contract with variable payments based on a market interest rate (index rate) over a specified period.",
        "label": "Interest Rate Swap [Member]",
        "terseLabel": "Interest Rate Swap"
       }
      }
     },
     "localname": "InterestRateSwapMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesInterestRateSwapSummaryDetails",
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IntersegmentEliminationMember": {
     "auth_ref": [
      "r322",
      "r334",
      "r335",
      "r336",
      "r337",
      "r338",
      "r340",
      "r344"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Eliminating entries used in operating segment consolidation.",
        "label": "Intersegment Eliminations [Member]",
        "terseLabel": "Eliminations"
       }
      }
     },
     "localname": "IntersegmentEliminationMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_InventoryNet": {
     "auth_ref": [
      "r245",
      "r798",
      "r839"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS": {
       "order": 1.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.",
        "label": "Inventory, Net",
        "terseLabel": "Inventories"
       }
      }
     },
     "localname": "InventoryNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryPolicyTextBlock": {
     "auth_ref": [
      "r233",
      "r244",
      "r311",
      "r371",
      "r372",
      "r373",
      "r742",
      "r802"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above cost.",
        "label": "Inventory, Policy [Policy Text Block]",
        "terseLabel": "Inventories"
       }
      }
     },
     "localname": "InventoryPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investments, Debt and Equity Securities [Abstract]",
        "terseLabel": "Investments, Debt and Equity Securities [Abstract]"
       }
      }
     },
     "localname": "InvestmentsDebtAndEquitySecuritiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock": {
     "auth_ref": [
      "r86",
      "r194",
      "r205",
      "r221",
      "r795"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for investments in certain debt and equity securities.",
        "label": "Investments in Debt and Marketable Equity Securities (and Certain Trading Assets) Disclosure [Text Block]",
        "terseLabel": "Cash and Cash Equivalents"
       }
      }
     },
     "localname": "InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CashandCashEquivalents"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LandMember": {
     "auth_ref": [
      "r922"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Part of earth's surface not covered by water.",
        "label": "Land [Member]",
        "terseLabel": "Land"
       }
      }
     },
     "localname": "LandMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LeaseContractualTermAxis": {
     "auth_ref": [
      "r966"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by contractual term of lease arrangement.",
        "label": "Lease Contractual Term [Axis]",
        "terseLabel": "Lease Contractual Term [Axis]"
       }
      }
     },
     "localname": "LeaseContractualTermAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesLeaseCostFinanceandOperatingLeasesDetails",
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LeaseContractualTermDomain": {
     "auth_ref": [
      "r966"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Contractual term of lease arrangement.",
        "label": "Lease Contractual Term [Domain]",
        "terseLabel": "Lease Contractual Term [Domain]"
       }
      }
     },
     "localname": "LeaseContractualTermDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesLeaseCostFinanceandOperatingLeasesDetails",
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LeaseCost": {
     "auth_ref": [
      "r717",
      "r838"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/LeasesLeaseCostFinanceandOperatingLeasesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lease cost recognized by lessee for lease contract.",
        "label": "Lease, Cost",
        "totalLabel": "Total lease costs"
       }
      }
     },
     "localname": "LeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesLeaseCostFinanceandOperatingLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LeaseCostAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lease, Cost [Abstract]",
        "verboseLabel": "Finance lease cost"
       }
      }
     },
     "localname": "LeaseCostAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesLeaseCostFinanceandOperatingLeasesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LeaseCostTableTextBlock": {
     "auth_ref": [
      "r968"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of lessee's lease cost. Includes, but is not limited to, interest expense for finance lease, amortization of right-of-use asset for finance lease, operating lease cost, short-term lease cost, variable lease cost and sublease income.",
        "label": "Lease, Cost [Table Text Block]",
        "terseLabel": "Schedule of Lease Costs for Finance and Operating Leases"
       }
      }
     },
     "localname": "LeaseCostTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LeaseholdImprovementsMember": {
     "auth_ref": [
      "r98"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Additions or improvements to assets held under a lease arrangement.",
        "label": "Leasehold Improvements [Member]",
        "terseLabel": "Leasehold improvements"
       }
      }
     },
     "localname": "LeaseholdImprovementsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LeasesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Leases [Abstract]",
        "terseLabel": "Leases [Abstract]"
       }
      }
     },
     "localname": "LeasesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_LesseeFinanceLeasesTextBlock": {
     "auth_ref": [
      "r719"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for finance leases of lessee. Includes, but is not limited to, description of lessee's finance lease and maturity analysis of finance lease liability.",
        "label": "Lessee, Finance Leases [Text Block]",
        "terseLabel": "Leases"
       }
      }
     },
     "localname": "LesseeFinanceLeasesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/Leases"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LesseeLeaseDescriptionLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Lessee, Lease, Description [Line Items]",
        "terseLabel": "Lessee, Lease, Description [Line Items]"
       }
      }
     },
     "localname": "LesseeLeaseDescriptionLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesLeaseCostFinanceandOperatingLeasesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LesseeLeaseDescriptionTable": {
     "auth_ref": [
      "r708"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about lessee's leases.",
        "label": "Lessee, Lease, Description [Table]",
        "terseLabel": "Lessee, Lease, Description [Table]"
       }
      }
     },
     "localname": "LesseeLeaseDescriptionTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesLeaseCostFinanceandOperatingLeasesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LesseeLeasesPolicyTextBlock": {
     "auth_ref": [
      "r707"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for leasing arrangement entered into by lessee.",
        "label": "Lessee, Leases [Policy Text Block]",
        "terseLabel": "Leases"
       }
      }
     },
     "localname": "LesseeLeasesPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": {
     "auth_ref": [
      "r969"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position.",
        "label": "Lessee, Operating Lease, Liability, Maturity [Table Text Block]",
        "terseLabel": "Schedule of Undiscounted Cash Flows Operating Lease Obligations"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": {
     "auth_ref": [
      "r718"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease.",
        "label": "Lessee, Operating Lease, Liability, to be Paid",
        "totalLabel": "Total minimum lease payments"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive": {
     "auth_ref": [
      "r718"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail": {
       "order": 3.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease due after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, after Year Five",
        "terseLabel": "Thereafter"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": {
     "auth_ref": [
      "r718"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail": {
       "order": 6.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year One",
        "terseLabel": "2023"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive": {
     "auth_ref": [
      "r718"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail": {
       "order": 5.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year Five",
        "terseLabel": "2027"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFive",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": {
     "auth_ref": [
      "r718"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year Four",
        "terseLabel": "2026"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": {
     "auth_ref": [
      "r718"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year Three",
        "terseLabel": "2025"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": {
     "auth_ref": [
      "r718"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail": {
       "order": 4.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year Two",
        "terseLabel": "2024"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": {
     "auth_ref": [
      "r718"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.",
        "label": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount",
        "negatedTerseLabel": "Less: Amounts representing interest"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeasesTextBlock": {
     "auth_ref": [
      "r719"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for operating leases of lessee. Includes, but is not limited to, description of operating lease and maturity analysis of operating lease liability.",
        "label": "Lessee, Operating Leases [Text Block]",
        "terseLabel": "Leases"
       }
      }
     },
     "localname": "LesseeOperatingLeasesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/Leases"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LetterOfCreditMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "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).",
        "label": "Letter of Credit [Member]",
        "terseLabel": "Letter of Credit"
       }
      }
     },
     "localname": "LetterOfCreditMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_Liabilities": {
     "auth_ref": [
      "r18",
      "r273",
      "r357",
      "r405",
      "r406",
      "r408",
      "r409",
      "r410",
      "r412",
      "r414",
      "r416",
      "r417",
      "r642",
      "r646",
      "r647",
      "r675",
      "r805",
      "r915",
      "r974",
      "r975"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.",
        "label": "Liabilities",
        "totalLabel": "Total liabilities"
       }
      }
     },
     "localname": "Liabilities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "auth_ref": [
      "r13",
      "r200",
      "r215",
      "r839",
      "r870",
      "r892",
      "r963"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.",
        "label": "Liabilities and Equity",
        "totalLabel": "Total liabilities and stockholders\u2019 equity"
       }
      }
     },
     "localname": "LiabilitiesAndStockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities and Equity [Abstract]",
        "terseLabel": "LIABILITIES AND STOCKHOLDERS\u2019 EQUITY"
       }
      }
     },
     "localname": "LiabilitiesAndStockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesCurrent": {
     "auth_ref": [
      "r20",
      "r232",
      "r273",
      "r357",
      "r405",
      "r406",
      "r408",
      "r409",
      "r410",
      "r412",
      "r414",
      "r416",
      "r417",
      "r642",
      "r646",
      "r647",
      "r675",
      "r839",
      "r915",
      "r974",
      "r975"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS": {
       "order": 4.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.",
        "label": "Liabilities, Current",
        "totalLabel": "Total current liabilities"
       }
      }
     },
     "localname": "LiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities, Current [Abstract]",
        "terseLabel": "Current liabilities"
       }
      }
     },
     "localname": "LiabilitiesCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesFairValueDisclosure": {
     "auth_ref": [
      "r173"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value of financial and nonfinancial obligations.",
        "label": "Liabilities, Fair Value Disclosure",
        "totalLabel": "Total financial liabilities"
       }
      }
     },
     "localname": "LiabilitiesFairValueDisclosure",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesFairValueDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities, Fair Value Disclosure [Abstract]",
        "terseLabel": "Financial liabilities:"
       }
      }
     },
     "localname": "LiabilitiesFairValueDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": {
     "auth_ref": [
      "r15"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Line of Credit Facility, Maximum Borrowing Capacity",
        "terseLabel": "Line of credit maximum borrowing capacity"
       }
      }
     },
     "localname": "LineOfCreditFacilityMaximumBorrowingCapacity",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity": {
     "auth_ref": [
      "r15"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of borrowing capacity currently available under the credit facility (current borrowing capacity less the amount of borrowings outstanding).",
        "label": "Line of Credit Facility, Remaining Borrowing Capacity",
        "terseLabel": "Remaining borrowing availability"
       }
      }
     },
     "localname": "LineOfCreditFacilityRemainingBorrowingCapacity",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LondonInterbankOfferedRateLIBORMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Interest rate at which a bank borrows funds from other banks in the London interbank market.",
        "label": "London Interbank Offered Rate (LIBOR) [Member]",
        "terseLabel": "LIBOR"
       }
      }
     },
     "localname": "LondonInterbankOfferedRateLIBORMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LongTermDebt": {
     "auth_ref": [
      "r3",
      "r199",
      "r213",
      "r425",
      "r435",
      "r809",
      "r810"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/LongtermDebtScheduleofDebtDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, excluding unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation.",
        "label": "Long-Term Debt",
        "totalLabel": "Total long term debt"
       }
      }
     },
     "localname": "LongTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtScheduleofDebtDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtCurrent": {
     "auth_ref": [
      "r17"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS": {
       "order": 4.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      },
      "http://installedbuildingproducts.com/role/LongtermDebtScheduleofDebtDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_LongTermDebt",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after unamortized (discount) premium and debt issuance costs, of long-term debt, classified as current. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.",
        "label": "Long-Term Debt, Current Maturities",
        "negatedLabel": "Less: current maturities",
        "terseLabel": "Current maturities of long-term debt"
       }
      }
     },
     "localname": "LongTermDebtCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS",
      "http://installedbuildingproducts.com/role/LongtermDebtScheduleofDebtDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtFairValue": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The fair value amount of long-term debt whether such amount is presented as a separate caption or as a parenthetical disclosure. Additionally, this element may be used in connection with the fair value disclosures required in the footnote disclosures to the financial statements. The element may be used in both the balance sheet and disclosure in the same submission.",
        "label": "Long-Term Debt, Fair Value",
        "terseLabel": "Senior Notes"
       }
      }
     },
     "localname": "LongTermDebtFairValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairValuemeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive": {
     "auth_ref": [
      "r103",
      "r276",
      "r919"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Long-Term Debt, Maturity, after Year Five",
        "terseLabel": "Thereafter"
       }
      }
     },
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongTermDebtScheduleofMaturitiesofLongTermDebtDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths": {
     "auth_ref": [
      "r103",
      "r276",
      "r429"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Long-Term Debt, Maturity, Year One",
        "terseLabel": "2023"
       }
      }
     },
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongTermDebtScheduleofMaturitiesofLongTermDebtDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive": {
     "auth_ref": [
      "r103",
      "r276",
      "r429"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Long-Term Debt, Maturity, Year Five",
        "terseLabel": "2027"
       }
      }
     },
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongTermDebtScheduleofMaturitiesofLongTermDebtDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour": {
     "auth_ref": [
      "r103",
      "r276",
      "r429"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Long-Term Debt, Maturity, Year Four",
        "terseLabel": "2026"
       }
      }
     },
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongTermDebtScheduleofMaturitiesofLongTermDebtDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree": {
     "auth_ref": [
      "r103",
      "r276",
      "r429"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Long-Term Debt, Maturity, Year Three",
        "terseLabel": "2025"
       }
      }
     },
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongTermDebtScheduleofMaturitiesofLongTermDebtDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo": {
     "auth_ref": [
      "r103",
      "r276",
      "r429"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Long-Term Debt, Maturity, Year Two",
        "terseLabel": "2024"
       }
      }
     },
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongTermDebtScheduleofMaturitiesofLongTermDebtDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtNoncurrent": {
     "auth_ref": [
      "r239"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS": {
       "order": 5.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      },
      "http://installedbuildingproducts.com/role/LongtermDebtScheduleofDebtDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_LongTermDebt",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, excluding unamortized premium (discount) and debt issuance cost, of long-term debt classified as noncurrent. Excludes lease obligation.",
        "label": "Long-Term Debt, Excluding Current Maturities",
        "terseLabel": "Long-term debt",
        "verboseLabel": "Long-term debt, less current maturities"
       }
      }
     },
     "localname": "LongTermDebtNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS",
      "http://installedbuildingproducts.com/role/LongtermDebtScheduleofDebtDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtTextBlock": {
     "auth_ref": [
      "r105"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for long-term debt.",
        "label": "Long-Term Debt [Text Block]",
        "terseLabel": "Long-Term Debt"
       }
      }
     },
     "localname": "LongTermDebtTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongTermDebt"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LongtermDebtTypeAxis": {
     "auth_ref": [
      "r22"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of long-term debt.",
        "label": "Long-Term Debt, Type [Axis]",
        "terseLabel": "Long-term Debt, Type [Axis]"
       }
      }
     },
     "localname": "LongtermDebtTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/LongtermDebtScheduleofDebtDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LongtermDebtTypeDomain": {
     "auth_ref": [
      "r22",
      "r104"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Type of long-term debt arrangement, such as notes, line of credit, commercial paper, asset-based financing, project financing, letter of credit financing. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the company, if longer.",
        "label": "Long-Term Debt, Type [Domain]",
        "terseLabel": "Long-term Debt, Type [Domain]"
       }
      }
     },
     "localname": "LongtermDebtTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/LongtermDebtScheduleofDebtDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_MediumTermNotesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt instruments with maturities ranging from five to ten years.",
        "label": "Medium-term Notes [Member]",
        "terseLabel": "Medium-term Notes"
       }
      }
     },
     "localname": "MediumTermNotesMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtScheduleofDebtDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_MoneyMarketFundsAtCarryingValue": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Investment in short-term money-market instruments (such as commercial paper, banker's acceptances, repurchase agreements, government securities, certificates of deposit, and so forth) which are highly liquid (that is, readily convertible to known amounts of cash) and so near their maturity that they present an insignificant risk of changes in value because of changes in interest rates. Generally, only investments with original maturities of three months or less qualify as cash equivalents by definition. Original maturity means an original maturity to the entity holding the investment. For example, both a three-month US Treasury bill and a three-year Treasury note purchased three months from maturity qualify as cash equivalents. However, a Treasury note purchased three-years ago does not become a cash equivalent when its remaining maturity is three months.",
        "label": "Money Market Funds, at Carrying Value",
        "terseLabel": "Cash and cash equivalents"
       }
      }
     },
     "localname": "MoneyMarketFundsAtCarryingValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CashandCashEquivalentsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_MultiemployerPlanEmployerContributionCost": {
     "auth_ref": [
      "r537",
      "r538",
      "r549",
      "r831"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cost for employer contribution to multiemployer plan. Multiemployer plan includes, but is not limited to, pension plan determined to be individually significant and insignificant and other postretirement benefit plan.",
        "label": "Multiemployer Plan, Employer Contribution, Cost",
        "terseLabel": "Total contributions"
       }
      }
     },
     "localname": "MultiemployerPlanEmployerContributionCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsContributionstoMultiemployerPensionsandHealthandWelfareBenefitPlansDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_MultiemployerPlansLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Multiemployer Plan [Line Items]",
        "terseLabel": "Multiemployer Plan [Line Items]"
       }
      }
     },
     "localname": "MultiemployerPlansLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsContributionstoMultiemployerPensionsandHealthandWelfareBenefitPlansDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "auth_ref": [
      "r268"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 2.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.",
        "label": "Net Cash Provided by (Used in) Financing Activities",
        "totalLabel": "Net cash (used in) provided by financing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]",
        "terseLabel": "Cash flows from financing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "auth_ref": [
      "r268"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 1.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.",
        "label": "Net Cash Provided by (Used in) Investing Activities",
        "totalLabel": "Net cash used in investing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]",
        "terseLabel": "Cash flows from investing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS",
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSParenthetical"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "auth_ref": [
      "r56",
      "r57",
      "r60"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 3.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.",
        "label": "Net Cash Provided by (Used in) Operating Activities",
        "totalLabel": "Net cash provided by operating activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]",
        "terseLabel": "Cash flows from operating activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetIncomeLoss": {
     "auth_ref": [
      "r36",
      "r60",
      "r203",
      "r217",
      "r230",
      "r253",
      "r255",
      "r260",
      "r273",
      "r281",
      "r285",
      "r286",
      "r288",
      "r289",
      "r293",
      "r294",
      "r302",
      "r330",
      "r335",
      "r341",
      "r344",
      "r357",
      "r405",
      "r406",
      "r408",
      "r409",
      "r410",
      "r412",
      "r414",
      "r416",
      "r417",
      "r666",
      "r675",
      "r806",
      "r915"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME": {
       "order": 1.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.",
        "label": "Net Income (Loss) Attributable to Parent",
        "totalLabel": "Net income",
        "verboseLabel": "Net income"
       }
      }
     },
     "localname": "NetIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME",
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact.",
        "label": "New Accounting Pronouncements, Policy [Policy Text Block]",
        "terseLabel": "Recently Adopted Accounting Pronouncements"
       }
      }
     },
     "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_NoncashInvestingAndFinancingItemsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Noncash Investing and Financing Items [Abstract]",
        "verboseLabel": "Supplemental disclosure of noncash activities"
       }
      }
     },
     "localname": "NoncashInvestingAndFinancingItemsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NoncompeteAgreementsMember": {
     "auth_ref": [
      "r147"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Agreement in which one party agrees not to pursue a similar trade in competition with another party.",
        "label": "Noncompete Agreements [Member]",
        "terseLabel": "Covenants not-to-compete",
        "verboseLabel": "Non-competition agreements"
       }
      }
     },
     "localname": "NoncompeteAgreementsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsEstimatesofAcquiredIntangibleAssetsDetail",
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_NotesPayableOtherPayablesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A written promise to pay a note to a third party.",
        "label": "Notes Payable, Other Payables [Member]",
        "terseLabel": "Notes Payable"
       }
      }
     },
     "localname": "NotesPayableOtherPayablesMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtScheduleofDebtDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_NumberOfBusinessesAcquired": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of businesses acquired by the entity during the period.",
        "label": "Number of Businesses Acquired",
        "terseLabel": "Number of businesses acquired"
       }
      }
     },
     "localname": "NumberOfBusinessesAcquired",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsAdditionalInformationDetail"
     ],
     "xbrltype": "integerItemType"
    },
    "us-gaap_NumberOfOperatingSegments": {
     "auth_ref": [
      "r886"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of operating segments. An operating segment is a component of an enterprise: (a) that engages in business activities from which it may earn revenues and incur expenses (including revenues and expenses relating to transactions with other components of the same enterprise), (b) whose operating results are regularly reviewed by the enterprise's chief operating decision maker to make decisions about resources to be allocated to the segment and assess its performance, and (c) for which discrete financial information is available. An operating segment may engage in business activities for which it has yet to earn revenues, for example, start-up operations may be operating segments before earning revenues.",
        "label": "Number of Operating Segments",
        "terseLabel": "Number of operating segment"
       }
      }
     },
     "localname": "NumberOfOperatingSegments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails",
      "http://installedbuildingproducts.com/role/OrganizationAdditionalInformationDetail"
     ],
     "xbrltype": "integerItemType"
    },
    "us-gaap_NumberOfReportableSegments": {
     "auth_ref": [
      "r886"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements.",
        "label": "Number of Reportable Segments",
        "terseLabel": "Number of reportable segment"
       }
      }
     },
     "localname": "NumberOfReportableSegments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails",
      "http://installedbuildingproducts.com/role/OrganizationAdditionalInformationDetail"
     ],
     "xbrltype": "integerItemType"
    },
    "us-gaap_NumberOfReportingUnits": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of reporting units tested for impairment of goodwill. A reporting unit is an operating segment or one level below an operating segment.",
        "label": "Number of Reporting Units",
        "terseLabel": "Number of Reporting Units"
       }
      }
     },
     "localname": "NumberOfReportingUnits",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesAdditionalInformationDetail"
     ],
     "xbrltype": "integerItemType"
    },
    "us-gaap_OciCashFlowHedgeReclassificationForDiscontinuanceStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration": {
     "auth_ref": [
      "r649",
      "r650"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates line item in statement of income or comprehensive income that includes reclassification from accumulated other comprehensive income (AOCI) for gain (loss) recognized in other comprehensive income (OCI) from discontinuance of cash flow hedge included in assessment of hedge effectiveness.",
        "label": "OCI, Cash Flow Hedge, Reclassification for Discontinuance, Statement of Income or Comprehensive Income [Extensible Enumeration]",
        "terseLabel": "OCI, Cash Flow Hedge, Reclassification for Discontinuance, Statement of Income or Comprehensive Income [Extensible Enumeration]"
       }
      }
     },
     "localname": "OciCashFlowHedgeReclassificationForDiscontinuanceStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesInterestRateSwapSummaryDetails"
     ],
     "xbrltype": "enumerationSetItemType"
    },
    "us-gaap_OperatingExpenses": {
     "auth_ref": [],
     "calculation": {
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense.",
        "label": "Operating Expenses",
        "terseLabel": "Operating Expenses"
       }
      }
     },
     "localname": "OperatingExpenses",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingExpensesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Expenses [Abstract]",
        "terseLabel": "Operating expenses"
       }
      }
     },
     "localname": "OperatingExpensesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingIncomeLoss": {
     "auth_ref": [
      "r330",
      "r335",
      "r341",
      "r344",
      "r806"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      },
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The net result for the period of deducting operating expenses from operating revenues.",
        "label": "Operating Income (Loss)",
        "totalLabel": "Operating income"
       }
      }
     },
     "localname": "OperatingIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME",
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseCost": {
     "auth_ref": [
      "r710",
      "r838"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/LeasesLeaseCostFinanceandOperatingLeasesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_LeaseCost",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of single lease cost, calculated by allocation of remaining cost of lease over remaining lease term. Includes, but is not limited to, single lease cost, after impairment of right-of-use asset, calculated by amortization of remaining right-of-use asset and accretion of lease liability.",
        "label": "Operating Lease, Cost",
        "terseLabel": "Operating lease cost"
       }
      }
     },
     "localname": "OperatingLeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesLeaseCostFinanceandOperatingLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiability": {
     "auth_ref": [
      "r701"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease.",
        "label": "Operating Lease, Liability",
        "totalLabel": "Present value of future minimum lease payments"
       }
      }
     },
     "localname": "OperatingLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Lease, Liability [Abstract]",
        "terseLabel": "Operating Leases"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "auth_ref": [
      "r701"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS": {
       "order": 6.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      },
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_OperatingLeaseLiability",
       "weight": 1.0
      },
      "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails": {
       "order": 3.0,
       "parentTag": "ibp_LeaseLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.",
        "label": "Operating Lease, Liability, Current",
        "negatedTerseLabel": "Less: Current obligation under leases",
        "terseLabel": "Operating",
        "verboseLabel": "Current maturities of operating lease obligations"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS",
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail",
      "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "auth_ref": [
      "r701"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS": {
       "order": 1.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      },
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_OperatingLeaseLiability",
       "weight": 1.0
      },
      "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails": {
       "order": 1.0,
       "parentTag": "ibp_LeaseLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.",
        "label": "Operating Lease, Liability, Noncurrent",
        "terseLabel": "Long-term lease obligations",
        "verboseLabel": "Operating lease obligations"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS",
      "http://installedbuildingproducts.com/role/LeasesFinanceLeaseObligationsandOperatingLeaseObligationsDetail",
      "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeasePayments": {
     "auth_ref": [
      "r706",
      "r713"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use.",
        "label": "Operating Lease, Payments",
        "verboseLabel": "Operating cash flows for operating leases"
       }
      }
     },
     "localname": "OperatingLeasePayments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalCashFlowInformationRelatedtoLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "auth_ref": [
      "r700"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS": {
       "order": 5.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      },
      "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails": {
       "order": 1.0,
       "parentTag": "ibp_LeaseAssets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's right to use underlying asset under operating lease.",
        "label": "Operating Lease, Right-of-Use Asset",
        "terseLabel": "Operating",
        "verboseLabel": "Operating lease right-of-use assets"
       }
      }
     },
     "localname": "OperatingLeaseRightOfUseAsset",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS",
      "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense": {
     "auth_ref": [
      "r868"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 9.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization expense for right-of-use asset from operating lease.",
        "label": "Operating Lease, Right-of-Use Asset, Amortization Expense",
        "verboseLabel": "Amortization of operating lease right-of-use assets"
       }
      }
     },
     "localname": "OperatingLeaseRightOfUseAssetAmortizationExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": {
     "auth_ref": [
      "r716",
      "r838"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average discount rate for operating lease calculated at point in time.",
        "label": "Operating Lease, Weighted Average Discount Rate, Percent",
        "terseLabel": "Operating leases (as percent)"
       }
      }
     },
     "localname": "OperatingLeaseWeightedAverageDiscountRatePercent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": {
     "auth_ref": [
      "r715",
      "r838"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Operating Lease, Weighted Average Remaining Lease Term",
        "terseLabel": "Operating leases (in years)"
       }
      }
     },
     "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_OperatingSegmentsMember": {
     "auth_ref": [
      "r334",
      "r335",
      "r336",
      "r337",
      "r338",
      "r344"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Identifies components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity.",
        "label": "Operating Segments [Member]",
        "terseLabel": "Operating segments"
       }
      }
     },
     "localname": "OperatingSegmentsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_OrderOrProductionBacklogMember": {
     "auth_ref": [
      "r148"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Orders, production or production backlog arising from contracts such as purchase or sales orders acquired in a business combination.",
        "label": "Order or Production Backlog [Member]",
        "terseLabel": "Backlog"
       }
      }
     },
     "localname": "OrderOrProductionBacklogMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsEstimatesofAcquiredIntangibleAssetsDetail",
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Organization, Consolidation and Presentation of Financial Statements [Abstract]",
        "terseLabel": "Organization, Consolidation and Presentation of Financial Statements [Abstract]"
       }
      }
     },
     "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock": {
     "auth_ref": [
      "r0",
      "r160"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for organization, consolidation and basis of presentation of financial statements disclosure.",
        "label": "Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block]",
        "terseLabel": "Organization"
       }
      }
     },
     "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/Organization"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_OtherAssetsNoncurrent": {
     "auth_ref": [
      "r237"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS": {
       "order": 4.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of noncurrent assets classified as other.",
        "label": "Other Assets, Noncurrent",
        "verboseLabel": "Other non-current assets"
       }
      }
     },
     "localname": "OtherAssetsNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax": {
     "auth_ref": [
      "r32",
      "r34",
      "r259",
      "r684",
      "r686",
      "r689",
      "r860"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax, before reclassification adjustments of other comprehensive income (loss).",
        "label": "Other Comprehensive Income (Loss), before Reclassifications, Net of Tax",
        "terseLabel": "Unrealized gain (loss) in fair value of interest rate derivatives"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/StockholdersEquityChangeinAOCIDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax": {
     "auth_ref": [
      "r30",
      "r258"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of tax expense (benefit) allocated to other comprehensive income (loss) before reclassification adjustment from accumulated other comprehensive income (loss).",
        "label": "Other Comprehensive Income (Loss) before Reclassifications, Tax",
        "terseLabel": "Amortized interest expense of financing element"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossBeforeReclassificationsTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax": {
     "auth_ref": [
      "r249",
      "r250"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME": {
       "order": 2.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after tax and reclassification, of gain (loss) from derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness.",
        "label": "Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), after Reclassification and Tax",
        "terseLabel": "Net change in cash flow hedges, net of tax"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME",
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax": {
     "auth_ref": [
      "r251"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after reclassification, of tax expense (benefit) for gain (loss) from derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness.",
        "label": "Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), after Reclassification, Tax",
        "negatedTerseLabel": "Unrealized loss on cash flow hedge, net of tax benefit"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEParenthetical"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationTax": {
     "auth_ref": [
      "r251"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of tax expense (benefit) for reclassification of gain (loss) from accumulated other comprehensive income (AOCI) for derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness.",
        "label": "Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), Reclassification, Tax",
        "terseLabel": "Amortization of unrealized gain (loss)"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax": {
     "auth_ref": [
      "r649"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before tax, of reclassification from accumulated other comprehensive income (AOCI) for gain (loss) from discontinuance of cash flow hedge included in assessment of hedge effectiveness.",
        "label": "Other Comprehensive Income (Loss), Cash Flow Hedge, Reclassification for Discontinuance, before Tax",
        "terseLabel": "Unrealized loss included in accumulated other comprehensive loss associated with the terminated swaps",
        "verboseLabel": "Expense associated with amortization of amended/terminated swaps"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForDiscontinuanceBeforeTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesInterestRateSwapSummaryDetails",
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherLiabilitiesCurrent": {
     "auth_ref": [
      "r19",
      "r839"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liabilities classified as other, due within one year or the normal operating cycle, if longer.",
        "label": "Other Liabilities, Current",
        "verboseLabel": "Other current liabilities"
       }
      }
     },
     "localname": "OtherLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherLiabilitiesNoncurrent": {
     "auth_ref": [
      "r23"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS": {
       "order": 2.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer.",
        "label": "Other Liabilities, Noncurrent",
        "terseLabel": "Other long-term liabilities"
       }
      }
     },
     "localname": "OtherLiabilitiesNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherNoncashIncomeExpense": {
     "auth_ref": [
      "r60"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 12.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of income (expense) included in net income that results in no cash inflow (outflow), classified as other.",
        "label": "Other Noncash Income (Expense)",
        "negatedTerseLabel": "Other, net"
       }
      }
     },
     "localname": "OtherNoncashIncomeExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherNoncurrentAssetsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Primary financial statement caption encompassing other noncurrent assets.",
        "label": "Other Noncurrent Assets [Member]",
        "terseLabel": "Other non-current assets"
       }
      }
     },
     "localname": "OtherNoncurrentAssetsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesComponentsofNetDeferredTaxAssetorLiabilityDetail",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_OtherNonoperatingExpense": {
     "auth_ref": [
      "r44"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expense related to nonoperating activities, classified as other.",
        "label": "Other Nonoperating Expense",
        "terseLabel": "Other Nonoperating Expense"
       }
      }
     },
     "localname": "OtherNonoperatingExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherNonoperatingIncomeExpense": {
     "auth_ref": [
      "r44"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME": {
       "order": 3.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of income (expense) related to nonoperating activities, classified as other.",
        "label": "Other Nonoperating Income (Expense)",
        "negatedLabel": "Other expense (income)"
       }
      }
     },
     "localname": "OtherNonoperatingIncomeExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherNonoperatingIncomeExpenseAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Nonoperating Income (Expense) [Abstract]",
        "terseLabel": "Other expense"
       }
      }
     },
     "localname": "OtherNonoperatingIncomeExpenseAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PaymentsForProceedsFromOtherInvestingActivities": {
     "auth_ref": [
      "r865",
      "r866"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash (inflow) outflow from investing activities classified as other.",
        "label": "Payments for (Proceeds from) Other Investing Activities",
        "negatedLabel": "Other"
       }
      }
     },
     "localname": "PaymentsForProceedsFromOtherInvestingActivities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsForRepurchaseOfCommonStock": {
     "auth_ref": [
      "r52"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 8.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow to reacquire common stock during the period.",
        "label": "Payments for Repurchase of Common Stock",
        "negatedLabel": "Repurchase of common stock"
       }
      }
     },
     "localname": "PaymentsForRepurchaseOfCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsOfDebtIssuanceCosts": {
     "auth_ref": [
      "r54"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow paid to third parties in connection with debt origination, which will be amortized over the remaining maturity period of the associated long-term debt.",
        "label": "Payments of Debt Issuance Costs",
        "negatedLabel": "Debt issuance costs"
       }
      }
     },
     "localname": "PaymentsOfDebtIssuanceCosts",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsOfDividends": {
     "auth_ref": [
      "r52"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 7.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cash outflow in the form of capital distributions and dividends to common shareholders, preferred shareholders and noncontrolling interests.",
        "label": "Payments of Dividends",
        "negatedTerseLabel": "Dividends paid",
        "terseLabel": "Dividends paid"
       }
      }
     },
     "localname": "PaymentsOfDividends",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS",
      "http://installedbuildingproducts.com/role/StockholdersEquityAdditionalInformationDetails",
      "http://installedbuildingproducts.com/role/StockholdersEquityScheduleofDividendsDeclaredDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsOfMergerRelatedCostsFinancingActivities": {
     "auth_ref": [
      "r55"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 9.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow for financing costs associated with business combinations.",
        "label": "Payments of Merger Related Costs, Financing Activities",
        "negatedLabel": "Acquisition-related obligations"
       }
      }
     },
     "localname": "PaymentsOfMergerRelatedCostsFinancingActivities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireBusinessesGross": {
     "auth_ref": [
      "r48",
      "r636"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_BusinessCombinationConsiderationTransferred1",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow associated with the acquisition of business during the period. The cash portion only of the acquisition price.",
        "label": "Payments to Acquire Businesses, Gross",
        "terseLabel": "Cash Paid"
       }
      }
     },
     "localname": "PaymentsToAcquireBusinessesGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetail",
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired": {
     "auth_ref": [
      "r48"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow associated with the acquisition of a business, net of the cash acquired from the purchase.",
        "label": "Payments to Acquire Businesses, Net of Cash Acquired",
        "negatedTerseLabel": "Acquisitions of businesses, net of cash acquired of $523, $1,707 and $0 in 2022, 2021 and 2020, respectively"
       }
      }
     },
     "localname": "PaymentsToAcquireBusinessesNetOfCashAcquired",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireInvestments": {
     "auth_ref": [
      "r50"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow associated with the purchase of all investments (debt, security, other) during the period.",
        "label": "Payments to Acquire Investments",
        "negatedLabel": "Purchases of investments"
       }
      }
     },
     "localname": "PaymentsToAcquireInvestments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "auth_ref": [
      "r49"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.",
        "label": "Payments to Acquire Property, Plant, and Equipment",
        "negatedLabel": "Purchases of property and equipment"
       }
      }
     },
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PensionPlansDefinedBenefitMember": {
     "auth_ref": [
      "r116",
      "r477",
      "r478",
      "r479",
      "r480",
      "r481",
      "r482",
      "r483",
      "r484",
      "r485",
      "r486",
      "r487",
      "r488",
      "r489",
      "r490",
      "r491",
      "r492",
      "r493",
      "r494",
      "r495",
      "r496",
      "r497",
      "r498",
      "r499",
      "r500",
      "r501",
      "r502",
      "r503",
      "r504",
      "r505",
      "r506",
      "r507",
      "r508",
      "r509",
      "r510",
      "r511",
      "r512",
      "r513",
      "r514",
      "r515",
      "r516",
      "r517",
      "r518",
      "r519",
      "r520",
      "r521",
      "r522",
      "r523",
      "r524",
      "r525",
      "r526",
      "r527",
      "r528",
      "r529",
      "r530",
      "r531",
      "r532",
      "r533",
      "r534",
      "r535",
      "r536",
      "r537",
      "r549",
      "r823",
      "r824",
      "r828",
      "r829",
      "r830"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Plan designed to provide participant with pension benefits. Includes, but is not limited to, defined benefit and defined contribution plans. Excludes other postretirement benefits.",
        "label": "Pension Plan [Member]",
        "terseLabel": "Pension plans"
       }
      }
     },
     "localname": "PensionPlansDefinedBenefitMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsContributionstoMultiemployerPensionsandHealthandWelfareBenefitPlansDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PlanNameAxis": {
     "auth_ref": [
      "r924",
      "r925",
      "r926",
      "r927",
      "r928",
      "r929",
      "r930",
      "r931",
      "r932",
      "r933",
      "r934",
      "r935",
      "r936",
      "r937",
      "r938",
      "r939",
      "r940",
      "r941",
      "r942",
      "r943",
      "r944",
      "r945",
      "r946",
      "r947",
      "r948",
      "r949"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by plan name for share-based payment arrangement.",
        "label": "Plan Name [Axis]",
        "terseLabel": "Plan Name [Axis]"
       }
      }
     },
     "localname": "PlanNameAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PlanNameDomain": {
     "auth_ref": [
      "r924",
      "r925",
      "r926",
      "r927",
      "r928",
      "r929",
      "r930",
      "r931",
      "r932",
      "r933",
      "r934",
      "r935",
      "r936",
      "r937",
      "r938",
      "r939",
      "r940",
      "r941",
      "r942",
      "r943",
      "r944",
      "r945",
      "r946",
      "r947",
      "r948",
      "r949"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Plan name for share-based payment arrangement.",
        "label": "Plan Name [Domain]",
        "terseLabel": "Plan Name [Domain]"
       }
      }
     },
     "localname": "PlanNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PortionAtFairValueFairValueDisclosureMember": {
     "auth_ref": [
      "r673"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Measured at fair value for financial reporting purposes.",
        "label": "Portion at Fair Value Measurement [Member]",
        "terseLabel": "Portion at Fair Value Measurement"
       }
      }
     },
     "localname": "PortionAtFairValueFairValueDisclosureMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairValuemeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PreferredStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r7",
      "r436"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer.",
        "label": "Preferred Stock, Par or Stated Value Per Share",
        "terseLabel": "Preferred stock, par value in USD per share)"
       }
      }
     },
     "localname": "PreferredStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETSParenthetical"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_PreferredStockSharesAuthorized": {
     "auth_ref": [
      "r7"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws.",
        "label": "Preferred Stock, Shares Authorized",
        "terseLabel": "Preferred stock, shares authorized (in shares)"
       }
      }
     },
     "localname": "PreferredStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETSParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockSharesIssued": {
     "auth_ref": [
      "r7",
      "r436"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt.",
        "label": "Preferred Stock, Shares Issued",
        "terseLabel": "Preferred stock, shares issued (in shares)"
       }
      }
     },
     "localname": "PreferredStockSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETSParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockSharesOutstanding": {
     "auth_ref": [
      "r7"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased.",
        "label": "Preferred Stock, Shares Outstanding",
        "terseLabel": "Preferred stock, shares outstanding (in shares)"
       }
      }
     },
     "localname": "PreferredStockSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETSParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockValue": {
     "auth_ref": [
      "r7",
      "r839"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS": {
       "order": 6.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity.",
        "label": "Preferred Stock, Value, Issued",
        "verboseLabel": "Preferred Stock; $0.01 par value: 5,000,000 authorized and 0 shares issued and outstanding at December\u00a031, 2022 and 2021, respectively"
       }
      }
     },
     "localname": "PreferredStockValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": {
     "auth_ref": [
      "r859"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS": {
       "order": 4.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer.",
        "label": "Prepaid Expense and Other Assets, Current",
        "verboseLabel": "Prepaid expenses and other current assets"
       }
      }
     },
     "localname": "PrepaidExpenseAndOtherAssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PriorPeriodReclassificationAdjustmentDescription": {
     "auth_ref": [
      "r855"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for reclassification affecting comparability of financial statement. Excludes amendment to accounting standards, other change in accounting principle, and correction of error.",
        "label": "Reclassification, Comparability Adjustment [Policy Text Block]",
        "terseLabel": "Reclassification"
       }
      }
     },
     "localname": "PriorPeriodReclassificationAdjustmentDescription",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ProceedsFromDebtNetOfIssuanceCosts": {
     "auth_ref": [
      "r265"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow from additional borrowings, net of cash paid to third parties in connection with debt origination.",
        "label": "Proceeds from Debt, Net of Issuance Costs",
        "terseLabel": "Proceeds from senior note issuance"
       }
      }
     },
     "localname": "ProceedsFromDebtNetOfIssuanceCosts",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromIssuanceOfMediumTermNotes": {
     "auth_ref": [
      "r51"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 10.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow from a debt funding received on a regular basis with maturities ranging from 5-10 years.",
        "label": "Proceeds from Issuance of Medium-term Notes",
        "terseLabel": "Proceeds from term loan (Note 8)"
       }
      }
     },
     "localname": "ProceedsFromIssuanceOfMediumTermNotes",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromNotesPayable": {
     "auth_ref": [
      "r51"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow from a borrowing supported by a written promise to pay an obligation.",
        "label": "Proceeds from Notes Payable",
        "terseLabel": "Proceeds from vehicle and equipment notes payable"
       }
      }
     },
     "localname": "ProceedsFromNotesPayable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment": {
     "auth_ref": [
      "r46"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow from the sale of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale.",
        "label": "Proceeds from Sale of Property, Plant, and Equipment",
        "terseLabel": "Proceeds from sale of property and equipment"
       }
      }
     },
     "localname": "ProceedsFromSaleOfPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromSaleOfShortTermInvestments": {
     "auth_ref": [
      "r47"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 6.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow from sales of all investments, including securities and other assets, having ready marketability and intended by management to be liquidated, if necessary, within the current operating cycle. Includes cash flows from securities classified as trading securities that were acquired for reasons other than sale in the short-term.",
        "label": "Proceeds from Sale of Short-Term Investments",
        "terseLabel": "Maturities of short term investments"
       }
      }
     },
     "localname": "ProceedsFromSaleOfShortTermInvestments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProductConcentrationRiskMember": {
     "auth_ref": [
      "r75"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Reflects the percentage that revenues during the period from a specified product are to a specified benchmark, such as total net revenues, segment revenues or product line revenues. May also reflect the percentage contribution the product made to operating results. Risk is materially adverse effects of a loss of sales of a significant product or line of products, which could occur upon loss of rights to sell, distribute or license others; loss of patent or copyright protection; or technological obsolescence.",
        "label": "Product Concentration Risk [Member]",
        "terseLabel": "Product Concentration Risk"
       }
      }
     },
     "localname": "ProductConcentrationRiskMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ProfitLoss": {
     "auth_ref": [
      "r230",
      "r253",
      "r255",
      "r267",
      "r273",
      "r281",
      "r293",
      "r294",
      "r330",
      "r335",
      "r341",
      "r344",
      "r357",
      "r405",
      "r406",
      "r408",
      "r409",
      "r410",
      "r412",
      "r414",
      "r416",
      "r417",
      "r640",
      "r643",
      "r644",
      "r666",
      "r675",
      "r764",
      "r806",
      "r835",
      "r836",
      "r862",
      "r915"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 15.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest.",
        "label": "Net Income (Loss), Including Portion Attributable to Noncontrolling Interest",
        "terseLabel": "Net income"
       }
      }
     },
     "localname": "ProfitLoss",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment [Abstract]",
        "terseLabel": "Property, Plant and Equipment [Abstract]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization": {
     "auth_ref": [
      "r908",
      "r965",
      "r967"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of accumulated depreciation and amortization from plant, property, and equipment and right-of-use asset from finance lease.",
        "label": "Property, Plant, and Equipment and Finance Lease Right-of-Use Asset, Accumulated Depreciation and Amortization",
        "negatedLabel": "Less: accumulated depreciation and amortization"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization": {
     "auth_ref": [
      "r909",
      "r967"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS": {
       "order": 6.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      },
      "http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after accumulated depreciation and amortization, of property, plant, and equipment and finance lease right-of-use asset.",
        "label": "Property, Plant, and Equipment and Finance Lease Right-of-Use Asset, after Accumulated Depreciation and Amortization",
        "terseLabel": "Property and equipment, net",
        "totalLabel": "Property and equipment, net"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS",
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization": {
     "auth_ref": [
      "r857",
      "r907",
      "r964"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before accumulated depreciation and amortization, of property, plant, and equipment and finance lease right-of-use asset.",
        "label": "Property, Plant, and Equipment and Finance Lease Right-of-Use Asset, before Accumulated Depreciation and Amortization",
        "terseLabel": "Assets relating to master loan agreements, gross",
        "verboseLabel": "Property and equipment, gross"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentByTypeAxis": {
     "auth_ref": [
      "r99"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale.",
        "label": "Long-Lived Tangible Asset [Axis]",
        "terseLabel": "Property, Plant and Equipment, Type [Axis]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentByTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": {
     "auth_ref": [
      "r101",
      "r788",
      "r789",
      "r790"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.",
        "label": "Property, Plant and Equipment Disclosure [Text Block]",
        "terseLabel": "Property and Equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/PropertyandEquipment"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Property, Plant and Equipment [Line Items]",
        "terseLabel": "Property, Plant and Equipment [Line Items]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofDepreciationandAmortizationExpenseonPropertyandEquipmentbyIncomeStatementCategoryDetails",
      "http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentPolicyTextBlock": {
     "auth_ref": [
      "r99",
      "r788",
      "r789"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.",
        "label": "Property, Plant and Equipment, Policy [Policy Text Block]",
        "terseLabel": "Property and Equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTextBlock": {
     "auth_ref": [
      "r99"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.",
        "label": "Property, Plant and Equipment [Table Text Block]",
        "terseLabel": "Schedule of Property and Equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/PropertyandEquipmentTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTypeDomain": {
     "auth_ref": [
      "r98"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Listing of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale. Examples include land, buildings, machinery and equipment, and other types of furniture and equipment including, but not limited to, office equipment, furniture and fixtures, and computer equipment and software.",
        "label": "Long-Lived Tangible Asset [Domain]",
        "terseLabel": "Property, Plant and Equipment, Type [Domain]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentUsefulLife": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment.",
        "label": "Property, Plant and Equipment, Useful Life",
        "verboseLabel": "Estimated useful life"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentUsefulLife",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_ProvisionForDoubtfulAccounts": {
     "auth_ref": [
      "r264",
      "r367"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 17.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expense (reversal of expense) for expected credit loss on accounts receivable.",
        "label": "Accounts Receivable, Credit Loss Expense (Reversal)",
        "terseLabel": "Current period provision",
        "verboseLabel": "Provision for credit losses"
       }
      }
     },
     "localname": "ProvisionForDoubtfulAccounts",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS",
      "http://installedbuildingproducts.com/role/CreditLossesScheduleofChangesinAllowanceforCreditLossesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ReceivablesLongTermContractsOrPrograms": {
     "auth_ref": [
      "r858"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofCostandEstimatedEarningsonUncompletedContractsDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount to be collected within one year of the balance sheet date (or one operating cycle, if longer) from customers in accordance with the contractual provisions of long-term contracts or programs including amounts billed and unbilled as of the balance sheet date.",
        "label": "Receivables, Long-Term Contracts or Programs",
        "totalLabel": "Total"
       }
      }
     },
     "localname": "ReceivablesLongTermContractsOrPrograms",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofCostandEstimatedEarningsonUncompletedContractsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ReceivablesPolicyTextBlock": {
     "auth_ref": [
      "r888",
      "r889",
      "r890",
      "r891"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for receivable. Includes, but is not limited to, accounts receivable and financing receivable.",
        "label": "Receivable [Policy Text Block]",
        "terseLabel": "Accounts Receivable"
       }
      }
     },
     "localname": "ReceivablesPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax": {
     "auth_ref": [
      "r32",
      "r34",
      "r259",
      "r684",
      "r688",
      "r689",
      "r860"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax of reclassification adjustments of other comprehensive income (loss).",
        "label": "Reclassification from Accumulated Other Comprehensive Income, Current Period, Net of Tax",
        "terseLabel": "Reclassification of realized net losses to earnings"
       }
      }
     },
     "localname": "ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/StockholdersEquityChangeinAOCIDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "AOCI Including Portion Attributable to Noncontrolling Interest, Net of Tax [Roll Forward]",
        "verboseLabel": "AOCI Including Portion Attributable to Noncontrolling Interest, Net of Tax [Roll Forward]"
       }
      }
     },
     "localname": "ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTaxAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/StockholdersEquityChangeinAOCIDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Reconciliation of Unrecognized Tax Benefits, Excluding Amounts Pertaining to Examined Tax Returns [Roll Forward]",
        "terseLabel": "Reconciliation of Unrecognized Tax Benefits, Excluding Amounts Pertaining to Examined Tax Returns [Roll Forward]"
       }
      }
     },
     "localname": "ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesGrossUnrecognizedTaxBenefitDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RelatedPartyDomain": {
     "auth_ref": [
      "r523",
      "r728",
      "r729"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Related parties include affiliates; other entities for which investments are accounted for by the equity method by the entity; trusts for benefit of employees; and principal owners, management, and members of immediate families. It also may include other parties with which the entity may control or can significantly influence the management or operating policies of the other to an extent that one of the transacting parties might be prevented from fully pursuing its own separate interests.",
        "label": "Related Party [Domain]",
        "terseLabel": "Related Party [Domain]"
       }
      }
     },
     "localname": "RelatedPartyDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RelatedPartyTransactionsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/RelatedPartyTransactionsScheduleofRelatedPartyTransactionsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty": {
     "auth_ref": [
      "r189"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Expenses recognized resulting from transactions (excluding transactions that are eliminated in consolidated or combined financial statements) with related party.",
        "label": "Related Party Transaction, Expenses from Transactions with Related Party",
        "terseLabel": "Rent"
       }
      }
     },
     "localname": "RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RelatedPartyTransactionsScheduleofRelatedPartyTransactionsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RelatedPartyTransactionLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Related Party Transaction [Line Items]",
        "terseLabel": "Related Party Transaction [Line Items]"
       }
      }
     },
     "localname": "RelatedPartyTransactionLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RelatedPartyTransactionsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/RelatedPartyTransactionsScheduleofRelatedPartyTransactionsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Purchases during the period (excluding transactions that are eliminated in consolidated or combined financial statements) with related party.",
        "label": "Related Party Transaction, Purchases from Related Party",
        "terseLabel": "Purchases"
       }
      }
     },
     "localname": "RelatedPartyTransactionPurchasesFromRelatedParty",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RelatedPartyTransactionsScheduleofRelatedPartyTransactionsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RelatedPartyTransactionsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Related Party Transactions [Abstract]",
        "terseLabel": "Related Party Transactions [Abstract]"
       }
      }
     },
     "localname": "RelatedPartyTransactionsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_RelatedPartyTransactionsByRelatedPartyAxis": {
     "auth_ref": [
      "r523",
      "r728",
      "r749",
      "r750",
      "r751",
      "r752",
      "r753",
      "r754",
      "r755",
      "r756",
      "r757",
      "r758",
      "r759",
      "r760",
      "r973"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of related party. Related parties include, but not limited to, affiliates; other entities for which investments are accounted for by the equity method by the entity; trusts for benefit of employees; and principal owners, management, and members of immediate families. It also may include other parties with which the entity may control or can significantly influence the management or operating policies of the other to an extent that one of the transacting parties might be prevented from fully pursuing its own separate interests.",
        "label": "Related Party [Axis]",
        "terseLabel": "Related Party [Axis]"
       }
      }
     },
     "localname": "RelatedPartyTransactionsByRelatedPartyAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RelatedPartyTransactionsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/RelatedPartyTransactionsScheduleofRelatedPartyTransactionsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RelatedPartyTransactionsDisclosureTextBlock": {
     "auth_ref": [
      "r726",
      "r727",
      "r729",
      "r730",
      "r731"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for related party transactions. Examples of related party transactions include transactions between (a) a parent company and its subsidiary; (b) subsidiaries of a common parent; (c) and entity and its principal owners; and (d) affiliates.",
        "label": "Related Party Transactions Disclosure [Text Block]",
        "terseLabel": "Related Party Transactions"
       }
      }
     },
     "localname": "RelatedPartyTransactionsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RelatedPartyTransactions"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RepaymentsOfMediumTermNotes": {
     "auth_ref": [
      "r53"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow to pay off borrowing used to receive debt funding on a regular basis with maturities ranging from 5-10 years.",
        "label": "Repayments of Medium-term Notes",
        "negatedLabel": "Payments on term loan (Note 8)"
       }
      }
     },
     "localname": "RepaymentsOfMediumTermNotes",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RepaymentsOfOtherLongTermDebt": {
     "auth_ref": [
      "r53"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 6.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow for the payment of debt classified as other, maturing after one year or the operating cycle, if longer.",
        "label": "Repayments of Other Long-Term Debt",
        "negatedLabel": "Principal payments on long-term debt"
       }
      }
     },
     "localname": "RepaymentsOfOtherLongTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RestrictedStockMember": {
     "auth_ref": [
      "r71"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Restricted Stock [Member]",
        "terseLabel": "Restricted Stock"
       }
      }
     },
     "localname": "RestrictedStockMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/StockholdersEquityAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "auth_ref": [
      "r10",
      "r111",
      "r214",
      "r777",
      "r782",
      "r839"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS": {
       "order": 3.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.",
        "label": "Retained Earnings (Accumulated Deficit)",
        "terseLabel": "Retained earnings"
       }
      }
     },
     "localname": "RetainedEarningsAccumulatedDeficit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RetainedEarningsMember": {
     "auth_ref": [
      "r225",
      "r277",
      "r278",
      "r279",
      "r282",
      "r291",
      "r294",
      "r362",
      "r585",
      "r586",
      "r587",
      "r617",
      "r618",
      "r664",
      "r773",
      "r775"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.",
        "label": "Retained Earnings [Member]",
        "terseLabel": "Retained Earnings"
       }
      }
     },
     "localname": "RetainedEarningsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY",
      "http://installedbuildingproducts.com/role/CreditLossesAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RetirementPlanTypeAxis": {
     "auth_ref": [
      "r116",
      "r117",
      "r477",
      "r478",
      "r479",
      "r480",
      "r481",
      "r482",
      "r483",
      "r484",
      "r485",
      "r486",
      "r487",
      "r488",
      "r489",
      "r490",
      "r491",
      "r492",
      "r493",
      "r494",
      "r495",
      "r496",
      "r497",
      "r498",
      "r499",
      "r500",
      "r501",
      "r502",
      "r503",
      "r504",
      "r505",
      "r506",
      "r507",
      "r508",
      "r509",
      "r510",
      "r511",
      "r512",
      "r513",
      "r514",
      "r515",
      "r516",
      "r517",
      "r518",
      "r519",
      "r520",
      "r521",
      "r522",
      "r523",
      "r524",
      "r525",
      "r526",
      "r527",
      "r528",
      "r529",
      "r530",
      "r531",
      "r532",
      "r533",
      "r534",
      "r535",
      "r536",
      "r537",
      "r538",
      "r549",
      "r823",
      "r824",
      "r825",
      "r826",
      "r827",
      "r828",
      "r829",
      "r830"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of retirement benefit plan. Includes, but is not limited to, retirement benefit arrangement for defined benefit pension and other postretirement plans, retirement benefit arrangement for defined contribution pension and other postretirement plans, and special and contractual termination benefits payable upon retirement.",
        "label": "Retirement Plan Type [Axis]",
        "terseLabel": "Retirement Plan Type [Axis]"
       }
      }
     },
     "localname": "RetirementPlanTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsContributionstoMultiemployerPensionsandHealthandWelfareBenefitPlansDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RetirementPlanTypeDomain": {
     "auth_ref": [
      "r116",
      "r117",
      "r477",
      "r478",
      "r479",
      "r480",
      "r481",
      "r482",
      "r483",
      "r484",
      "r485",
      "r486",
      "r487",
      "r488",
      "r489",
      "r490",
      "r491",
      "r492",
      "r493",
      "r494",
      "r495",
      "r496",
      "r497",
      "r498",
      "r499",
      "r500",
      "r501",
      "r502",
      "r503",
      "r504",
      "r505",
      "r506",
      "r507",
      "r508",
      "r509",
      "r510",
      "r511",
      "r512",
      "r513",
      "r514",
      "r515",
      "r516",
      "r517",
      "r518",
      "r519",
      "r520",
      "r521",
      "r522",
      "r523",
      "r524",
      "r525",
      "r526",
      "r527",
      "r528",
      "r529",
      "r530",
      "r531",
      "r532",
      "r533",
      "r534",
      "r535",
      "r536",
      "r537",
      "r538",
      "r549",
      "r823",
      "r824",
      "r825",
      "r826",
      "r827",
      "r828",
      "r829",
      "r830"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Type of plan designed to provide participants with retirement benefits. Includes, but is not limited to, retirement benefit arrangement for defined benefit pension and other postretirement plans, retirement benefit arrangement for defined contribution pension and other postretirement plans, and special and contractual termination benefits payable upon retirement.",
        "label": "Retirement Plan Type [Domain]",
        "terseLabel": "Retirement Plan Type [Domain]"
       }
      }
     },
     "localname": "RetirementPlanTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsContributionstoMultiemployerPensionsandHealthandWelfareBenefitPlansDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue from Contract with Customer [Abstract]",
        "terseLabel": "Revenue from Contract with Customer [Abstract]"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": {
     "auth_ref": [
      "r321",
      "r322",
      "r334",
      "r339",
      "r340",
      "r346",
      "r347",
      "r349",
      "r471",
      "r472",
      "r743"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME": {
       "order": 1.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": 1.0
      },
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails": {
       "order": 1.0,
       "parentTag": "ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Revenue from Contract with Customer, Excluding Assessed Tax",
        "terseLabel": "Revenue",
        "verboseLabel": "Net revenue"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerExcludingAssessedTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME",
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails",
      "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerMember": {
     "auth_ref": [
      "r349",
      "r885"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Revenue from satisfaction of performance obligation by transferring promised product and service to customer, when it serves as benchmark in concentration of risk calculation.",
        "label": "Revenue from Contract with Customer Benchmark [Member]",
        "terseLabel": "Revenue from Contract with Customer Benchmark"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerPolicyTextBlock": {
     "auth_ref": [
      "r463",
      "r464",
      "r465",
      "r466",
      "r467",
      "r468",
      "r469",
      "r470",
      "r476",
      "r803"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for revenue from contract with customer.",
        "label": "Revenue from Contract with Customer [Policy Text Block]",
        "terseLabel": "Revenue and Cost Recognition"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerProductAndServiceBenchmarkMember": {
     "auth_ref": [
      "r884"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Revenue from satisfaction of performance obligation by transferring promised product and service to customer for specified product or service, when it serves as benchmark in concentration of risk calculation.",
        "label": "Revenue from Contract with Customer, Product and Service Benchmark [Member]",
        "terseLabel": "Revenue from Contract with Customer, Product and Service Benchmark"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerProductAndServiceBenchmarkMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerTextBlock": {
     "auth_ref": [
      "r453",
      "r454",
      "r455",
      "r456",
      "r457",
      "r458",
      "r461",
      "r462",
      "r475",
      "r476"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.",
        "label": "Revenue from Contract with Customer [Text Block]",
        "terseLabel": "Revenue Recognition"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognition"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RevenueFromRelatedParties": {
     "auth_ref": [
      "r39",
      "r220",
      "r407",
      "r408",
      "r409",
      "r415",
      "r416",
      "r417"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of revenue, fees and commissions earned from transactions between (a) a parent company and its subsidiaries; (b) subsidiaries of a common parent; (c) an entity and trusts for the benefit of employees, for example, but not limited to, pension and profit-sharing trusts that are managed by or under the trusteeship of the entity's management; (d) an entity and its principal, owners, management, or members of their immediate families; and (e) affiliates.",
        "label": "Revenue from Related Parties",
        "terseLabel": "Sales"
       }
      }
     },
     "localname": "RevenueFromRelatedParties",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RelatedPartyTransactionsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/RelatedPartyTransactionsScheduleofRelatedPartyTransactionsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RevenueRemainingPerformanceObligation": {
     "auth_ref": [
      "r459"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of transaction price allocated to performance obligation that has not been recognized as revenue.",
        "label": "Revenue, Remaining Performance Obligation, Amount",
        "terseLabel": "Transaction price allocated to uncompleted contracts"
       }
      }
     },
     "localname": "RevenueRemainingPerformanceObligation",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]",
        "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]"
       }
      }
     },
     "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1": {
     "auth_ref": [
      "r460"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Period in which remaining performance obligation is expected to be recognized as revenue, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period",
        "terseLabel": "Expected time of revenue recognition"
       }
      }
     },
     "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionAdditionalInformationDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis": {
     "auth_ref": [
      "r460"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Start date of time band for expected timing of satisfaction of remaining performance obligation, in YYYY-MM-DD format.",
        "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]",
        "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]"
       }
      }
     },
     "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about expected timing for satisfying remaining performance obligation.",
        "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]",
        "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]"
       }
      }
     },
     "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RevenueRecognitionAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevolvingCreditFacilityMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Arrangement in which loan proceeds can continuously be obtained following repayments, but the total amount borrowed cannot exceed a specified maximum amount.",
        "label": "Revolving Credit Facility [Member]",
        "terseLabel": "Revolving Credit Facility"
       }
      }
     },
     "localname": "RevolvingCreditFacilityMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability": {
     "auth_ref": [
      "r714",
      "r838"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase in right-of-use asset obtained in exchange for operating lease liability.",
        "label": "Right-of-Use Asset Obtained in Exchange for Operating Lease Liability",
        "verboseLabel": "Right-of-use assets obtained in exchange for operating lease obligations"
       }
      }
     },
     "localname": "RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable": {
     "auth_ref": [
      "r141",
      "r142",
      "r631"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule reflecting each material business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities.",
        "label": "Schedule of Business Acquisitions, by Acquisition [Table]",
        "terseLabel": "Schedule of Business Acquisitions, by Acquisition [Table]"
       }
      }
     },
     "localname": "ScheduleOfBusinessAcquisitionsByAcquisitionTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetail",
      "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock": {
     "auth_ref": [
      "r141",
      "r142"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of a material business combination completed during the period, including background, timing, and recognized assets and liabilities. This table does not include leveraged buyouts.",
        "label": "Schedule of Business Acquisitions, by Acquisition [Table Text Block]",
        "terseLabel": "Schedule of Business Combinations"
       }
      }
     },
     "localname": "ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock": {
     "auth_ref": [
      "r169"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of gain (loss) on derivative and nonderivative instruments designated and qualifying as cash flow hedge recorded in accumulated other comprehensive income (AOCI) and reclassified into earnings.",
        "label": "Schedule of Cash Flow Hedges Included in Accumulated Other Comprehensive Income (Loss) [Table Text Block]",
        "terseLabel": "Schedule of Cash Flow Hedges Included in Accumulated Other Comprehensive Income (Loss)"
       }
      }
     },
     "localname": "ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/StockholdersEquityTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock": {
     "auth_ref": [
      "r134"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the components of income tax expense attributable to continuing operations for each year presented including, but not limited to: current tax expense (benefit), deferred tax expense (benefit), investment tax credits, government grants, the benefits of operating loss carryforwards, tax expense that results from allocating certain tax benefits either directly to contributed capital or to reduce goodwill or other noncurrent intangible assets of an acquired entity, adjustments of a deferred tax liability or asset for enacted changes in tax laws or rates or a change in the tax status of the entity, and adjustments of the beginning-of-the-year balances of a valuation allowance because of a change in circumstances that causes a change in judgment about the realizability of the related deferred tax asset in future years.",
        "label": "Schedule of Components of Income Tax Expense (Benefit) [Table Text Block]",
        "terseLabel": "Provision for Income Taxes"
       }
      }
     },
     "localname": "ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDebtTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of information pertaining to short-term and long-debt instruments or arrangements, including but not limited to identification of terms, features, collateral requirements and other information necessary to a fair presentation.",
        "label": "Schedule of Debt [Table Text Block]",
        "terseLabel": "Schedule of Debt"
       }
      }
     },
     "localname": "ScheduleOfDebtTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongTermDebtTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock": {
     "auth_ref": [
      "r132"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the components of net deferred tax asset or liability recognized in an entity's statement of financial position, including the following: the total of all deferred tax liabilities, the total of all deferred tax assets, the total valuation allowance recognized for deferred tax assets.",
        "label": "Schedule of Deferred Tax Assets and Liabilities [Table Text Block]",
        "terseLabel": "Net Deferred Tax Asset or Liability"
       }
      }
     },
     "localname": "ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock": {
     "auth_ref": [
      "r166",
      "r170",
      "r651"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the location and amount of derivative instruments and nonderivative instruments designated as hedging instruments reported before netting adjustments, and the amount of gain (loss) on derivative instruments and nonderivative instruments designated and qualified as hedging instruments.",
        "label": "Derivative Instruments, Gain (Loss) [Table Text Block]",
        "terseLabel": "Derivative Instruments, Gain (Loss)"
       }
      }
     },
     "localname": "ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/DerivativesandHedgingActivitiesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock": {
     "auth_ref": [
      "r130"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the reconciliation using percentage or dollar amounts of the reported amount of income tax expense attributable to continuing operations for the year to the amount of income tax expense that would result from applying domestic federal statutory tax rates to pretax income from continuing operations.",
        "label": "Schedule of Effective Income Tax Rate Reconciliation [Table Text Block]",
        "terseLabel": "Reconciliation Between Effective Tax Rate on Net Income (Loss) and Federal Statutory Tax Rate"
       }
      }
     },
     "localname": "ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock": {
     "auth_ref": [
      "r122"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of allocation of amount expensed and capitalized for award under share-based payment arrangement to statement of income or comprehensive income and statement of financial position. Includes, but is not limited to, corresponding line item in financial statement.",
        "label": "Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block]",
        "terseLabel": "Summary of Stock Compensation Expenses"
       }
      }
     },
     "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock": {
     "auth_ref": [
      "r668",
      "r669"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of assets and liabilities, including [financial] instruments measured at fair value that are classified in stockholders' equity, if any, that are measured at fair value on a recurring basis. The disclosures contemplated herein include the fair value measurements at the reporting date by the level within the fair value hierarchy in which the fair value measurements in their entirety fall, segregating fair value measurements using quoted prices in active markets for identical assets (Level 1), significant other observable inputs (Level 2), and significant unobservable inputs (Level 3).",
        "label": "Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis [Table Text Block]",
        "terseLabel": "Schedule of Fair Values of Financial Assets and Liabilities"
       }
      }
     },
     "localname": "ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/FairValueMeasurementsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable": {
     "auth_ref": [
      "r796",
      "r893"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about allowance for credit loss on financing receivable.",
        "label": "Financing Receivable, Allowance for Credit Loss [Table]",
        "terseLabel": "Financing Receivable, Allowance for Credit Loss [Table]"
       }
      }
     },
     "localname": "ScheduleOfFinancingReceivableAllowanceForCreditLossesTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CreditLossesAdditionalInformationDetails",
      "http://installedbuildingproducts.com/role/CreditLossesScheduleofChangesinAllowanceforCreditLossesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": {
     "auth_ref": [
      "r89",
      "r91",
      "r744"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Schedule of Finite-Lived Intangible Assets [Table]",
        "terseLabel": "Schedule of Finite-Lived Intangible Assets [Table]"
       }
      }
     },
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock": {
     "auth_ref": [
      "r89",
      "r91"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of assets, excluding financial assets and goodwill, lacking physical substance with a finite life, by either major class or business segment.",
        "label": "Schedule of Finite-Lived Intangible Assets [Table Text Block]",
        "terseLabel": "Schedule of Gross Carrying Amount, Accumulated Amortization and Net Book Value"
       }
      }
     },
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfGoodwillTable": {
     "auth_ref": [
      "r377",
      "r378",
      "r379",
      "r380",
      "r381",
      "r382",
      "r383",
      "r384",
      "r385",
      "r386",
      "r387",
      "r807"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of goodwill and the changes during the year due to acquisition, sale, impairment or for other reasons.",
        "label": "Schedule of Goodwill [Table]",
        "terseLabel": "Schedule of Goodwill [Table]"
       }
      }
     },
     "localname": "ScheduleOfGoodwillTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfGoodwillTextBlock": {
     "auth_ref": [
      "r807",
      "r894",
      "r895",
      "r896",
      "r897",
      "r898",
      "r899",
      "r900",
      "r901",
      "r902",
      "r903",
      "r904"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of goodwill by reportable segment and in total which includes a rollforward schedule.",
        "label": "Schedule of Goodwill [Table Text Block]",
        "terseLabel": "Summary of Change in Carrying Amount of Goodwill"
       }
      }
     },
     "localname": "ScheduleOfGoodwillTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfMalpracticeInsuranceTypeAndTierIdentifierAxis": {
     "auth_ref": [
      "r222"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of insurance coverage or layer of insurance that covers malpractice claims.",
        "label": "Insurance Type and Tier Identifier [Axis]",
        "terseLabel": "Insurance Type and Tier Identifier [Axis]"
       }
      }
     },
     "localname": "ScheduleOfMalpracticeInsuranceTypeAndTierIdentifierAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock": {
     "auth_ref": [
      "r103"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of maturity and sinking fund requirement for long-term debt.",
        "label": "Schedule of Maturities of Long-Term Debt [Table Text Block]",
        "terseLabel": "Schedule of Maturities of Long-term Debt"
       }
      }
     },
     "localname": "ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongTermDebtTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfMultiemployerPlansTable": {
     "auth_ref": [
      "r537",
      "r538",
      "r539",
      "r540",
      "r541",
      "r542",
      "r543",
      "r544",
      "r545",
      "r546",
      "r547",
      "r549",
      "r825",
      "r826",
      "r827",
      "r828",
      "r829",
      "r830",
      "r831"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about multiemployer plan.",
        "label": "Multiemployer Plan [Table]",
        "terseLabel": "Multiemployer Plan [Table]"
       }
      }
     },
     "localname": "ScheduleOfMultiemployerPlansTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsContributionstoMultiemployerPensionsandHealthandWelfareBenefitPlansDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfMultiemployerPlansTableTextBlock": {
     "auth_ref": [
      "r539",
      "r540",
      "r541",
      "r542",
      "r543",
      "r544",
      "r545",
      "r546",
      "r548",
      "r549",
      "r831"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of information about multiemployer plan.",
        "label": "Multiemployer Plan [Table Text Block]",
        "terseLabel": "Contributions to Multiemployer Pensions and Health and Welfare Benefit Plans"
       }
      }
     },
     "localname": "ScheduleOfMultiemployerPlansTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock": {
     "auth_ref": [
      "r69",
      "r70",
      "r72",
      "r73"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of changes in accounting principles, including adoption of new accounting pronouncements, that describes the new methods, amount and effects on financial statement line items.",
        "label": "Accounting Standards Update and Change in Accounting Principle [Table Text Block]",
        "terseLabel": "Recently Adopted and Recently Issued Accounting Pronouncements"
       }
      }
     },
     "localname": "ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock": {
     "auth_ref": [
      "r120"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the changes in outstanding nonvested shares.",
        "label": "Schedule of Nonvested Share Activity [Table Text Block]",
        "terseLabel": "Summary of Equity-Based Awards for Employees"
       }
      }
     },
     "localname": "ScheduleOfNonvestedShareActivityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock": {
     "auth_ref": [
      "r161"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the notional amounts of outstanding derivative positions.",
        "label": "Schedule of Notional Amounts of Outstanding Derivative Positions [Table Text Block]",
        "terseLabel": "Schedule of Notional Amounts of Outstanding Derivative Positions"
       }
      }
     },
     "localname": "ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/DerivativesandHedgingActivitiesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": {
     "auth_ref": [
      "r99"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.",
        "label": "Property, Plant and Equipment [Table]",
        "terseLabel": "Property, Plant and Equipment [Table]"
       }
      }
     },
     "localname": "ScheduleOfPropertyPlantAndEquipmentTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofDepreciationandAmortizationExpenseonPropertyandEquipmentbyIncomeStatementCategoryDetails",
      "http://installedbuildingproducts.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock": {
     "auth_ref": [
      "r145"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the amounts recognized as of the acquisition date for each major class of assets acquired and liabilities assumed. May include but not limited to the following: (a) acquired receivables; (b) contingencies recognized at the acquisition date; and (c) the fair value of noncontrolling interests in the acquiree.",
        "label": "Schedule of Recognized Identified Assets Acquired and Liabilities Assumed [Table Text Block]",
        "terseLabel": "Summary of Estimated Fair Value of Assets Acquired and Liabilities Assumed"
       }
      }
     },
     "localname": "ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable": {
     "auth_ref": [
      "r191",
      "r192"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of quantitative and qualitative information pertaining to related party transactions. Examples of related party transactions include transactions between (a) a parent company and its subsidiary; (b) subsidiaries of a common parent; (c) and entity and its principal owners; and (d) affiliates.",
        "label": "Schedule of Related Party Transactions, by Related Party [Table]",
        "terseLabel": "Schedule of Related Party Transactions, by Related Party [Table]"
       }
      }
     },
     "localname": "ScheduleOfRelatedPartyTransactionsByRelatedPartyTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RelatedPartyTransactionsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/RelatedPartyTransactionsScheduleofRelatedPartyTransactionsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of related party transactions. Examples of related party transactions include, but are not limited to, transactions between (a) a parent company and its subsidiary; (b) subsidiaries of a common parent; (c) and entity and its principal owners and (d) affiliates.",
        "label": "Schedule of Related Party Transactions [Table Text Block]",
        "terseLabel": "Schedule of Common or Related Party Transactions"
       }
      }
     },
     "localname": "ScheduleOfRelatedPartyTransactionsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RelatedPartyTransactionsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable": {
     "auth_ref": [
      "r81",
      "r82",
      "r83",
      "r87"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A table disclosing the profit or loss and total assets for each reportable segment of the entity. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss.",
        "label": "Schedule of Segment Reporting Information, by Segment [Table]",
        "terseLabel": "Schedule of Segment Reporting Information, by Segment [Table]"
       }
      }
     },
     "localname": "ScheduleOfSegmentReportingInformationBySegmentTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": {
     "auth_ref": [
      "r81",
      "r82",
      "r83",
      "r87"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss.",
        "label": "Schedule of Segment Reporting Information, by Segment [Table Text Block]",
        "terseLabel": "Schedule of Segment Information"
       }
      }
     },
     "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/InformationonSegmentsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": {
     "auth_ref": [
      "r550",
      "r552",
      "r554",
      "r555",
      "r556",
      "r558",
      "r559",
      "r560",
      "r561",
      "r562",
      "r563",
      "r564",
      "r565",
      "r566",
      "r567",
      "r568",
      "r569",
      "r570",
      "r571",
      "r572",
      "r573",
      "r574",
      "r575",
      "r578",
      "r579",
      "r580",
      "r581",
      "r582"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about share-based payment arrangement.",
        "label": "Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table]",
        "terseLabel": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofStockCompensationExpenseDetail",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsUnrecognizedShareBasedCompensationExpenseRelatedtoUnvestedAwardsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock": {
     "auth_ref": [
      "r123"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of cost not yet recognized and weighted-average period over which cost is expected to be recognized for nonvested award under share-based payment arrangement.",
        "label": "Share-Based Payment Arrangement, Nonvested Award, Cost [Table Text Block]",
        "terseLabel": "Unrecognized Share-Based Compensation Expense Related to Unvested Awards"
       }
      }
     },
     "localname": "ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock": {
     "auth_ref": [
      "r834",
      "r951"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the change in unrecognized tax benefits.",
        "label": "Schedule of Unrecognized Tax Benefits Roll Forward [Table Text Block]",
        "terseLabel": "Rollforward of Gross Unrecognized Tax Benefits"
       }
      }
     },
     "localname": "ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock": {
     "auth_ref": [
      "r91"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the amount of amortization expense expected to be recorded in succeeding fiscal years for finite-lived intangible assets.",
        "label": "Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block]",
        "terseLabel": "Schedule of Estimated Aggregate Annual Amortization"
       }
      }
     },
     "localname": "ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SegmentDomain": {
     "auth_ref": [
      "r318",
      "r321",
      "r322",
      "r323",
      "r324",
      "r325",
      "r326",
      "r327",
      "r328",
      "r329",
      "r330",
      "r331",
      "r332",
      "r334",
      "r335",
      "r336",
      "r337",
      "r338",
      "r339",
      "r340",
      "r341",
      "r342",
      "r344",
      "r349",
      "r377",
      "r378",
      "r379",
      "r380",
      "r381",
      "r382",
      "r383",
      "r384",
      "r385",
      "r397",
      "r398",
      "r807",
      "r982"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity.",
        "label": "Segments [Domain]",
        "terseLabel": "Segments [Domain]"
       }
      }
     },
     "localname": "SegmentDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails",
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SegmentReportingAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segment Reporting [Abstract]"
       }
      }
     },
     "localname": "SegmentReportingAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_SegmentReportingDisclosureTextBlock": {
     "auth_ref": [
      "r318",
      "r319",
      "r320",
      "r330",
      "r333",
      "r338",
      "r342",
      "r343",
      "r344",
      "r345",
      "r346",
      "r348",
      "r349",
      "r350"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments.",
        "label": "Segment Reporting Disclosure [Text Block]",
        "terseLabel": "INFORMATION ON SEGMENTS"
       }
      }
     },
     "localname": "SegmentReportingDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/InformationonSegments"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SegmentReportingInformationLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Segment Reporting Information [Line Items]",
        "terseLabel": "Segment Reporting Information [Line Items]"
       }
      }
     },
     "localname": "SegmentReportingInformationLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SellingAndMarketingExpenseMember": {
     "auth_ref": [
      "r37"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Primary financial statement caption encompassing selling and marketing expense.",
        "label": "Selling and Marketing Expense [Member]",
        "terseLabel": "Selling"
       }
      }
     },
     "localname": "SellingAndMarketingExpenseMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofStockCompensationExpenseDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SellingExpense": {
     "auth_ref": [
      "r42"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME": {
       "order": 2.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Expenses recognized in the period that are directly related to the selling and distribution of products or services.",
        "label": "Selling Expense",
        "terseLabel": "Selling"
       }
      }
     },
     "localname": "SellingExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME",
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SeniorNotesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Bond that takes priority over other debt securities sold by the issuer. In the event the issuer goes bankrupt, senior debt holders receive priority for (must receive) repayment prior to (relative to) junior and unsecured (general) creditors.",
        "label": "Senior Notes [Member]",
        "terseLabel": "Senior Notes"
       }
      }
     },
     "localname": "SeniorNotesMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/LongtermDebtScheduleofDebtDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember": {
     "auth_ref": [
      "r142"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the aggregation and reporting of combined amounts of individually immaterial business combinations that were completed during the period.",
        "label": "Series of Individually Immaterial Business Acquisitions [Member]",
        "terseLabel": "Combined Business Acquisitions"
       }
      }
     },
     "localname": "SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensation": {
     "auth_ref": [
      "r58"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of noncash expense for share-based payment arrangement.",
        "label": "Share-Based Payment Arrangement, Noncash Expense",
        "terseLabel": "Noncash stock compensation"
       }
      }
     },
     "localname": "ShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": {
     "auth_ref": [
      "r832"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period",
        "terseLabel": "Vesting period (in years)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod": {
     "auth_ref": [
      "r571"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited during the reporting period.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeited in Period",
        "negatedLabel": "Forfeited/Cancelled (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r571"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average fair value as of the grant date of equity-based award plans other than stock (unit) option plans that were not exercised or put into effect as a result of the occurrence of a terminating event.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeitures, Weighted Average Grant Date Fair Value",
        "terseLabel": "Forfeited/Cancelled (in USD per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": {
     "auth_ref": [
      "r569"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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).",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period",
        "terseLabel": "Share-based awards granted (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r569"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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).",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value",
        "terseLabel": "Granted (in USD per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber": {
     "auth_ref": [
      "r566",
      "r567"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number",
        "periodEndLabel": "Nonvested performance-based stock awards/units, Ending balance (in shares)",
        "periodStartLabel": "Nonvested performance-based stock awards/units, Beginning balance (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward]",
        "terseLabel": "Awards"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r566",
      "r567"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value",
        "periodEndLabel": "Nonvested performance-based stock awards/units, Ending balance (in USD per share)",
        "periodStartLabel": "Nonvested performance-based stock awards/units, Beginning balance (in USD per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value [Abstract]",
        "terseLabel": "Weighted Average Grant Date Fair Value Per Share"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": {
     "auth_ref": [
      "r570"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period",
        "negatedLabel": "Vested (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r570"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The weighted average fair value as of grant date pertaining to an equity-based award plan other than a stock (or unit) option plan for which the grantee gained the right during the reporting period, by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash in accordance with the terms of the arrangement.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Weighted Average Grant Date Fair Value",
        "verboseLabel": "Vested (in USD per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]",
        "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofStockCompensationExpenseDetail",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsUnrecognizedShareBasedCompensationExpenseRelatedtoUnvestedAwardsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized": {
     "auth_ref": [
      "r833"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares authorized for issuance under share-based payment arrangement.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Authorized",
        "terseLabel": "Common stock shares authorized (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": {
     "auth_ref": [
      "r125"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The difference between the maximum number of shares (or other type of equity) authorized for issuance under the plan (including the effects of amendments and adjustments), and the sum of: 1) the number of shares (or other type of equity) already issued upon exercise of options or other equity-based awards under the plan; and 2) shares (or other type of equity) reserved for issuance on granting of outstanding awards, net of cancellations and forfeitures, if applicable.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Available for Grant",
        "terseLabel": "Common stock shares available for issuance (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": {
     "auth_ref": [
      "r562"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gross number of share options (or share units) granted during the period.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Gross",
        "terseLabel": "Granted (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r572"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value",
        "terseLabel": "Granted (in USD per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": {
     "auth_ref": [
      "r554",
      "r555",
      "r556",
      "r558",
      "r559",
      "r560",
      "r561",
      "r562",
      "r563",
      "r564",
      "r565",
      "r566",
      "r567",
      "r568",
      "r569",
      "r570",
      "r571",
      "r572",
      "r573",
      "r574",
      "r575",
      "r578",
      "r579",
      "r580",
      "r581",
      "r582"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Award under share-based payment arrangement.",
        "label": "Award Type [Domain]",
        "terseLabel": "Award Type [Domain]"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsUnrecognizedShareBasedCompensationExpenseRelatedtoUnvestedAwardsDetails",
      "http://installedbuildingproducts.com/role/StockholdersEquityAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensationAwardTrancheOneMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "First portion of award under share-based payment arrangement differentiated by vesting feature, including, but not limited to, performance measure or service period.",
        "label": "Share-Based Payment Arrangement, Tranche One [Member]",
        "terseLabel": "Share-based Payment Arrangement, Tranche One"
       }
      }
     },
     "localname": "ShareBasedCompensationAwardTrancheOneMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensationAwardTrancheThreeMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Third portion of award under share-based payment arrangement differentiated by vesting feature, including, but not limited to, performance measure or service period.",
        "label": "Share-Based Payment Arrangement, Tranche Three [Member]",
        "terseLabel": "Share-based Payment Arrangement, Tranche Three"
       }
      }
     },
     "localname": "ShareBasedCompensationAwardTrancheThreeMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensationAwardTrancheTwoMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Second portion of award under share-based payment arrangement differentiated by vesting feature, including, but not limited to, performance measure or service period.",
        "label": "Share-Based Payment Arrangement, Tranche Two [Member]",
        "terseLabel": "Share-based Payment Arrangement, Tranche Two"
       }
      }
     },
     "localname": "ShareBasedCompensationAwardTrancheTwoMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy": {
     "auth_ref": [
      "r557",
      "r576",
      "r577",
      "r578",
      "r579",
      "r582",
      "r588",
      "r589"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for award under share-based payment arrangement. Includes, but is not limited to, methodology and assumption used in measuring cost.",
        "label": "Share-Based Payment Arrangement [Policy Text Block]",
        "terseLabel": "Share-Based Compensation"
       }
      }
     },
     "localname": "ShareBasedCompensationOptionAndIncentivePlansPolicy",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ShareBasedPaymentArrangementNonemployeeMember": {
     "auth_ref": [
      "r550",
      "r554",
      "r555",
      "r556",
      "r558",
      "r559",
      "r560",
      "r561",
      "r562",
      "r563",
      "r564",
      "r565",
      "r566",
      "r567",
      "r568",
      "r569",
      "r570",
      "r571",
      "r572",
      "r573",
      "r574",
      "r575",
      "r578",
      "r579",
      "r580",
      "r581",
      "r582"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Recipient, of award granted under share-based payment arrangement, over whom grantor does not exercise nor has right to exercise sufficient control to establish employer-employee relationship based on law of pertinent jurisdiction. Excludes nonemployee director treated as employee when acting as member of board of directors, if elected by grantor's shareholders or appointed to board position to be filled by shareholder election when existing term expires.",
        "label": "Share-Based Payment Arrangement, Nonemployee [Member]",
        "terseLabel": "Non-Employee Common Stock Awards"
       }
      }
     },
     "localname": "ShareBasedPaymentArrangementNonemployeeMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage": {
     "auth_ref": [
      "r924"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of vesting of award under share-based payment arrangement.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Rights, Percentage",
        "terseLabel": "Vesting percentage (as a percent)"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of non-vested options outstanding.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Nonvested, Number of Shares",
        "periodEndLabel": "Nonvested common stock awards, Ending balance (in shares)",
        "periodStartLabel": "Nonvested common stock awards, Beginning balance (in shares)"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Nonvested, Number of Shares [Roll Forward]",
        "terseLabel": "Awards"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of non-vested options forfeited.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Nonvested Options Forfeited, Number of Shares",
        "negatedLabel": "Forfeited/Cancelled (in shares)"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average grant-date fair value of non-vested options forfeited.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Nonvested Options Forfeited, Weighted Average Grant Date Fair Value",
        "terseLabel": "Forfeited/Cancelled (in USD per share)"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average grant-date fair value of non-vested options outstanding.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Option, Nonvested, Weighted Average Exercise Price",
        "periodEndLabel": "Nonvested common stock awards, Ending balance (in USD per share)",
        "periodStartLabel": "Nonvested common stock awards, Beginning balance (in USD per share)"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Nonvested, Weighted Average Grant Date Fair Value [Abstract]",
        "terseLabel": "Weighted Average Grant Date Fair Value Per Share"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of options vested.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested, Number of Shares",
        "negatedLabel": "Vested (in shares)"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average grant-date fair value of options vested.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested, Weighted Average Grant Date Fair Value",
        "terseLabel": "Vested (in USD per share)"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares used to settle grantee's tax withholding obligation for award under share-based payment arrangement.",
        "label": "Share-Based Payment Arrangement, Shares Withheld for Tax Withholding Obligation",
        "terseLabel": "Common stock surrendered by employees (in shares)"
       }
      }
     },
     "localname": "SharesPaidForTaxWithholdingForShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShortTermDebtTypeAxis": {
     "auth_ref": [
      "r16"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of short-term debt arrangement.",
        "label": "Short-Term Debt, Type [Axis]",
        "terseLabel": "Short-term Debt, Type [Axis]"
       }
      }
     },
     "localname": "ShortTermDebtTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShortTermDebtTypeDomain": {
     "auth_ref": [
      "r14"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Type of short-term debt arrangement, such as notes, line of credit, commercial paper, asset-based financing, project financing, letter of credit financing.",
        "label": "Short-Term Debt, Type [Domain]",
        "terseLabel": "Short-term Debt, Type [Domain]"
       }
      }
     },
     "localname": "ShortTermDebtTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShortTermLeaseCost": {
     "auth_ref": [
      "r711",
      "r838"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of short-term lease cost, excluding expense for lease with term of one month or less.",
        "label": "Short-Term Lease, Cost",
        "terseLabel": "Short-term lease costs"
       }
      }
     },
     "localname": "ShortTermLeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesLeaseCostFinanceandOperatingLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SignificantAccountingPoliciesTextBlock": {
     "auth_ref": [
      "r68",
      "r271"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for all significant accounting policies of the reporting entity.",
        "label": "Significant Accounting Policies [Text Block]",
        "terseLabel": "Significant Accounting Policies"
       }
      }
     },
     "localname": "SignificantAccountingPoliciesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_StatementBusinessSegmentsAxis": {
     "auth_ref": [
      "r229",
      "r318",
      "r321",
      "r322",
      "r323",
      "r324",
      "r325",
      "r326",
      "r327",
      "r328",
      "r329",
      "r330",
      "r331",
      "r332",
      "r334",
      "r335",
      "r336",
      "r337",
      "r338",
      "r339",
      "r340",
      "r341",
      "r342",
      "r344",
      "r349",
      "r377",
      "r378",
      "r379",
      "r380",
      "r381",
      "r382",
      "r383",
      "r384",
      "r385",
      "r395",
      "r397",
      "r398",
      "r807",
      "r982"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by business segments.",
        "label": "Segments [Axis]",
        "terseLabel": "Segments [Axis]"
       }
      }
     },
     "localname": "StatementBusinessSegmentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails",
      "http://installedbuildingproducts.com/role/InformationonSegmentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "auth_ref": [
      "r26",
      "r106",
      "r225",
      "r258",
      "r259",
      "r260",
      "r277",
      "r278",
      "r279",
      "r282",
      "r291",
      "r294",
      "r312",
      "r362",
      "r449",
      "r585",
      "r586",
      "r587",
      "r617",
      "r618",
      "r664",
      "r684",
      "r685",
      "r686",
      "r687",
      "r688",
      "r689",
      "r725",
      "r773",
      "r774",
      "r775"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by component of equity.",
        "label": "Equity Components [Axis]",
        "terseLabel": "Equity Components [Axis]"
       }
      }
     },
     "localname": "StatementEquityComponentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY",
      "http://installedbuildingproducts.com/role/CreditLossesAdditionalInformationDetails",
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail",
      "http://installedbuildingproducts.com/role/StockholdersEquityChangeinAOCIDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Statement [Line Items]",
        "terseLabel": "Statement [Line Items]"
       }
      }
     },
     "localname": "StatementLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS",
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfCashFlowsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Cash Flows [Abstract]",
        "terseLabel": "Statement of Cash Flows [Abstract]"
       }
      }
     },
     "localname": "StatementOfCashFlowsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfFinancialPositionAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Financial Position [Abstract]",
        "terseLabel": "Statement of Financial Position [Abstract]"
       }
      }
     },
     "localname": "StatementOfFinancialPositionAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfStockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Stockholders' Equity [Abstract]",
        "terseLabel": "Statement of Stockholders' Equity [Abstract]"
       }
      }
     },
     "localname": "StatementOfStockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementTable": {
     "auth_ref": [
      "r277",
      "r278",
      "r279",
      "r312",
      "r743"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed.",
        "label": "Statement [Table]",
        "terseLabel": "Statement [Table]"
       }
      }
     },
     "localname": "StatementTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS",
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures": {
     "auth_ref": [
      "r7",
      "r8",
      "r106",
      "r111"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares issued during the period related to Restricted Stock Awards, net of any shares forfeited.",
        "label": "Stock Issued During Period, Shares, Restricted Stock Award, Net of Forfeitures",
        "terseLabel": "Issuance of awards previously classified as liability awards (in shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation": {
     "auth_ref": [
      "r7",
      "r8",
      "r106",
      "r111"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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).",
        "label": "Shares Issued, Shares, Share-Based Payment Arrangement, after Forfeiture",
        "terseLabel": "Share-based compensation issued to directors (in shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY",
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationForfeited": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares (or other type of equity) forfeited during the period.",
        "label": "Shares Issued, Shares, Share-Based Payment Arrangement, Forfeited",
        "negatedLabel": "Surrender of common stock awards by employees (in shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesShareBasedCompensationForfeited",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number, before forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).",
        "label": "Shares Issued, Shares, Share-Based Payment Arrangement, before Forfeiture",
        "terseLabel": "Issuance of common stock awards to employees (in shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesShareBasedCompensationGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures": {
     "auth_ref": [
      "r106",
      "r111"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Value of stock related to Restricted Stock Awards issued during the period, net of the stock value of such awards forfeited.",
        "label": "Stock Issued During Period, Value, Restricted Stock Award, Net of Forfeitures",
        "terseLabel": "Issuance of awards previously classified as liability awards"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation": {
     "auth_ref": [
      "r7",
      "r8",
      "r111",
      "r121"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Value, after forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).",
        "label": "Shares Issued, Value, Share-Based Payment Arrangement, after Forfeiture",
        "terseLabel": "Share-based compensation issued to directors"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY",
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYParenthetical"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationForfeited": {
     "auth_ref": [
      "r124"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Value of forfeited shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).",
        "label": "Shares Issued, Value, Share-Based Payment Arrangement, Forfeited",
        "negatedLabel": "Surrender of common stock awards"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueShareBasedCompensationForfeited",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Value, before forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).",
        "label": "Shares Issued, Value, Share-Based Payment Arrangement, before Forfeiture",
        "terseLabel": "Issuance of common stock awards to employees"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueShareBasedCompensationGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockRepurchaseProgramAuthorizedAmount1": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of stock repurchase plan authorized.",
        "label": "Stock Repurchase Program, Authorized Amount",
        "terseLabel": "Stock repurchase program, authorized"
       }
      }
     },
     "localname": "StockRepurchaseProgramAuthorizedAmount1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/StockholdersEquityAdditionalInformationDetails",
      "http://installedbuildingproducts.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount remaining of a stock repurchase plan authorized.",
        "label": "Stock Repurchase Program, Remaining Authorized Repurchase Amount",
        "terseLabel": "Stock repurchase program, remaining authorized repurchase amount"
       }
      }
     },
     "localname": "StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/StockholdersEquityAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquity": {
     "auth_ref": [
      "r8",
      "r11",
      "r12",
      "r84",
      "r839",
      "r870",
      "r892",
      "r963"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.",
        "label": "Stockholders' Equity Attributable to Parent",
        "negatedTerseLabel": "Stockholders' equity",
        "periodEndLabel": "Accumulated gain (loss) at end of period",
        "periodStartLabel": "Accumulated loss at beginning of period",
        "totalLabel": "Total stockholders\u2019 equity"
       }
      }
     },
     "localname": "StockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS",
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY",
      "http://installedbuildingproducts.com/role/CreditLossesAdditionalInformationDetails",
      "http://installedbuildingproducts.com/role/StockholdersEquityChangeinAOCIDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stockholders' Equity Attributable to Parent [Abstract]",
        "terseLabel": "Stockholders\u2019 equity"
       }
      }
     },
     "localname": "StockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS",
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETSParenthetical"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockholdersEquityNoteDisclosureTextBlock": {
     "auth_ref": [
      "r114",
      "r272",
      "r437",
      "r438",
      "r439",
      "r440",
      "r441",
      "r442",
      "r443",
      "r444",
      "r445",
      "r446",
      "r447",
      "r448",
      "r449",
      "r655"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for shareholders' equity comprised of portions attributable to the parent entity and noncontrolling interest, including other comprehensive income. Includes, but is not limited to, balances of common stock, preferred stock, additional paid-in capital, other capital and retained earnings, accumulated balance for each classification of other comprehensive income and amount of comprehensive income.",
        "label": "Stockholders' Equity Note Disclosure [Text Block]",
        "terseLabel": "Stockholders' Equity"
       }
      }
     },
     "localname": "StockholdersEquityNoteDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/StockholdersEquity"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SubsequentEventLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Detail information of subsequent event by type. User is expected to use existing line items from elsewhere in the taxonomy as the primary line items for this disclosure, which is further associated with dimension and member elements pertaining to a subsequent event.",
        "label": "Subsequent Event [Line Items]",
        "terseLabel": "Subsequent Event [Line Items]"
       }
      }
     },
     "localname": "SubsequentEventLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventMember": {
     "auth_ref": [
      "r690",
      "r733"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Identifies event that occurred after the balance sheet date but before financial statements are issued or available to be issued.",
        "label": "Subsequent Event [Member]",
        "terseLabel": "Subsequent Event"
       }
      }
     },
     "localname": "SubsequentEventMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SubsequentEventTable": {
     "auth_ref": [
      "r690",
      "r733"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Discloses pertinent information about one or more significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued.",
        "label": "Subsequent Event [Table]",
        "terseLabel": "Subsequent Event [Table]"
       }
      }
     },
     "localname": "SubsequentEventTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventTypeAxis": {
     "auth_ref": [
      "r690",
      "r733"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by event that occurred after the balance sheet date but before financial statements are issued or available to be issued.",
        "label": "Subsequent Event Type [Axis]",
        "terseLabel": "Subsequent Event Type [Axis]"
       }
      }
     },
     "localname": "SubsequentEventTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventTypeDomain": {
     "auth_ref": [
      "r690",
      "r733"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Event that occurred after the balance sheet date but before financial statements are issued or available to be issued.",
        "label": "Subsequent Event Type [Domain]",
        "terseLabel": "Subsequent Event Type [Domain]"
       }
      }
     },
     "localname": "SubsequentEventTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SubsequentEventsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Subsequent Events [Abstract]"
       }
      }
     },
     "localname": "SubsequentEventsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventsTextBlock": {
     "auth_ref": [
      "r732",
      "r734"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business.",
        "label": "Subsequent Events [Text Block]",
        "terseLabel": "Subsequent Events"
       }
      }
     },
     "localname": "SubsequentEventsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SubsequentEvents"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SupplementalCashFlowInformationAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Supplemental Cash Flow Information [Abstract]",
        "terseLabel": "Supplemental disclosures of cash flow information"
       }
      }
     },
     "localname": "SupplementalCashFlowInformationAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_TrademarksAndTradeNamesMember": {
     "auth_ref": [
      "r146"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Rights acquired through registration of a trademark to gain or protect exclusive use of a business name, symbol or other device or style, or rights either acquired through registration of a business name to gain or protect exclusive use thereof.",
        "label": "Trademarks and Trade Names [Member]",
        "terseLabel": "Trademarks and tradenames"
       }
      }
     },
     "localname": "TrademarksAndTradeNamesMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/BusinessCombinationsEstimatesofAcquiredIntangibleAssetsDetail",
      "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TreasuryStockAcquiredAverageCostPerShare": {
     "auth_ref": [
      "r112"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total cost of shares repurchased divided by the total number of shares repurchased.",
        "label": "Treasury Stock Acquired, Average Cost Per Share",
        "terseLabel": "Share repurchase, price per share (USD per share)"
       }
      }
     },
     "localname": "TreasuryStockAcquiredAverageCostPerShare",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/StockholdersEquityAdditionalInformationDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_TreasuryStockCommonShares": {
     "auth_ref": [
      "r112"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of previously issued common shares repurchased by the issuing entity and held in treasury.",
        "label": "Treasury Stock, Common, Shares",
        "negatedPeriodEndLabel": "BALANCE, Treasury Stock, Shares",
        "negatedPeriodStartLabel": "BALANCE, Treasury Stock, Shares",
        "terseLabel": "Treasury Stock (in shares)"
       }
      }
     },
     "localname": "TreasuryStockCommonShares",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETSParenthetical",
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_TreasuryStockCommonValue": {
     "auth_ref": [
      "r27",
      "r112",
      "r113"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS": {
       "order": 4.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount allocated to previously issued common shares repurchased by the issuing entity and held in treasury.",
        "label": "Treasury Stock, Common, Value",
        "negatedPeriodEndLabel": "BALANCE, Treasury Stock, Value",
        "negatedPeriodStartLabel": "BALANCE, Treasury Stock, Value",
        "negatedTerseLabel": "Treasury stock; at cost: 5,123,075 and 3,565,258 shares at December\u00a031, 2022 and 2021, respectively"
       }
      }
     },
     "localname": "TreasuryStockCommonValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDBALANCESHEETS",
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_TreasuryStockMember": {
     "auth_ref": [
      "r25",
      "r112"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Shares of an entity that have been repurchased by the entity. This stock has no voting rights and receives no dividends. Note that treasury stock may be recorded at its total cost or separately as par (or stated) value and additional paid in capital. Classified within stockholders' equity if nonredeemable or redeemable solely at the option of the issuer. Classified within temporary equity if redemption is outside the control of the issuer.",
        "label": "Treasury Stock [Member]",
        "terseLabel": "Treasury Stock"
       }
      }
     },
     "localname": "TreasuryStockMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TreasuryStockSharesAcquired": {
     "auth_ref": [
      "r8",
      "r106",
      "r111"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares that have been repurchased during the period and are being held in treasury.",
        "label": "Treasury Stock, Shares, Acquired",
        "negatedLabel": "Common stock repurchase (in shares)",
        "terseLabel": "Common stock repurchase (in shares)"
       }
      }
     },
     "localname": "TreasuryStockSharesAcquired",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY",
      "http://installedbuildingproducts.com/role/StockholdersEquityAdditionalInformationDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_TreasuryStockValueAcquiredCostMethod": {
     "auth_ref": [
      "r106",
      "r111",
      "r112"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Equity impact of the cost of common and preferred stock that were repurchased during the period. Recorded using the cost method.",
        "label": "Treasury Stock, Value, Acquired, Cost Method",
        "negatedLabel": "Common stock repurchase",
        "terseLabel": "Share repurchase, amount"
       }
      }
     },
     "localname": "TreasuryStockValueAcquiredCostMethod",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY",
      "http://installedbuildingproducts.com/role/StockholdersEquityAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_TrustForBenefitOfEmployeesMember": {
     "auth_ref": [
      "r923",
      "r970",
      "r971",
      "r973"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Trust created by the entity that exists for the benefit of its employees, such as pension and profit-sharing trusts that are managed by or under the trusteeship of the entity's management.",
        "label": "Trust for Benefit of Employees [Member]",
        "terseLabel": "Board of Directors"
       }
      }
     },
     "localname": "TrustForBenefitOfEmployeesMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/RelatedPartyTransactionsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TypeAndTierIdentifierDomain": {
     "auth_ref": [
      "r222"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the type of insurance coverage or layer of insurance that covers malpractice claims.",
        "label": "Type and Tier Identifier [Domain]",
        "terseLabel": "Type and Tier Identifier [Domain]"
       }
      }
     },
     "localname": "TypeAndTierIdentifierDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TypeOfAdoptionMember": {
     "auth_ref": [
      "r223",
      "r224",
      "r225",
      "r226",
      "r227",
      "r281",
      "r282",
      "r283",
      "r284",
      "r295",
      "r355",
      "r356",
      "r359",
      "r360",
      "r361",
      "r362",
      "r363",
      "r364",
      "r585",
      "r586",
      "r587",
      "r615",
      "r616",
      "r617",
      "r618",
      "r633",
      "r634",
      "r635",
      "r656",
      "r657",
      "r658",
      "r659",
      "r660",
      "r661",
      "r662",
      "r663",
      "r664",
      "r665",
      "r666",
      "r667",
      "r676",
      "r677",
      "r678",
      "r679",
      "r680",
      "r681",
      "r682",
      "r683",
      "r691",
      "r692",
      "r696",
      "r697",
      "r698",
      "r699",
      "r720",
      "r721",
      "r722",
      "r723",
      "r724",
      "r725",
      "r745",
      "r746",
      "r747",
      "r771",
      "r772",
      "r773",
      "r774",
      "r775",
      "r776",
      "r777",
      "r778",
      "r779",
      "r780",
      "r781",
      "r782"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amendment to accounting standards.",
        "label": "Accounting Standards Update [Domain]",
        "terseLabel": "Type of Adoption [Domain]"
       }
      }
     },
     "localname": "TypeOfAdoptionMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CreditLossesAdditionalInformationDetails",
      "http://installedbuildingproducts.com/role/CreditLossesScheduleofChangesinAllowanceforCreditLossesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_UnrealizedGainLossOnDerivatives": {
     "auth_ref": [
      "r59"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The net change in the difference between the fair value and the carrying value, or in the comparative fair values, of derivative instruments, including options, swaps, futures, and forward contracts, held at each balance sheet date, that was included in earnings for the period.",
        "label": "Unrealized Gain (Loss) on Derivatives",
        "terseLabel": "Unrealized gain (loss) on derivatives"
       }
      }
     },
     "localname": "UnrealizedGainLossOnDerivatives",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefits": {
     "auth_ref": [
      "r592",
      "r601"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of unrecognized tax benefits.",
        "label": "Unrecognized Tax Benefits",
        "periodEndLabel": "Unrecognized tax benefit ending balance",
        "periodStartLabel": "Unrecognized tax benefit beginning balance"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefits",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesGrossUnrecognizedTaxBenefitDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromCurrentPeriodTaxPositions": {
     "auth_ref": [
      "r131"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of decrease in unrecognized tax benefits resulting from tax positions that have been or will be taken in current period tax return.",
        "label": "Unrecognized Tax Benefits, Decrease Resulting from Current Period Tax Positions",
        "negatedLabel": "Decrease as a result of tax positions taken during the period"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsDecreasesResultingFromCurrentPeriodTaxPositions",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesGrossUnrecognizedTaxBenefitDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued": {
     "auth_ref": [
      "r600"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount accrued for interest on an underpayment of income taxes and penalties related to a tax position claimed or expected to be claimed in the tax return.",
        "label": "Unrecognized Tax Benefits, Income Tax Penalties and Interest Accrued",
        "terseLabel": "Uncertain tax positions, interest expense and penalties accrued"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions": {
     "auth_ref": [
      "r602"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase in unrecognized tax benefits resulting from tax positions that have been or will be taken in current period tax return.",
        "label": "Unrecognized Tax Benefits, Increase Resulting from Current Period Tax Positions",
        "terseLabel": "Increase as a result of tax positions taken during the period"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesGrossUnrecognizedTaxBenefitDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations": {
     "auth_ref": [
      "r603"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of decrease in unrecognized tax benefits resulting from lapses of applicable statutes of limitations.",
        "label": "Unrecognized Tax Benefits, Reduction Resulting from Lapse of Applicable Statute of Limitations",
        "negatedLabel": "Decrease as a result of expiring statutes"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesGrossUnrecognizedTaxBenefitDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate": {
     "auth_ref": [
      "r604"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The total amount of unrecognized tax benefits that, if recognized, would affect the effective tax rate.",
        "label": "Unrecognized Tax Benefits that Would Impact Effective Tax Rate",
        "terseLabel": "Unrecognized tax benefit that would affect the effective tax rate"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UseOfEstimates": {
     "auth_ref": [
      "r78",
      "r79",
      "r80",
      "r313",
      "r314",
      "r316",
      "r317"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles.",
        "label": "Use of Estimates, Policy [Policy Text Block]",
        "terseLabel": "Use of Estimates"
       }
      }
     },
     "localname": "UseOfEstimates",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_VariableLeaseCost": {
     "auth_ref": [
      "r712",
      "r838"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of variable lease cost, excluded from lease liability, recognized when obligation for payment is incurred for finance and operating leases.",
        "label": "Variable Lease, Cost",
        "terseLabel": "Variable lease costs"
       }
      }
     },
     "localname": "VariableLeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LeasesLeaseCostFinanceandOperatingLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_VariableRateAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of variable rate.",
        "label": "Variable Rate [Axis]",
        "terseLabel": "Variable Rate [Axis]"
       }
      }
     },
     "localname": "VariableRateAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_VariableRateDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Interest rate that fluctuates over time as a result of an underlying benchmark interest rate or index.",
        "label": "Variable Rate [Domain]",
        "terseLabel": "Variable Rate [Domain]"
       }
      }
     },
     "localname": "VariableRateDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/LongtermDebtAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_VehiclesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Equipment used primarily for road transportation.",
        "label": "Vehicles [Member]",
        "terseLabel": "Vehicles"
       }
      }
     },
     "localname": "VehiclesMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_VestingAxis": {
     "auth_ref": [
      "r924",
      "r925",
      "r926",
      "r927",
      "r928",
      "r929",
      "r930",
      "r931",
      "r932",
      "r933",
      "r934",
      "r935",
      "r936",
      "r937",
      "r938",
      "r939",
      "r940",
      "r941",
      "r942",
      "r943",
      "r944",
      "r945",
      "r946",
      "r947",
      "r948",
      "r949"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by vesting schedule of award under share-based payment arrangement.",
        "label": "Vesting [Axis]",
        "terseLabel": "Vesting [Axis]"
       }
      }
     },
     "localname": "VestingAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_VestingDomain": {
     "auth_ref": [
      "r924",
      "r925",
      "r926",
      "r927",
      "r928",
      "r929",
      "r930",
      "r931",
      "r932",
      "r933",
      "r934",
      "r935",
      "r936",
      "r937",
      "r938",
      "r939",
      "r940",
      "r941",
      "r942",
      "r943",
      "r944",
      "r945",
      "r946",
      "r947",
      "r948",
      "r949"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Vesting schedule of award under share-based payment arrangement.",
        "label": "Vesting [Domain]",
        "terseLabel": "Vesting [Domain]"
       }
      }
     },
     "localname": "VestingDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "auth_ref": [
      "r297",
      "r305"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.",
        "label": "Weighted Average Number of Shares Outstanding, Diluted",
        "terseLabel": "Diluted (in shares)"
       }
      }
     },
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted Average Number of Shares Outstanding, Diluted [Abstract]",
        "terseLabel": "Weighted average shares outstanding:"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "auth_ref": [
      "r296",
      "r305"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.",
        "label": "Weighted Average Number of Shares Outstanding, Basic",
        "terseLabel": "Basic (in shares)"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOME"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WorkersCompensationInsuranceMember": {
     "auth_ref": [
      "r985"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Contract providing insurance coverage for employer's liability related to injury, disability, or death.",
        "label": "Workers' Compensation Insurance [Member]",
        "terseLabel": "Workers' Compensation Insurance"
       }
      }
     },
     "localname": "WorkersCompensationInsuranceMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_WorkersCompensationLiabilityCurrent": {
     "auth_ref": [
      "r19"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofWorkersCompensationKnownClaimsandIBNRReservesDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_WorkersCompensationLiabilityCurrentAndNoncurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations and payables pertaining to claims incurred of a workers compensation nature. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Workers' Compensation Liability, Current",
        "terseLabel": "Included in other current liabilities"
       }
      }
     },
     "localname": "WorkersCompensationLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofWorkersCompensationKnownClaimsandIBNRReservesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_WorkersCompensationLiabilityCurrentAndNoncurrent": {
     "auth_ref": [
      "r2",
      "r4",
      "r198",
      "r212"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofWorkersCompensationKnownClaimsandIBNRReservesDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations and payables pertaining to claims incurred of a workers compensation nature.",
        "label": "Workers' Compensation Liability",
        "terseLabel": "Insurance cost of claims",
        "totalLabel": "Workers' compensation liability"
       }
      }
     },
     "localname": "WorkersCompensationLiabilityCurrentAndNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofWorkersCompensationKnownClaimsandIBNRReservesDetail",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_WorkersCompensationLiabilityNoncurrent": {
     "auth_ref": [
      "r23"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofWorkersCompensationKnownClaimsandIBNRReservesDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_WorkersCompensationLiabilityCurrentAndNoncurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations and payables pertaining to claims incurred of a workers compensation nature. Used to reflect the noncurrent portion of the liabilities (due beyond one year; or beyond one operating cycle if longer).",
        "label": "Workers' Compensation Liability, Noncurrent",
        "terseLabel": "Included in other long-term liabilities"
       }
      }
     },
     "localname": "WorkersCompensationLiabilityNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofWorkersCompensationKnownClaimsandIBNRReservesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_WriteOffOfDeferredDebtIssuanceCost": {
     "auth_ref": [
      "r43"
     ],
     "calculation": {
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": {
       "order": 11.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Write-off of amounts previously capitalized as debt issuance cost in an extinguishment of debt.",
        "label": "Write off of Deferred Debt Issuance Cost",
        "terseLabel": "Write-off of debt issuance costs",
        "verboseLabel": "Write-off of debt issuance costs, included in interest expense"
       }
      }
     },
     "localname": "WriteOffOfDeferredDebtIssuanceCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://installedbuildingproducts.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS",
      "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesDetail"
     ],
     "xbrltype": "monetaryItemType"
    }
   },
   "unitCount": 11
  }
 },
 "std_ref": {
  "r0": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "205",
   "URI": "https://asc.fasb.org/topic&trid=2122149",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r1": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(19))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r10": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(3))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r100": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=109226691&loc=d3e2921-110230",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r101": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "360",
   "URI": "https://asc.fasb.org/topic&trid=2155823",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r102": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "440",
   "URI": "https://asc.fasb.org/topic&trid=2144648",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r103": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123465755&loc=d3e1835-112601",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r104": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123465755&loc=SL6230698-112601",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r105": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "470",
   "URI": "https://asc.fasb.org/topic&trid=2208564",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r106": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21463-112644",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r107": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21475-112644",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r108": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21506-112644",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r109": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21521-112644",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r11": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r110": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21538-112644",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r111": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.3-04)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=120397183&loc=d3e187085-122770",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r112": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=6405813&loc=d3e23239-112655",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r113": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=6405834&loc=d3e23315-112656",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r114": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "505",
   "URI": "https://asc.fasb.org/topic&trid=2208762",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r115": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "710",
   "URI": "https://asc.fasb.org/topic&trid=2127225",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r116": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "15",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "712",
   "URI": "https://asc.fasb.org/extlink&oid=6410066&loc=d3e79218-111664",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r117": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "15",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "712",
   "URI": "https://asc.fasb.org/extlink&oid=6410066&loc=d3e79218-111664",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r118": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "712",
   "URI": "https://asc.fasb.org/topic&trid=2197446",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r119": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "715",
   "URI": "https://asc.fasb.org/topic&trid=2235017",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r12": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(31))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r120": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r121": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r122": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r123": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r124": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "c(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r125": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r126": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=126964447&loc=d3e11149-113907",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r127": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=126964447&loc=d3e11178-113907",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r128": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "718",
   "URI": "https://asc.fasb.org/topic&trid=2228938",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r129": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=d3e31931-109318",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r13": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(32))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r130": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32687-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r131": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=SL6600010-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r132": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r133": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32632-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r134": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r135": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.7)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r136": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "05",
   "SubTopic": "10",
   "Subparagraph": "(a)-(d)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=6909625&loc=d3e227-128457",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r137": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=123586518&loc=d3e961-128460",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r138": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=123586518&loc=d3e1043-128460",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r139": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(3)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r14": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(a))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r140": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(1)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r141": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r142": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=79982066&loc=d3e1486-128463",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r143": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "37",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=123455525&loc=d3e2207-128464",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r144": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=128092470&loc=d3e4845-128472",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r145": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=128092470&loc=d3e4845-128472",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r146": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=123410050&loc=d3e5263-128473",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r147": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=123410050&loc=d3e5263-128473",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r148": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=123410050&loc=d3e5333-128473",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r149": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=123410050&loc=d3e5333-128473",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r15": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(b),22(b))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r150": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "30",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=6911189&loc=d3e6405-128476",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r151": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "30",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=6911189&loc=d3e6408-128476",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r152": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "30",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=126966197&loc=d3e6578-128477",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r153": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "30",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=126966197&loc=d3e6613-128477",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r154": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=126966325&loc=d3e6819-128478",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r155": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=126975305&loc=d3e6927-128479",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r156": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=126975305&loc=d3e6927-128479",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r157": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "805",
   "URI": "https://asc.fasb.org/topic&trid=2303972",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r158": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=d3e5614-111684",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r159": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c),(3)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r16": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r160": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "810",
   "URI": "https://asc.fasb.org/topic&trid=2197479",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r161": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5579245-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r162": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5580258-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r163": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)(ii)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=d3e41620-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r164": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=d3e41620-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r165": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5618551-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r166": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5618551-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r167": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624163-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r168": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624163-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r169": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624171-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r17": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19,20)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r170": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624171-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r171": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624177-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r172": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "815",
   "URI": "https://asc.fasb.org/topic&trid=2229140",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r173": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r174": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r175": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r176": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19279-110258",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r177": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=SL6742756-110258",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r178": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "60",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=7493716&loc=d3e21868-110260",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r179": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13279-108611",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r18": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19-26)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r180": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13467-108611",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r181": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13476-108611",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r182": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13531-108611",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r183": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13537-108611",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r184": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "230",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=123444420&loc=d3e33268-110906",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r185": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "https://asc.fasb.org/extlink&oid=124435984&loc=d3e28541-108399",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r186": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "https://asc.fasb.org/extlink&oid=124435984&loc=d3e28551-108399",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r187": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "https://asc.fasb.org/extlink&oid=124435984&loc=d3e28555-108399",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r188": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "https://asc.fasb.org/extlink&oid=114775985&loc=d3e28878-108400",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r189": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "850",
   "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r19": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.20)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r190": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "850",
   "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r191": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r192": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39603-107864",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r193": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "20",
   "Topic": "940",
   "URI": "https://asc.fasb.org/extlink&oid=126941158&loc=d3e41242-110953",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r194": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "320",
   "Topic": "940",
   "URI": "https://asc.fasb.org/subtopic&trid=2176304",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r195": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(11))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r196": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(13))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r197": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(15)(2))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r198": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(15)(5))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r199": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(16))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r2": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(20))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r20": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.21)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r200": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(23))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r201": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03.17)",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r202": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(15))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r203": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(22))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r204": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04.9)",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r205": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "320",
   "Topic": "942",
   "URI": "https://asc.fasb.org/subtopic&trid=2209399",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r206": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "470",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=123599511&loc=d3e64711-112823",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r207": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "825",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126941378&loc=d3e61044-112788",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r208": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124504833&loc=d3e7104-158389",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r209": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(15)(b)(2))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r21": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22(a)(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r210": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(16))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r211": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(12))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r212": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(15)(a))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r213": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(16))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r214": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r215": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(25))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r216": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03.(a),19)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r217": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(18))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r218": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(8))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r219": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(d)(2)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124508989&loc=d3e19393-158473",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r22": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r220": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07.1(c))",
   "Topic": "946",
   "URI": "https://asc.fasb.org/extlink&oid=120401555&loc=SL114874292-224272",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r221": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "320",
   "Topic": "946",
   "URI": "https://asc.fasb.org/subtopic&trid=2324412",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r222": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "450",
   "Topic": "954",
   "URI": "https://asc.fasb.org/extlink&oid=6491354&loc=d3e6049-115624",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r223": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "105",
   "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r224": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "105",
   "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r225": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "105",
   "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r226": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "105",
   "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r227": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "105",
   "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r228": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=124429488&loc=d3e326-107755",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r229": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=d3e1361-107760",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r23": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.24)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r230": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=SL51721683-107760",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r231": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r232": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6904-107765",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r233": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=6361739&loc=d3e7789-107766",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r234": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r235": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(15))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r236": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(16))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r237": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(17))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r238": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(18))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r239": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(22))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r24": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.25)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r240": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(3)(b))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r241": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(3)(c)(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r242": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(4))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r243": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(4))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r244": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(b))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r245": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r246": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(9))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r247": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=51824906&loc=SL20225862-175312",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r248": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=99393222&loc=SL20226008-175313",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r249": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669646-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r25": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29,30)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r250": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e637-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r251": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e640-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r252": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669686-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r253": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669619-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r254": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669619-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r255": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669625-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r256": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669625-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r257": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL116659661-227067",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r258": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124442407-227067",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r259": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124442411-227067",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r26": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29-31)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r260": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124452729-227067",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r261": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(210.5-03(11))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r262": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(24))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r263": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(25))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r264": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(5))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r265": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3255-108585",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r266": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3367-108585",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r267": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3000-108585",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r268": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3521-108585",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r269": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3536-108585",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r27": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.30)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r270": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=d3e4297-108586",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r271": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=126899994&loc=d3e18726-107790",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r272": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(e)(1))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r273": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r274": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h)(2))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r275": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r276": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-04(a))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e24072-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r277": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21914-107793",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r278": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21930-107793",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r279": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21711-107793",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r28": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669646-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r280": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21728-107793",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r281": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r282": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(3)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r283": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(4)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r284": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r285": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r286": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r287": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=SL124452830-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r288": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22583-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r289": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22595-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r29": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e637-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r290": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r291": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r292": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r293": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22658-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r294": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22663-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r295": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.M.Q2)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=122038215&loc=d3e31137-122693",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r296": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1448-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r297": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1505-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r298": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1252-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r299": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1707-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r3": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(22))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r30": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e640-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r300": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1757-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r301": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1500-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r302": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=SL5780133-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r303": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=SL5780133-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r304": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1337-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r305": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r306": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r307": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3630-109257",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r308": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=109243012&loc=SL65017193-207537",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r309": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=128363288&loc=d3e3842-109258",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r31": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e681-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r310": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "260",
   "URI": "https://asc.fasb.org/topic&trid=2144383",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r311": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "270",
   "URI": "https://asc.fasb.org/extlink&oid=126900757&loc=d3e543-108305",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r312": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "https://asc.fasb.org/extlink&oid=125520817&loc=d3e70191-108054",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r313": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r314": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r315": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r316": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6161-108592",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r317": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6191-108592",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r318": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8657-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r319": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8721-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r32": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669686-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r320": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8721-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r321": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r322": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r323": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r324": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r325": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r326": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r327": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r328": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r329": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(j)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r33": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e557-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r330": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r331": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8813-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r332": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8813-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r333": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "26",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8844-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r334": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r335": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r336": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r337": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r338": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "31",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8924-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r339": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r34": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124507222&loc=d3e1436-108581",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r340": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r341": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r342": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r343": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r344": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r345": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "34",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8981-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r346": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "40",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9031-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r347": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r348": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r349": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "42",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9054-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r35": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(10))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r350": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "280",
   "URI": "https://asc.fasb.org/topic&trid=2134510",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r351": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=124259787&loc=d3e4647-111522",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r352": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=124259787&loc=d3e4428-111522",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r353": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=124259787&loc=d3e4531-111522",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r354": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=123577603&loc=d3e5074-111524",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r355": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=126986314&loc=SL124402458-218513",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r356": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=126986314&loc=SL124402458-218513",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r357": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "323",
   "URI": "https://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r358": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL82887624-210437",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r359": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r36": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(20))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r360": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r361": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r362": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r363": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(3)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r364": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(4)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r365": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=124255206&loc=SL82895884-210446",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r366": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r367": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r368": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r369": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r37": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(4))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r370": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(f)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r371": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "https://asc.fasb.org/extlink&oid=116847112&loc=d3e4492-108314",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r372": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "https://asc.fasb.org/extlink&oid=116847112&loc=d3e4556-108314",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r373": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "330",
   "URI": "https://asc.fasb.org/topic&trid=2126998",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r374": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(b)",
   "Topic": "340",
   "URI": "https://asc.fasb.org/extlink&oid=126905575&loc=SL49131252-203054",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r375": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=99380562&loc=d3e13770-109266",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r376": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=99380562&loc=d3e13777-109266",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r377": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r378": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r379": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r38": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(8))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r380": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r381": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r382": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(f)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r383": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r384": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r385": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r386": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=SL108378252-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r387": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13854-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r388": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org/subtopic&trid=2144439",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r389": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r39": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.1(e))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r390": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(1)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r391": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r392": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(1)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r393": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r394": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r395": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r396": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r397": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r398": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.P.4(d))",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r399": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "440",
   "URI": "https://asc.fasb.org/extlink&oid=123406679&loc=d3e25336-109308",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r4": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(24))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r40": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.1,2)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r400": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "440",
   "URI": "https://asc.fasb.org/extlink&oid=123406679&loc=d3e25336-109308",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r401": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14435-108349",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r402": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14557-108349",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r403": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "20",
   "Subparagraph": "(SAB Topic 5.Y.Q2)",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=27011672&loc=d3e149879-122751",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r404": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "20",
   "Subparagraph": "(SAB Topic 5.Y.Q4)",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=27011672&loc=d3e149879-122751",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r405": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(i))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r406": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r407": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii)(B))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r408": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iv))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r409": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(5))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r41": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.2(a),(d))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r410": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(i))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r411": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r412": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r413": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r414": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r415": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(C))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r416": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iv))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r417": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(5))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r418": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r419": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r42": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.4)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r420": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r421": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r422": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(f)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r423": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r424": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r425": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r426": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r427": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r428": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r429": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r43": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.8)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r430": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r431": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r432": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r433": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r434": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1I",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r435": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(3)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466204&loc=SL6031897-161870",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r436": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r437": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r438": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r439": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r44": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.9)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r440": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(i)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r441": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r442": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496171-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r443": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496171-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r444": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496171-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r445": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496180-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r446": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496189-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r447": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496189-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r448": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496189-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r449": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.3-04)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=120397183&loc=d3e187085-122770",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r45": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3179-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r450": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126919976&loc=SL49130531-203044",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r451": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126919976&loc=SL49130532-203044",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r452": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126919976&loc=SL49130533-203044",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r453": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130551-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r454": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r455": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r456": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r457": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r458": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r459": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130556-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r46": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3179-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r460": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(1)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130556-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r461": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130556-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r462": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130558-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r463": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130561-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r464": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130563-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r465": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130563-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r466": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130564-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r467": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130566-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r468": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130566-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r469": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130566-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r47": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3179-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r470": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130566-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r471": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130543-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r472": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130545-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r473": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130549-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r474": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130549-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r475": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130550-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r476": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "606",
   "URI": "https://asc.fasb.org/topic&trid=49130388",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r477": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123453770&loc=d3e1703-114919",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r478": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r479": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(1)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r48": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3213-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r480": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(10)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r481": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(2)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r482": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(3)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r483": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(4)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r484": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(5)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r485": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(6)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r486": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(7)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r487": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(8)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r488": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(9)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r489": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r49": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3213-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r490": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r491": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r492": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(3)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r493": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(4)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r494": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(5)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r495": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(6)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r496": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(7)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r497": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(8)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r498": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r499": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(i)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r5": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(26)(a))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r50": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3213-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r500": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(ii)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r501": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(01)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r502": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r503": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)(A)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r504": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)(B)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r505": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)(C)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r506": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(03)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r507": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r508": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(f)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r509": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r51": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3255-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r510": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r511": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(1)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r512": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(2)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r513": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(3)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r514": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(4)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r515": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(5)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r516": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(6)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r517": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(7)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r518": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(i)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r519": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(j)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r52": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3291-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r520": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(k)(1)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r521": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(k)(3)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r522": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(k)(4)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r523": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(n)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r524": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(q)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r525": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2410-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r526": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r527": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(1)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r528": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(2)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r529": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(3)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r53": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3291-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r530": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(4)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r531": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(5)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r532": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(6)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r533": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(7)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r534": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r535": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2919-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r536": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "70",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=49170846&loc=d3e28014-114942",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r537": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "80",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=29639808&loc=d3e29008-114946",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r538": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450702-114947",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r539": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r54": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3291-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r540": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r541": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(c)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r542": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(d)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r543": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(e)(1)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r544": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(e)(2)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r545": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(f)(1)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r546": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(f)(2)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r547": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(f)(3)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r548": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450691-114947",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r549": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450691-114947",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r55": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3291-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r550": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=126961718&loc=SL116886442-113899",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r551": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=126961718&loc=d3e4534-113899",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r552": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=126961718&loc=d3e4549-113899",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r553": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=126962052&loc=d3e4991-113900",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r554": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r555": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r556": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r557": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r558": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r559": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r56": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3521-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r560": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r561": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r562": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(01)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r563": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(02)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r564": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(03)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r565": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(04)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r566": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r567": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r568": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r569": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(01)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r57": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3536-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r570": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(02)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r571": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(03)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r572": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r573": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r574": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r575": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r576": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r577": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r578": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r579": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r58": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r580": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r581": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iv)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r582": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(v)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r583": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(1)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r584": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r585": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128097895&loc=SL121327923-165333",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r586": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128097895&loc=SL121327923-165333",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r587": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128097895&loc=SL121327923-165333",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r588": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 14.D.2.Q6)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=122041274&loc=d3e301413-122809",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r589": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "718",
   "URI": "https://asc.fasb.org/topic&trid=2228938",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r59": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r590": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "35",
   "Subparagraph": "(a)",
   "Topic": "720",
   "URI": "https://asc.fasb.org/extlink&oid=6420018&loc=d3e36677-107848",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r591": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "35",
   "Subparagraph": "(b)",
   "Topic": "720",
   "URI": "https://asc.fasb.org/extlink&oid=6420018&loc=d3e36677-107848",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r592": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=SL37586934-109318",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r593": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=d3e32247-109318",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r594": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=d3e32280-109318",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r595": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=d3e31917-109318",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r596": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=d3e31931-109318",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r597": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32672-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r598": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32687-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r599": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32705-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r6": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(26)(b))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r60": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r600": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32718-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r601": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=SL6600010-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r602": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=SL6600010-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r603": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(4)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=SL6600010-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r604": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=SL6600010-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r605": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32809-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r606": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32840-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r607": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r608": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r609": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r61": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3044-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r610": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32847-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r611": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32857-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r612": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r613": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r614": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r615": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r616": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r617": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r618": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(3)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r619": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 6.I.5.Q1)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r62": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=d3e4273-108586",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r620": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 6.I.7)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r621": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.1)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r622": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.2)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r623": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.4)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r624": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.C)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330215-122817",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r625": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123586238&loc=d3e38679-109324",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r626": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "270",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=6424409&loc=d3e44925-109338",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r627": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=6424122&loc=d3e41874-109331",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r628": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "740",
   "URI": "https://asc.fasb.org/topic&trid=2144680",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r629": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(2)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r63": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=d3e4297-108586",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r630": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(3)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r631": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=128092470&loc=d3e4946-128472",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r632": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=128092470&loc=d3e4946-128472",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r633": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=128092918&loc=SL128093175-196984",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r634": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=128092918&loc=SL128093175-196984",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r635": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=128092918&loc=SL128093175-196984",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r636": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)(1)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=126975305&loc=d3e6927-128479",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r637": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)(3)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=126975305&loc=d3e6927-128479",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r638": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(c)(1)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=126975305&loc=d3e6927-128479",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r639": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(1)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=126975305&loc=d3e7008-128479",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r64": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=d3e4304-108586",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r640": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=126929396&loc=SL4569616-111683",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r641": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r642": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r643": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r644": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r645": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(3)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r646": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bb)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r647": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r648": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5618551-113959",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r649": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624171-113959",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r65": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=d3e4313-108586",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r650": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624177-113959",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r651": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624181-113959",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r652": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4EEEE",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL109999725-113959",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r653": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=121549185&loc=d3e80845-113994",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r654": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(f)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126731327&loc=d3e90205-114008",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r655": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126731327&loc=SL126733271-114008",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r656": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(a)(1)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r657": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(a)(2)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r658": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(a)(3)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r659": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(b)(1)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r66": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=d3e4332-108586",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r660": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(b)(2)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r661": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(c)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r662": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(d)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r663": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(2)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r664": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(3)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r665": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(4)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r666": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r667": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL126732908-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r668": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r669": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r67": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=SL98516268-108586",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r670": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r671": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r672": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19279-110258",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r673": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123594809&loc=d3e13220-108610",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r674": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13433-108611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r675": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123596393&loc=d3e14064-108612",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r676": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL120254526-165497",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r677": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL120254526-165497",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r678": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL121967933-165497",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r679": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL121967933-165497",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r68": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "235",
   "URI": "https://asc.fasb.org/topic&trid=2122369",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r680": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL121967933-165497",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r681": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL121967933-165497",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r682": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL122642865-165497",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r683": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL122642865-165497",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r684": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32136-110900",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r685": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r686": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r687": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(c)",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r688": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r689": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=6450520&loc=d3e32583-110901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r69": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r690": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=6450520&loc=d3e32618-110901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r691": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "832",
   "URI": "https://asc.fasb.org/extlink&oid=128342835&loc=SL128342857-244232",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r692": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "832",
   "URI": "https://asc.fasb.org/extlink&oid=128342835&loc=SL128342857-244232",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r693": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "835",
   "URI": "https://asc.fasb.org/extlink&oid=6450988&loc=d3e26243-108391",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r694": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "https://asc.fasb.org/extlink&oid=124435984&loc=d3e28555-108399",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r695": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "https://asc.fasb.org/extlink&oid=124429444&loc=SL124452920-239629",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r696": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128293352&loc=SL126838806-209984",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r697": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128293352&loc=SL126838806-209984",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r698": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128293352&loc=SL126838806-209984",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r699": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(1)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128293352&loc=SL126838806-209984",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r7": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(28))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r70": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22583-107794",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r700": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r701": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r702": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918631-209977",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r703": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918638-209977",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r704": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918643-209977",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r705": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918643-209977",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r706": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918643-209977",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r707": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918666-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r708": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918673-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r709": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r71": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r710": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r711": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r712": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r713": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(1)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r714": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(2)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r715": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(3)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r716": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(4)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r717": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r718": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918701-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r719": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/subtopic&trid=77888251",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r72": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "270",
   "URI": "https://asc.fasb.org/extlink&oid=126900757&loc=d3e725-108305",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r720": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "848",
   "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL122150809-237846",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r721": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "848",
   "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r722": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "848",
   "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r723": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "848",
   "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r724": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)(iii)(01)",
   "Topic": "848",
   "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r725": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)(iii)(03)",
   "Topic": "848",
   "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r726": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "850",
   "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r727": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "850",
   "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r728": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "850",
   "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r729": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "850",
   "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r73": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "270",
   "URI": "https://asc.fasb.org/extlink&oid=126900757&loc=d3e765-108305",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r730": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39691-107864",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r731": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "850",
   "URI": "https://asc.fasb.org/topic&trid=2122745",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r732": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "855",
   "URI": "https://asc.fasb.org/extlink&oid=6842918&loc=SL6314017-165662",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r733": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "855",
   "URI": "https://asc.fasb.org/extlink&oid=6842918&loc=SL6314017-165662",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r734": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "855",
   "URI": "https://asc.fasb.org/topic&trid=2122774",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r735": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)(1)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r736": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)(2)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r737": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)(3)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r738": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(1)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r739": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "910",
   "URI": "https://asc.fasb.org/extlink&oid=126937589&loc=SL119991595-234733",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r74": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r740": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "910",
   "URI": "https://asc.fasb.org/extlink&oid=126937589&loc=SL119991598-234733",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r741": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "310",
   "Topic": "912",
   "URI": "https://asc.fasb.org/extlink&oid=126938201&loc=d3e55302-109406",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r742": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "330",
   "Topic": "912",
   "URI": "https://asc.fasb.org/extlink&oid=6471895&loc=d3e55923-109411",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r743": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.L)",
   "Topic": "924",
   "URI": "https://asc.fasb.org/extlink&oid=6472922&loc=d3e499488-122856",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r744": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "926",
   "URI": "https://asc.fasb.org/extlink&oid=120154696&loc=d3e54445-107959",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r745": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "926",
   "URI": "https://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r746": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "926",
   "URI": "https://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r747": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "926",
   "URI": "https://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r748": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "340",
   "Topic": "928",
   "URI": "https://asc.fasb.org/extlink&oid=6473545&loc=d3e61844-108004",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r749": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=d3e61929-109447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r75": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r750": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=d3e61929-109447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r751": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=d3e62059-109447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r752": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=d3e62059-109447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r753": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=d3e62395-109447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r754": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=d3e62395-109447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r755": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "33",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=d3e62479-109447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r756": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "33",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=d3e62479-109447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r757": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "35A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=SL6807758-109447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r758": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "35A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=SL6807758-109447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r759": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(c)(1)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=d3e61872-109447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r76": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r760": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(c)(2)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=d3e61872-109447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r761": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(10)(1))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r762": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(26))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r763": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(27))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r764": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.9-05(b)(2))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399901&loc=d3e537907-122884",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r765": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(5))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r766": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r767": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(22))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r768": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(23))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r769": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(9))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r77": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6404-108592",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r770": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(d)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124506351&loc=SL117782755-158439",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r771": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r772": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(b)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r773": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r774": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(1)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r775": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(2)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r776": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(1)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r777": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(i)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r778": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(ii)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r779": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(iii)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r78": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6061-108592",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r780": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(iv)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r781": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(h)(1)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r782": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(h)(2)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r783": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(d)(1)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124508989&loc=d3e19393-158473",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r784": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "825",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=123600520&loc=SL75241803-196195",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r785": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "310",
   "Topic": "954",
   "URI": "https://asc.fasb.org/extlink&oid=126942793&loc=d3e3073-115593",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r786": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Topic": "954",
   "URI": "https://asc.fasb.org/extlink&oid=126942805&loc=d3e3115-115594",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r787": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "440",
   "Subparagraph": "(a)",
   "Topic": "954",
   "URI": "https://asc.fasb.org/extlink&oid=6491277&loc=d3e6429-115629",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r788": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Subparagraph": "(d)",
   "Topic": "958",
   "URI": "https://asc.fasb.org/extlink&oid=126982197&loc=d3e99779-112916",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r789": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "958",
   "URI": "https://asc.fasb.org/extlink&oid=126982197&loc=d3e99893-112916",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r79": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6132-108592",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r790": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "958",
   "URI": "https://asc.fasb.org/extlink&oid=126982197&loc=SL120174063-112916",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r791": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Footnote 4))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r792": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Footnote 5))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r793": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Subparagraph": "(c)",
   "Topic": "976",
   "URI": "https://asc.fasb.org/extlink&oid=6497875&loc=d3e22274-108663",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r794": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Subparagraph": "(b)",
   "Topic": "978",
   "URI": "https://asc.fasb.org/extlink&oid=126945304&loc=d3e27327-108691",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r795": {
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Paragraph": "(b)",
   "Publisher": "SEC",
   "Section": "1403",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r796": {
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Paragraph": "(c)",
   "Publisher": "SEC",
   "Section": "1405",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r797": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r798": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r799": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=99393222&loc=SL20226052-175313",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r8": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(29))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r80": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6143-108592",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r800": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124507222&loc=d3e1436-108581",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r801": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=126899994&loc=d3e18823-107790",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r802": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=126899994&loc=d3e18823-107790",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r803": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=126899994&loc=d3e18823-107790",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r804": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "52",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=128363288&loc=d3e4984-109258",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r805": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r806": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "31",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8924-108599",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r807": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=122137925&loc=d3e14258-109268",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r808": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r809": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69B",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495735-112612",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r81": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r810": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69C",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495737-112612",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r811": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69E",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495743-112612",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r812": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69F",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495745-112612",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r813": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r814": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r815": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r816": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r817": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r818": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r819": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r82": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8813-108599",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r820": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r821": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(ii)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r822": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(01)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r823": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123450688&loc=d3e4179-114921",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r824": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123450688&loc=d3e4587-114921",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r825": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450702-114947",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r826": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450702-114947",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r827": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(c)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450702-114947",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r828": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450673-114947",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r829": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450673-114947",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r83": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r830": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(c)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450673-114947",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r831": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "80",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=35742348&loc=SL14450788-114948",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r832": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r833": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r834": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "217",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=126976462&loc=d3e36027-109320",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r835": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4J",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=120409616&loc=SL4591551-111686",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r836": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4K",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=120409616&loc=SL4591552-111686",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r837": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624177-113959",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r838": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "53",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123414884&loc=SL77918982-209971",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r839": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "852",
   "URI": "https://asc.fasb.org/extlink&oid=84165509&loc=d3e56426-112766",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r84": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 4.E)",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=122038336&loc=d3e74512-122707",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r840": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124504833&loc=d3e7104-158389",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r841": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117783719-158441",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r842": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29F",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117819544-158441",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r843": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r844": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-2",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r845": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-23",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r846": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "d1-1",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r847": {
   "Name": "Form 10-K",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "310",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r848": {
   "Name": "Form 20-F",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "220",
   "Subsection": "f",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r849": {
   "Name": "Form 40-F",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "240",
   "Subsection": "f",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r85": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "310",
   "URI": "https://asc.fasb.org/topic&trid=2196771",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r850": {
   "Name": "Forms 10-K, 10-Q, 20-F",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "13",
   "Subsection": "a-1",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r851": {
   "Name": "Regulation S-T",
   "Number": "232",
   "Publisher": "SEC",
   "Section": "405",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r852": {
   "Name": "Securities Act",
   "Number": "230",
   "Publisher": "SEC",
   "Section": "405",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r853": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14615-108349",
   "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef"
  },
  "r854": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "855",
   "URI": "https://asc.fasb.org/extlink&oid=6842918&loc=SL6314020-165662",
   "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef"
  },
  "r855": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=124429488&loc=d3e326-107755",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r856": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(17))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r857": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(18))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r858": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(3)(c))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r859": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(9))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r86": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "320",
   "URI": "https://asc.fasb.org/topic&trid=2196928",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r860": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124442407-227067",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r861": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124442411-227067",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r862": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124452729-227067",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r863": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(2)(a))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r864": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(2)(d))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r865": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3179-108585",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r866": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3213-108585",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r867": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r868": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r869": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(f))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r87": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r870": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r871": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r872": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(k)(1))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r873": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21914-107793",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r874": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21930-107793",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r875": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21711-107793",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r876": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r877": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(3)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r878": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r879": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r88": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=6388964&loc=d3e16225-109274",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r880": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22583-107794",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r881": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22595-107794",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r882": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22658-107794",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r883": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22663-107794",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r884": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r885": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r886": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8672-108599",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r887": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=124259787&loc=d3e4647-111522",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r888": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=123577603&loc=d3e5033-111524",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r889": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=84159169&loc=d3e10133-111534",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r89": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r890": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=84159169&loc=d3e10149-111534",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r891": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=84159169&loc=d3e10178-111534",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r892": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "323",
   "URI": "https://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r893": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r894": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r895": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r896": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r897": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r898": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r899": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(f)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r9": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r90": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(3)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r900": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r901": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r902": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r903": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=SL108378252-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r904": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13854-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r905": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16373-109275",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r906": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=126905981&loc=d3e2443-110228",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r907": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r908": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r909": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r91": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r910": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r911": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(c)",
   "Topic": "410",
   "URI": "https://asc.fasb.org/extlink&oid=6393242&loc=d3e13237-110859",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r912": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14557-108349",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r913": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "20",
   "Subparagraph": "(SAB Topic 5.Y.Q2)",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=27011672&loc=d3e149879-122751",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r914": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "450",
   "URI": "https://asc.fasb.org/topic&trid=2127136",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r915": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(ii))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r916": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r917": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r918": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r919": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r92": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(1)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r920": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130551-203045",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r921": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130545-203045",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r922": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r923": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(n)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r924": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r925": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r926": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r927": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r928": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r929": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r93": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(2)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r930": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r931": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(01)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r932": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(02)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r933": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(03)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r934": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(04)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r935": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r936": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r937": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r938": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(01)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r939": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(02)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r94": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(3)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r940": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(03)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r941": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r942": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r943": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r944": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r945": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r946": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r947": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r948": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iv)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r949": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(v)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r95": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "350",
   "URI": "https://asc.fasb.org/topic&trid=2144416",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r950": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32687-109319",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r951": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=SL6600010-109319",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r952": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r953": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32621-109319",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r954": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r955": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r956": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.7)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r957": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.4)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r958": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(2)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r959": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(3)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r96": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=126905981&loc=d3e2420-110228",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r960": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5579245-113959",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r961": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5580258-113959",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r962": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(3)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r963": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123596393&loc=d3e14064-108612",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r964": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r965": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918638-209977",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r966": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918673-209980",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r967": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r968": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r969": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918701-209980",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r97": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r970": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "850",
   "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r971": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "850",
   "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r972": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39599-107864",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r973": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39603-107864",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r974": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "852",
   "URI": "https://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r975": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "852",
   "URI": "https://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r976": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(1)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r977": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(2)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r978": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(3)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r979": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r98": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r980": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r981": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(3)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r982": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4H",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=116884468&loc=SL65671331-158438",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r983": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124506351&loc=SL117782768-158439",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r984": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(c)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117783719-158441",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r985": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9C",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=122147696&loc=SL65671395-207642",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r986": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "825",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=123600520&loc=SL75241803-196195",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r987": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column B))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r988": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column C))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r989": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column D))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r99": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r990": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column E))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r991": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column F))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r992": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column G))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r993": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column H))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r994": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column I))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  }
 },
 "version": "2.2"
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>126
<FILENAME>0001580905-23-000013-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001580905-23-000013-xbrl.zip
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
MX!KH5/4 Q. ,T*HRB)XQ6"J5E;\*<RZ0&_+LWM=S9QE^:L.=F^9.CB79&M/
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
M:("MCN15-&RQ&+ JV[7!9V^ZT"*G?;)Q&@AJI1@T RA;23RVU5@YY!R9]=J
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
M7+,^<[&,IB_]QOGBO56%&2$GE8)C:4!J[K(ZK&O6;VX$G>7UG98^GT1N%M(
M2@6LT;N@C<LDT:>G->L[CQEG?# 9E4='Q]/)ZS-]TY..9'S.V1:+)23PME5$
MC<9R9E+%X/G@R_ITI)N':GF]"GR03J64([>H]YB2Q9A*,8!)"6YKUJL>G$S'
MP_G)E!=U;-^V5WWI5,1*53(Z)D2(H"C:@KXZ%3T9"&7-.M6-([6\/E71EI*H
MLJD1;&Q[VD6KQ'\IE1M":]*G6E[$[WPPS".>?7A.3_J3*6 A&&=,J6"+22Y;
M&R."*Q0-Y#7I3YV@M+R^%- SN59!#$3VB7H@SPXQ1Q4IB^/J47+%HW&>'/'E
M /OC2<;W0T3O)_)F\S8-,KH.:]=]DH)",*KEB&%E\-E1*"&F:FM( 2I3CY(4
M5@S.;B;[<ZB&K @1*U%R+(C!I<@I%5=3T7W8&G%%X>RFSD;@XE'3HI*_52FB
MB@5B3>@1=>I3)MN5X'S(8Y[B2-SBW7(T' ]GBZ2(U]QFI<<S7D<#+)U39 ]G
MU$R0M*&V;0E5X[RH5#Z'>(T,<+<0=V.4??+.Q>(MB,1U,06ON4H 0EA;O9QU
M,\K=0GQ3AOI$HN$%OE,^GDS;I.8?[:-+Y(X89Q(C+_3^QZ=<7/#BC(OW[=CG
M9RD\<L#BT+!OPINT& MN.^Y1Y.#]ZD=&EXSYY60V'/-L]O3L$K/W,=&'6?SG
M1WL2$A&6ZI0@I&, !3'6X'FQ)%"E!$FM!3R+!1?]PB4P>Y5]!D\>; @82N*J
MH_>E5%VA1^II5?I/]WK)!>NU#J&-DX,I&8-VU1HEJFGA6=<+U.OM==VC:;%6
M1<:&%!1@+9A*4<E%) 6DM%_]D=E5Z9G7,B3KBXXQ9=8>5=LD [7.A46K*F6=
M2VDMX+DQS[8\7)2WHC5TBB4B>&\PLHF"$!8/L<8^E-QXG_1PALO=_#\GP]GP
M?331H-EBB1XFXX<CG+6Q\NWA=#J9KJ,=] *>9>.K+TJ"1(-6UY0#<(;D O?
M#CZ00&_.CR7,*X_&PNN70QKQW=F,Y[-?3K?Q<#*]MT#QHTAQ9]+BR6.>\]V7
M4^Y52@4$I1F@.*@1M,\)V$N,;\5 9LI:K[[H[P=B2YP%K@K16HTV,6"(42N;
M0F:5BJ\ZK&L?VYMBX;:TK5G0Q9L=/.I-DH7Q44=MLH&8H6A&":X-Z:Q3=50!
MUK2;=0':\GJ:21HDRD:%E@4WI)!SYDS*@LDQ=K[6[YI VYT6GNY>+"Z5Z_V"
M^=5HTI=L6R_=22QDFS]44#DF<(JM5QYT8<II3;M:)Z@MT:M9'QV6)*@%B!)
M0U964?+<M@4S>77[6EN$\X1G%P':^Y4Y'WYXU44XO8HWKF>I*V1@D!@BEP18
M2FQY'38+\!(5LJ^K2X3+M-W)^.6<IT=;3/,_YQ\^%6PFTYW)_(MN\,HW;#=J
M@S/3D_<$;#1X(!;DU\EP/'_:EDPOWO&T+=''E_S!8VR=\-Z;R=[!Y&2&XJ7?
MR FG]X<O#_HRBJ!M,=90""XDJ$7@M"XH0S'6'+GV((%UPYB;=38.5%'@D@O!
MM_WWT!<.L=47,:+',Z^^C?DK />$18\G.+Z,:I?%F+^GZ#:7X<E1N_E5:+HJ
MA@-:OGO;-"-6"XX5EIJR(B7:OFUDYE;?<-QB&BS/&BB)S*/12N5$4+%&;AS
M%"F8DE4/9@?^B@;G^=D?IF<OQ8TLU*W$)?Q>[&Y+S')T<G0S/%O\B%_Q%"4N
M.JN@>/:Z+X8G6E#>9DL:'+35'-Y+H,H!;&$7<M@P[BJ,P[<;QEUY4 1C**U@
ME2<%U=IHB=M"_IA)%;%[&\;=3EX$&Q"@MK$6!V1*I*R<C0Z")Y28JK\2Z#;R
M8HE#W\0%8YO%30$85"1DL"*30F%.<84+2FRTR7?&QLEZRL98<0Y0,,>V/VHP
MT=9BV^[F_4)^HQ&NCKR "TX\@.% $*"D:DMU1 C>HC<]B(/6&Y]:$6I2P3F7
M!"B')C$7H* L9XL]J'ZQBO@L<0I+:0!6)MM8(7/ ''3@E(LGDR&HLWIX*EG5
M3WPVX]#C\U)W*@VL6L9<5W$N2G_-R0)$^>.+-]I:X4V.Q2_V'V^,6>0_;JC3
M4^I\F)9Y1IXKI65^RK/OV1.G^&Q]KA'0@$5+%;2$>*W""_E 9S-D[4]<57I]
M::#[FEVX,@,3E]#A4<>DO:8:50#/F#R0JK%RM(ZDV2Z!"'T#XBZ-[DVY#.=+
MGW(XN^P#S,.1-,2?ZN-/1J^'XY<?GW0#; C+& ;VRCH,H48M,L[91*[JS"*W
ME9;H._>W6]XV-BS#-J0J$#7;S"4+&QBMCQ6+3Z5F5=U%D01SOAAB0XN;&>WY
M':?#%H4\N=SSX#(%"V>+3Z]7,9PQ[*H+.3XBX_<H!K3!5:XJ(H$3:P3)F:Q#
MM-RF2DT/R'C]PT$W;_UN)QE5$/6*0:(?LH 4,7 K'%/$6OJ4T5V0T<25)>.7
M ;Q_,IV4R6B$7TK47$%Z?K,57@H=WW/L9NA(8A0+91M!PO:L3*S6@]C)Q-:;
MZG%#Q[[:X5[2,:>*2H/8QTI@2\(*SJ.JH41O7.SQU/[U^=&G!Y/I?.\OAZL>
M\WS.T]UZ=O>>3 ]0:"GS"K&-*M3 R=5HQ#M20N.CB9MH\FK1Y%FI@SQ=W A'
M_0XJC6H%@R$@1@M%:RJ)E5.IB+_*[F)!]BJ3XN\"_J_JI[UP)]=" BID2=6J
M/3@P8A 2*5<R1E^1BJ75)\'J6(:G;\04/!Z.N8TZ7_?,\;(($-D7K4 Z?$R
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
MC.P89*_OAZ$+(CEBB1W;$8O0V>2F+&"T;"OJJS^VDI0'SR\?G'S L%9T[[!
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
MOB+HD(_N&?SF_.6I>WXTL$ZO8.WVB0DZ9M&/A+4<?WK_]M0\O4[@-Z?F^=4
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
M)]UTYW%J,:<&?TD;>BFN7Y& :K.FEO6EW%-S'LD#$!B67Y@';;QH^@YQ/>#
M10*U4R%O8D<!R-FRZLNY=V4U8&/5$J5DDTP:+9!('@,@*!H%LAJF-4M(+@US
M+'\$IIN G4R0%V+'VWY(6?&;(BI53;7='=M"NQ_!91(5E1S%H54KEX9#;#12
MM#=!& PZC N=P@Q'&>$OJ/42F*L:T#R3DN:88BU.M0'%+-]HE[<S!G%"T7B
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
ME3PZ  6P9%]:[:KS>K?O#S6B7#A3*^OW=IO^0)M^298ZYDJUDC1A%7>T^(X
M#T2 "]EXK*6 -]L>>JW9-1HBQJ(5T4(H-GC#JUI)]!$'HK8=N+Z:+\5A%Z$6
MQ1'MI/54CW5GS+W6+$43903(#MB^!)V6=:RT+[R-A"/1 "A4P[C$*Y%&6 ,*
M?3<*"KF].#!#E,.78 -+6'W19*_Q86.%(U &%0)_&N9Q+KM#J%.NGG9Q*W14
MP\7""%6:U/X %SJK)+2QG 32UANGB_T[M1PP)MIIFM7)I OX:EAI)9%$*('#
M6X-VLP^UJ$>F\(&LLVB09V9C"8@@BZ_ KQ1R$8\T']_D($#%H#>)XJJ<N7&)
M@0,!BB!B/E1*J1JK,4&=8C@B*T1SGMQ&,=%FH=^PC26+;$:]$.RA'DC;V?1B
MK:N+X[.C2^/DS+CZY[%Q>G#Q[^.KUZ\.#H\W^W2<ZY5S[;0]E6^1,B,3Z?R>
ML3C*2I<#JNI/B T$F=-J9\%+!JEDP\M0>Y! CU#2Y,W^Y;X\E?-><Q^0%HAA
MD58X0S,5'J" J!"25$S/:4 J+D@^51RY7G Q9Q7.5:-G4KBAEH?)HH-'V$0X
MRPC#CX1B-&2I8>W[QD@$T'%R%^PK N2).L+T&@PWGLJ5[1O_+&_1LUE:\H2S
MC^+43ZEDNP)1-F1%AELGGHKG7L;&,WJON>'\7:[.7I1&N.)]XU+<&]5!!L9D
MPFK97YXQ,9#%VG>:E<N%2-[ISI]_6Q;4L_OO8G:K]7(]QSCP(?;9'BOY<#)&
M !0JY/@7&\]0*M#MU//E.;@M9T6*$5EZ6TYSF>0":JRUQ1[F4#3_MR*F=[<8
MJG)9/8J93KB7T#P4BQKR1N52&V:%FGB8CT57M=I2"1%$LD,J,34 NHO(A;&:
M6M].)6S67^K\Y5)+U=M"<VKR"?(6;H" CJ+W7CB2)%,5PI/.\V,^8'*:I7QY
M@05)?=4BTJ[U(%%AIP2!ZH"D-?=31P[K^#^*.058WC 5"&$(<%&4 \$:V/#2
MVB5:D*=9^Q 1* ="#^O-/YUTPRUO&P4U["Y)^)K="ODC1OR,J"D AR;)WEYQ
M0QUDK&D94NR8SB0FF2K8%/M8MTAJA^=_GASUK<C XDV.9_JW/?79WN^X+*U8
MCHJAJ9NO7DQI%+*P"XTO\>&N8DJ=>7^K*Z;6!9PC^D5$?70*IV,NHO)I7E<S
M,:U>%O]V"XAKC@H?-?RD0A0LJ6IJCDVCH*DT0;.@:JAG0$!%=K3.48D8KT=L
MRHS_9J/)4^, E.H<I->FV\\G2F,).+J40CAH#8#KD4QEAE/+>8N=K$44NFD+
MZVD]]PN*C91H3SDL/7J,['96PKF1W*U<9PCQE4K_I2<OD-V6]4P@&H]1R(R7
MLO)2X&IJ=]]XS04^S/,97#7#I;^B]5YBDK-&,O5:W=W8;>#KTLA"H:"%*98:
MX;[9L65&\%P")9*X^LT*,<-+:"O\D^K7)*V@0%9$LDO =F(KF_ FQXB%1%\)
MZ\**0DM?G-A5*D!*J6E-4*),E9]! WG(&K5MV56'N@&[!>#!\X7Y=,V.-]*^
M$?()H]%S#?R$4CDS3 CEVHB0MCM0:"S8E-FXU=T(9H7EO-VI1RU.0O$%SZS3
M>(AM>B(I4Q2D^9K0N@H/-!Y\@:\,QII KM%LV5LT+#"O+($D1Z G!DV:KQF(
MW=Y0)6T4CJZBJK3!%D9:4&$;1R]2P"S.9=I112\&(B5 G*_&*2]9<W* "NV^
MWI;8&@S$>WK/IK9+JI9-[13ED:3!@X#J>%C)"^JVW5$_H-Y+MG(GR>(IP-W(
M1:96&N UV9IJ3@(X,;VVM5!K(-1M \+\P\$&9#6)D8O"[P''I!IM0C_>5R8U
M<>,%3^G\7G!9,I*/).AB*K!25.N]R$"W3,QPWA5%VBJ6UQ(U*9-W0_BM6HB
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
M]A* $B[(\OTXP86]N0R;.M]RQT%,WE^4(9K&KBBX:8Z.SK:?S2M0!JJ[3V]
MRPZ RJD7D94KC[JIE<4R5BH9% M7'.V+?(==Q]4=__C/EZ]/?OSA^,<WAZ^R
MV>G)T<M@B(G2[?7Q=S^_.GQS\OI?L^ 8O]GY9K:!,F9LEL0TD1BE3!&%6NA&
MB]Z?A8@1BQE<%<ZKNIKQ\>EWTFYL!/1$K8@$O/N,<%3@96,X;$?[S]2Z53>4
M[)H2AXG4)S=P<A.0!++Q$64C4B_F1=^ON[_]]:]:*%PH#DPQ7@?AY?^:WEB[
M>NL>/2:*-]:+"@H[O)3>$"%"6X"N K2KR )B-UZ57<'5DUR'/!OV:@"MYY*&
M.C0DW3W?8%JN" 0OR5K8A=/C(R')J=VM+6'M'Y8V*1JXN+8;7I-Q&N01@<8W
M_II8?'8\P_W2X1I!.:'U>(#%:W'ZC7*3D-F(X[1\38B4FI@[B]DY01Y6)< U
M$EZ]*&B2M.IQC!]C,E^<'&?:\<!G&*4Z?5^'W2F>N%I^/@S!1 E*:?(92LF-
M*7<;#K,&%21!<<,[X&8/6FG"5R7XD CL9,9H)#!M3);@G[LH6$N7PC*+7_$*
M[N"8T)X/V_@=!JH%63]'0]2'Q>WM_(97)-,  ADJ2^,Q:?"8%DXO2@"41MTV
M3VJNBJD2*EIVVHHP<A<-C.?7G(JJFJ8K'BPA2Q/.G$W%O?)^,3@\YX(/P;8
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
M*)]1KVQ?%4+Z3'SMJW*STC=)"+I(D\6U]*2MA1^TO2.@I+C$:F<]O&7944T
MR('!ZKURO0ZC>KPU*M,O9TSZI1HS,Y6788QJJ@3S7T\/OF81&E&+T1='L2!<
M\=J3BH$EB$&GRGBT4."6C;X64;DBPLIZ=5%UNXZH.HI96M77-1A/HEDGV-UR
MR;T7U.Q_5H3Q*6EY<5O=$/)KFW7+2>/9CY7%+NK(6:^>H":T)X@R,73UJEP6
M@]6BG,!CE69ES@+1M\)G\[+E0FB;T[<8W*0?;CKAC@4>#-"K.C<LK^]J](@3
M&\R8Y6;C-S9<='30<TM#MD9<W'B$)I8>N)&"\<#\=\%BWJ'T<4O[%7!>[.BB
M]UNVZC5QO3#CRO4GD54YD@XGA!O^. JC656FJ=O%"4!<%"8433Q*$UV"M+Z-
M'O"ZZ47Y0DZ@$5F-"1I*L*3\&N(+9ZCKJ;!PAQ[KFF,[E$ ST_3!S^7@1?'#
M\;5$!NZ)%<1&G5O;1-/3VMOS*4'@33=T0_B_PTO)V^ 0GP<[KN=+:O4'/15*
MS^U&9HM0D;R>LA]@P+@$7!CW/B+?2#2@"CMZNBHN<J+/U:D4K:E8,N^'!8QD
M;I,7C.+*+L [IX)'S0Q3P@/.\S?4BDXND([7M%XE1]QFGDA6I9M];HDB1VW%
M=; LFEL3K!;*!OXKL4D1G]:\^"+$E/,Y*K+GU3B[,\ET9=I"@*/HN5P!OAD1
M>4; ;T6& :ICHG4B4[JPN[#23:^R^PPB/F)(F7!!@=:+$!EYE/JDE>U@:CI(
M*EP0(1-A<53L&_%9F;&4#PE!E%W>]:+J($T#>9^3<A9Z.-E<[+AM?TML4C6*
MVE@XXJ2Q[^?$D3LR);2XJJ7N:GB$$I,ZZ2+G8YM3GNQ3BJ*P)25QK:T<7/W&
MEJ7;Z[YQ<J:4\U-=LFZ-9U,P*$_PH$2NK,E(R7*7E6%<-"@B$#G'F;ZV>86S
MVY9#+H3&% AE:4..(M"9A&3*',DHDK$L1/6M[B\0V:#E!'>RRUCO!7MEZ=LS
M_H8G1T!8$<QEV-^R[7J3L=[7):TN^=6G6Y?<$?Q<:@JU0GZ3\=34P:;>=)RU
M#VN6V#)PTK&;;U^F-$)PI:ORM]^X3G01CD?*B) #$ZQ-?Q%6];L"AU:+*D@O
MPHVI00Y?7I=P&&ZVS>KES^=%!6N0Q<:*8.GZ@=UJT^2";7"1EI=S/]62D$\X
M!96.'AU#VO!N_#Z>.L2P?S(Z)B,[P@'&?/4-.N)I1< ]5\*0,_NA(9KTDO7@
MH-R@%M30R7* 7FZJ6J("\=-2:I*)ESZ8'6DY6^4PK^N<)BI3_Q45F^M4B<3U
MKR3T"?R!C/UR)#\DLRPU4.14X1577<%-02Q+!"D\#44HA<XQ\V!<WCC/4QML
M^NLUEV7CG1+7+Y5RE5]'UG-0&5$Q"^T'+5UD4V0^F<,@XQ1K/=WC,GLK+TW*
MPW41<U=PIX%'9: JWU =(EJ_\^MY58Q60F8\/=OW-[!!17TAQ/'.T2+:AAU/
MUK^]H=6#? "?.C'5!."/N*M:M4S#+KX.9F>UZZZ>P]^KZ%*D931NU)M?T<=\
M].VKXNQ!@3KD(J8[NF;97Z'5SWZ?S7YISHY.7A_S/I)_Q&^*P@P-](/P4%1M
M]/RZ%,E-XH87P:CS)AG#MUTW12-HR12HCP)E:_S.0I-VT^N[,K_1<8)!52K*
MTGD00LT24:4U+N!@,+=MZA@I8T^#:\=!M%(S!_)E \+R 89;F@?7!%+?U#BI
M1&?E]MD$SR1A".=L^+BNJ7JV<0K&AX111]_A)C*_/6\L3>*N+ZX[W!?9 ET'
M5/H^WT1.ZSM<FI-0Z5DTX1&L&;K>,+!B4^>;\ 8M&D\9;R)GOQ*NLG"H['MI
MJLGDQA&CB72?F&DGHI>TF=$%A-L^@6[WP>F@;.:F+D5/1<K1T@NPH;@@'-D;
M)>V3_&[;A+=<,1NBUR6,S !WLE9R&GB'#!R)S"8TZK25P1$.NO*20QHZ]IK6
M%:;*HG..DIH)+QB5[A+31;"H,;L=?#ZHI'^:S+B)[C$4.M/,,&D*+9C3>8()
MPIM'WT_,%GJ3,)U/,$8*]X3C6ZJ"KUAQ1['UFZ#=JD!.G\G3T0LC>EA2,HAS
ML>/'GPMDU-8EQ1$F2;EFSHZ[;:%L,&54:LM5VH,"C8Y,JZJ$,)2DD I WO?Y
M_!V@.)1&H#J #NDM7H:IQQ*]? B6N@OB&=!G4,!3QK/7J?%8%,L"2?)PRH9P
ME/L8+HIJ/6/]Z:6);H*[6RF[H?3CCN%@K-Q?5L&^4M5OW9:YQDCAE!TPE-QF
MQ'$BQJ_@:6^@.3F8O2BZ=6G,;"'8H.K170X,[[Z,*S;FEEC,Z'>972)Z(O:G
M[S=A>9*6-Q>/,9#Y-5$CNY]5!#!R;0)ZZ+&CC07@/Y71$1>5-]TBTY%A7H+N
M8M-#V]/4@&55@5AAXHA;Y;0Z6"]7[SX\:S)DY'H]R4+\VR'XOPC',@YI/:;B
M.*EH+$^ETFEZ35],CA['=(0TX#=@6@UYQ[!EM<##9XB*2&OIG-(RG+QKXX-I
M%$\B\>!BCWGW:!8S1C>+!#NOV**GIJHFIO=A*]T"RMB]C LZVVK[W/7-EG*L
M-FE,XVDNG?>GY'LF28F[I?%_AP)PJME3S&[@J0/_2A0F2=B\+=G;I+JH>E)U
MS)8D7%CRBJS9(6$VHP9MVGSC7CQL\)U/YJP)'GIBY.6X!:5L>C"<1Z7KJ!;K
M6\WD-$\(U(56MB-BPW.P%F):8HPRM.+!G:4*KM\TVMWBJNPF >';>(SBEVN@
M<G+R26=JCO*>BD&*]?V"VV%7)!,#,(Y+0I''O;'4T:CTRJCKE(:1;"3EE/S8
M8I&$;:K&P55VA3^9<.NJ9ZB4\G9J66P2 RX&FXX:JV#!Z$[# \N=,T!X@Y&E
M]Q2G=/I#@<9-$T/6@^/=X#0R9YBVBY0% 5:-F2GV+E0;>:MV'^CC^$QDL<%U
MRTXFLMK&EA.-J1RP[(?W%V6[>$ M#M<:E4<&67K],\0UC5MO=\1+[/B>-:+=
MH1MN@RO^DG&WH[!O!M@.  \9" X&MBW6B6,O* ?.OW>J;)/R=EJ%Y8_?:'$^
M-@7$U89UZY[+EIZKY-OAJCN$4IWQ^^J\8M.P5-7"'T!;4 I-FS0?J,PWY07Y
MY>98S(OWED3Y(V3N=SP$?!/\DV!H6*=#C9EFY:^HNBKV>\0!PAZ02;M2.;5G
M=)5DX6PM=58>O N+^"=#FG0HCY^4"0P;UR+G+Z.[RNP_XT#?.++P=00\C*(*
M82<M$W;1=+WQ/XMTY/@RFCPG!@02@>+\4U1T<!%.BLL+SB#Z6E(,29=*Z-#W
M+YI-YZ$J0W+"LK#ZV[ L4R= P%'30@0KAQ_M"\A60/YZ7T!^_U&+JY%A%'W*
M"Q+-_(!KMU[<E!><;K&Y!^F#C]T6<WAZ>G+T\O#-\8O9VY=OOD>/S'>O3]Z&
M_SQ]\SK\_;M_[?@I]_96?=98<V @'#O8TH4<<\>$3S:&? ]S7&Y:!-/2F+>\
M'JRL.RP<1E['$LVG2"3X71)+=D7QCH&;W%L7^TK%DV0=<G4F,ZWC9@(CB!N0
M8Q'O\:DV<D,)889\HTV 4JA@RT)RXZI$_$<YXTVG7$$-B+$V-9^?-LNXI\"S
MZ<VZM%:2(DWQ=)U+#IJ_LVR:GH!ATL9K '&A'[-W4#0LD4J$4$?='P?EC&L)
MV-IQ=V[L()'!0ERL@( XL)1D&HI*.V=>VDF0,BY4_EG'%[>.:SZ^M^_2C 4[
M!3?2)\K(:#4I6='_,;N!QC$.F"VT"1-"0R9,R;-$=H]YM!SSBN3L+D@;COLF
M.)$5.<(L<J\+SM1+2@<$\WC/,GBG)L+!-8%!6Q+]!+)Y?&%)! RI&!)(N.,K
M;WTA4LH]8 V0A))M,Y]1/[[S0#$3#+(C&]F_BV!>YJFP'UXP<A7@GU<787PT
M*Q.V65\AS5LWS*;C4951_K !CJKQW0!7OFA_MQFFO(K8'U074F5TYH*/D\HJ
MHF?"\6YWR,9[0ZXY16^O:-*$.=-4XE*I]<R\G:DL:(I^T*WX>W5Z/[Y#<.89
M?A(7(.H.,*KDG$$;O9> -LM$-$VB05TK [MIF#'Y&UVN*S\%HW7H'A7H!I0?
M"CFDEIX&(A$E2\;2NU:C@RM2D?I12:L!*FKL!UO/%4'?@&D3G1#(C6&#>^SA
MQ)(VQ1]ZP'G1UGJ<7^85P=XTG:UZ//D[N;5.X;8G:IM+4>%%K28\@UE>Y:V*
M@Y//+\KBLHCG8MBH= %^,N1?\ 7+*(S\)M/%X/P<GGZ*9F,@VBQ@>/%:* ,3
M)^"VXLN($,LO>WL36_/"5EDDMQA#+QPSZK=LU?R:$$Y4Q7_TG-G'\<:T(L:6
MPNOM' TU41LKDS)8\J?SIEG \23S6+92!O 2AZ+5#DE+85#+5X1[92ZVY(-4
M#)3M!(_F6+AP.?&&(XQ+66UT@NR8Q%PJ.P;/!;?O@_A'G;TXZSB\I&'N4RA5
M^0$AD%G%G6VF1D,LKV5T.LP3_]L=W^OYFB:A/G]0%<O^;T^^#']!4J-$,NMO
M#_Z4"'OZW<&P].5S?9$__Q'2L7GT]. 9C07C&,;,0E-&4$IXI"P\V@'#,K/@
MHUC3PV^$YW>9RB_W4_G^4QFK=YJ#[2Z",7L0K-S*IV/'_78":ATT!,0 U@%D
MVAAN[V?ROF92\@%\.$2<CE1&B>I!*GC[*;BO*:B:3AA.!6:2I? 3E5V+3D'D
MQ@K^<XVO+:-CY$WI?M;N:]8$+<9>JS#ABFOUKKBF>*)KB,9CZ]1(G#=O-R6:
M9X3-@8)V5RZ(W/C[3?@G36<2LT=40EDOV]SD'2B+=@Z\D^!BM?4@>BO[R;I_
M]R/&6^#MUS L>H@$_:K/66\Y>);]WB+>VZP(**P#Z62O](IDST:5#TQ0;"=L
M%D6UGY@_>6(X\S&D\IE.2NWGYK[F9HRO%H7U)6.FM(=NJQ>Q;DNJ42:1KV28
M$WY>3JSA,VB&%*LZ0OCXGKX>B25"?#721Y-V67-_\JJTN!R_WZ^2^UHE-/6\
MB\OZ@DMGRM>JL-L;O<Q) ["I?65!6[U;G]E\3C_?S^J?E1 3/0BIBH5=6!?D
MB5*IW7-!)LE>VM$]*&:HOX02,#X#OMM)VA-?]K%:0?#IBH45"*2HJ=U<0&2@
MBNR32+%"NR0ZY6Y#[#%56B@(D?.B7!B(\0_"XMZQOP28ZH9DFCTOF6J@ TR\
MI[2)B,1O/EU$XD<L0)]L8N/+8@@AZ.^FJY1( G,SF-!W\#O^#Z5G9E2-Y&\B
MF19CINW?4I7N>I2M6ROHHX\^UD/'1)Y6@4IP.*X-TX\J:H/S,!$U(RLB@B.&
MM8[2T\-TT.D2J;5H+EP'H&-GB)0'(_&M_GH- @-E+B/J"3Y6\&!.N8NC.*9Q
M9[85H]6]BX)7ZY% 2I^;/#( +-,_9T#9:(V7G5Y>NJQ(,H$&NN;C]"I.)@8O
M(8>C:7VP61N6)8*+6+Y#72NO!>@YG 4:/T)3$1EGC?DL3'-[JJ/H?_0..\0Y
MJAS+3*&L1,L"DA:V9A(_F;^KFO/)D'5Z?UT1(VY*U/SHR\<'3V;"TLSK? #L
ML+8Y[8?+C!^[V43J/N'CB)P"<[J$["1A#I;M$[:)ZJBB;Y1X-[$\)8^[*+O@
MM&@M'J^C) ]"#UHP#Q.:"F6%=G" KHN>Z:0%J5(L\$X#K@4A8AX\XE4AI-36
MEJGM4,DN;X%QU5;(IH<!@?4G?9=*.Z?9=9(IHG9SLBS4I7PE!,<5?55_V@W>
MC%"A>#M[#QT<T'00[, ]NP<#TB]]V1=06(9-=(KA +YM$]% @+HMT&O]DW%4
MY_1 *V'6UQ=9 JK;,Q4XDX5P5$5/=282U#)IX&&)-+!\X<QQB8AX<9QFG1<#
MU)8KH;-A'EA27@+YM^D<6[.L2-+)%0YFAXO(G,@6V_I';<&Z]SHK6.$/8TJX
M/5VDTFJ/-;KP+;N.YH5FAHR SPSDD:9'E!9UJ*Z(ZFC=TE)8$>>/*;5ZRE^C
MA,R4>"M+6+N$&\B\9IYQM;$,/U3^E7B*W4&W@!^Y6%CD3.:><2["HD]T,5S"
MCB/)PX>9I1WW@WNR9+C]GAB:"R$CU_LJA;!--6.\I"MUD2SYQ2\;D;**;$]#
MR$/R+"H9Q-LVT0APCXMC<>&7"3USI!(62YS*W:;KUM-5&<>6<57%FT%F<73&
M27\#ME'"]BEWW-X&K ^,/'_$.)FU(<NN;:B*(*,UO&SS58%&SO<(C3^R,V\Z
M#-YE$S]PJZ,OY)&3:??_4.\>?&AS)J0V-ZZ_:M(!)J>3<ZWVMLSA&[W40<F"
MO=:AT[W%T7XCB.R;)C6ZC[(WQE,H,0A"5!^#[&Z$D=AF=]0!7K@ N4\+"CAO
M*Y0 &4)2NN([P;RK2;.V$_0%594=^WZ,MT0*(%Y)4;?[<&%WMFP*W$[0+\+D
M1F!6=3 6P3U5A.!4-_@-4@2C%@1>+VPO!JG6Y=AHN"6$FSI^,N=)+>1\5%ZY
ML[P"?5"F'%;)T[.O:1#RR#?%/Q?U81%9V7F5F.%>;6XXV+")R16AW81V%:#2
M3*>(HC:Q"-B/RXK0&-1%8;Z+=BJIJ&DK[)+?RE<%$#SX/'+?QKL-/)?4(@W,
MFE#3WO1NS'=8;8(#M5GQ$[ O2=!V'1VBH)1OI.:Q2,3"!CM"I6>4DYW%B] /
MI[HVXS>@+U21 2<N3O4P*4(*'Y"Y$U+WBLU;'F((DF*ENH3=FH?T=Q@DR1V%
MV]C^I/.I&CW967&>UR(ZBDAS>LKIB>C5,!J?@K?G!0;(#*ABE%N2W)(6# O.
M8J];YI&"+#"YXP;^K95VQ%A3BS0D1UGLY+PM),MHJ9_!^UIDG;:><KOIF]'W
M,63:K*=>D_W:A*N(3XI 8.Q.$#T7\=#I][)!!.J*=^.6I$EY$_VE.'C$D!T;
M4HL<[4/=,,J?ZI4!E0^Y$Y<-$\0FJ=FF3D='/21SXAS:=%H9ASN<G3MI&TL\
M'%NO=SN"=J(SSX?EC+/(@Z/+Y.O27.2)VMBBJPJK,^9+UEM%YL,0&,CPH<!X
MY2KQX:^KW=^+V(2L#,0Y6&)(FSWZ^N&@H>Y;#!/EQ.B%2[#2CQ(>/+(IE&!B
MH*\(NGQ1KA.RI6UM<5I9&(VZ.=O:$ :[L/(IJP2\$E5I'^C9%Z.>Y('I>.)7
MH:T!SCC.QQEY5MBGQ(7#6WGZM:T^[ [L&S;,?URM]_'#3[?6^W'KE>[L 2G&
M$-1E&PUI]E;VFQJU&_98MVTM:]._4,N&G:"F48+:(:,%FNQ('Y$L1484A,9.
MJOO--.N1T6*7L[12X%IX4Q-P6W0--)WN4ALR*!%SX5Z=1@KBW]>:KYQ P0U*
MHIXT4OO^K359-*P9G4,&4\8M)@O(ZA4R%UL:W8P7']@6N0(+ 1.SJN1WA;!2
MF-F-$7'JFL1P1T4(40 >'D^#WO'POE/>A0?!"RYI@C\3PQR9%>.R*8A(4NB^
MAN.,.E/*59;,$\:AG)K P3/*7(J;=E813V 9%4&N12$DH4=.*CFEYU92VYG2
MQEX41,);XIZQNMTQ5,[?<UBL1.EI<A_=@0K^?Q3CTZOC[PY?S0Y_?#%[??S=
MSZ\.WYR\_M<,-% [[C<>Q<J-5U?,KX82.)\>+>@_U7 7"TCCHH>%*/Y$IQHO
MR5J68HNC!@&O[S&OF6;94E(0S7OBBI)BW3=9WQN>7&:$+$_719L+L?GP8<_<
M-/4#^1=T*L(LPY5W:AR;EO)O>TCWO4T482 <!3'B[+J3 Y*"R/W0W]?0^\X%
MLGF;_5C?VUB37#$+!8ARN[*Y[(?\WII%\E^CJ.*^@^->.SAP6%[E+!JJ:SL1
MLMQQ/U!3?[Z<Y'O2''C)N82:Q$Z4J2;<PJ2C3$?I@G6+K[0#WFF!+O.R%0?4
MY#^SV:JLR]5FQ5=(14+-=5GGUR3PXMQT; ,Z2+/9K6=M-IN'&.NW@MU;?XM$
M]"9<,D9O5?F.7/\KS_TNE(%IN7GD#Y^ZL9Y4CG]02O4S$5SC?'XQ+QB&1Q_\
M<<SSOS>Z_+BELP' ::OVI5O-W@G 8D1?D9$ L/9@^/DE/15#,-WB*D+<7\94
M4[+H=WS'GT(A3;3!:UG,5UKW**3\SDQ?V.>MK*^*D)T4]3;0:2)TS-0@2N8'
MPQ1&,7R\$IP#\CD2;\;%+GE*7U+0VUM86<EFU/D+7]0+#1\A41?>]CP:D^KU
M1I(LZ+4KD>M"4 22'$)'NXQ/FL9))8^'TG0":WW'5[\H188%2F:LGS,',QE)
MNV<L5Z=R*[/\,BQ+E]>,[ =QR47ERC"3MR]9]GH5CKW59)NH)4!;U"C* "I<
M&D?RP^?'#_Z)V^&?CY[K$#N4;:]H#;&KL[)/->QC%F%%5IR.D6;#V91W=7-5
M%8OS(A.ZPZC])49]D*YU*.U;'G#1%%S8(6'.8(J+PDK((B\C%B *R1$XA:JF
M9+D)/]%@LX0=AJ&5!&$<\H/9SQ,//*R6+>"J18VXL7[VDD& 5'$,"ZHWROE4
MOLI??MELZH7@BOV@38LNZG&QWIR1C!H4_\) C%A?&;M#>+:%/2G6='!YL(8)
M*$C@/KS7A5*="CU.I+AQR_:-[YA8#F MD:POKA"15D('@;Z7-5P(<C&*DX'1
MD+>W5[_VRBX"MC) RTCCE-T1V<4H[?8DZ#XDZJD]XZ+;_J/!!8FGI'Z9QG.H
M68GYSM+9'A/>,1;'%QRH6[:$.,^,\_:P8M?LE^6 2U,#S+NB6,.PN^1U&.-Q
M)G!H6H<(QO=Q/KRFW'TZ(A_O7/V6V?I7P,J/#D:,$OIW"%465I@T;#"A)MD.
M4KADR>)E,]^8)&U-K3]YZXY0"+X?-?5YBS%\49!Y5@J<[\-:JNB;IZKTI#\[
MYIZ4\!A_9R%I,9.XW)V.8Y1EC _ICSN+CZ:]LJ:=VN:6?4_.ZV'Q9]OY_=YG
M=CQLM8!S?>]G^=L1HB(9QB5/V4LW5/1$1X#C=+/C.,:X^\NC8UX[Z4)Y168M
M4[)E<#*'0Y^LRG@!< M2)XU*Q6B(F0==YXI>2"M]/A". G9GX< DLF*Y,9I3
MTHO),4O[8CI2C(@H/NO(Z/%YEUYMT*U$YR7>L_/"A$/;Z\^250BWR*K-;[%!
M_WG C4>?+G#C(X>KD\?;]M/P[FP3U,HG,9LVD'A.(:VX;]A+I#T3'H7:1JRO
M$W#"'3]IQ_9182CZGF'0R&QLRC[BSB0@"0Y0&&: B3=M-]"NORE;11=C7&F8
M.[3'\>#Y/D\&Z_:@U.[\ QIMSZ:6YA6RH\&(]_3%L/D[Q ]PXR+" )8?\S.X
M^/MY7G=>;&35AWCLB+BS9 %C<?E):")T#5%F"WJX EGU!ZJ"+0FK0S!RMQ1E
M8GC!9J)<P:$'R=7--5*LH:N! U8%6G_'>-QEN^UZZNM-THN<8(^1PT77@62S
M(+QC/@SG1,,#<#T?T&'Z:WCW$*;1?X4I"':V@'*2E&X0&>3+ O*A<X3%$&%Q
M! TDQTZMT*S"ZIN2?1#C=BG,D].0_N1,S^\<VC]V]$9]P1[_K9I,M(DB,AXV
M1[:K'BDDDTYQ.24,W@^D=%>5[K<B=@/-)X_2C^\95;=YE*DYFI8S_,-5T_6C
M#H"K NF?,DUW'\Q.<#WT:BY%#MC?E%O JVI3-?AUMW&\";Y'P02!F)@>@#]Z
M &0VV)^'5;('<G=9."'Q*,+CL7/VO@>SPPX?9^KB\F9&O,]MF<-IWO8$.[Z;
MAEKM@W>-P=$VK#ZM.Q9L&R8Q+\*I 7FRX:(ZTRT%N"JM!\N 2S3@*#'""F7H
M'U:LZ&X+94/'?!R9I<*2<RQ\EMTQI^,1MMRG7[-NM[*4_+)AR*R(QAO5!7_Y
ME^!2Q&\SJZ?KPY6AB0UF1][BA*"CZ"0(8P^%MC^%XVWPI[(H]RJ5D7#+\6'@
MJ0!H(/@<'HNSIGF@F0E*WU! A$L2^TS<@<?L'[WH1=L<D@&XR'_+VP7Y@^0'
M5_EJA4 RME&)A8C;TT7P!-DGQ6BBX!!>#1EW6I%@]9;, /+#DBR% 16233.:
M9_&>:8)>&M:JZZA-?R4)/ V-.9:-1'8T#XL032,OISA<'\-&6*Q=$Z8@@G8;
M,. 4:[ZB,04.ON7EA\CBVEVCGKPY;^/D"#NU?ELCT3\$D4NKD6NI8)RPM56@
M8T=>@SXZY97VEO+TB]F3+Y]9&E_ERR7)\DMS1FLZHX.W("EA'KMUQ6(Z82OA
M$7?;+OZT4SZ%4'$PU4[):Y.N*E4 ^A@J$ARYF&!$*BCAL85&C4_6=]S9;;0[
M2!^&G0R103GL+?:2R&"PVBSJ\R?DQ'AT2G.F5$BHB/7,M>";$A"1@3%H Q E
M<<30_X>7Y+QL,*B"\5YR]ZK8)Y?AE[C$@IH(#S#VI_"(2W*HP6N)^+S6GETF
MB0FW40G&=M!P]&>GX='Y[&*[LH;UE^U>%#/>,^7B?W]6?OFL^.IQOGQT]LU\
M_O2;9X^_?OCUT\>/OUP^.5O.BR^_?/A_'S_[\LNOGGZFN9L?@T69/?HJ"Z?4
M*DQ"A& <-2+&-2^Y1CG[B4CX7K[,0@Q=K&9?9[-O[2V@51Y_>TJ>E8F6OLC[
M/+/9^I9$WQX]?/#?NQ[K?<LY]HQK,RKBZ;R(B32I+ U&DWAJ@IC@_BORT]2Q
M/I?T<CTHD0GWQM8HX!,!O&]/&BT_8&1=JB@C(3?*N4F4P;K!7(WE]'KXSW#^
MS(L)U\E/5K"YJTUUGO>1].OD]/O#S!?Q;_D^"@/'% W,CN./3DR;^)KW5=?I
M#F>LX(W7?*D<\:^%5.J431)^KV,HWC7*ACA%,(9T=:G>L&? (L#!@+?7 ^\K
M_!<71<J.C::;*&=K)E<Y.W^CFI"'L8U'?KO',FYHC30>\;;L&/9$N5=>YO-K
M(3DS4\C]V3B[TYXXX&?T?*1D%FT^EAG4!HRK42/=$=7.F[8N\]E/<K_7W$5U
MZ%CE_EG21@O?.4(C;Y@1,G;$?*>>V^'<2F!7S").W.Z\F8--_4>8$YJ;QP\?
M/]%JKVD_C]Y6WU">6"MK4:6S "51)@XU%6(HLJ!K,;.G56F&Y3LY &TZ79.6
M!5!+:62(E_%=\Y8J/-NTX5R%%^J  0G$CP.WKHAE'P;73:THL UFZFTNBA4X
M9"2K8(QNSJ@.:0*XK=Z^23&<,*28P"]X82HH!]W:*/8'4%@?S'X( T6NN$@!
M1Q1< B"(S'?;!M)5[:0Q>P#,2PNN_D#BNAM<=9MA]KWN]]UW^] Z8;:MNHL0
M(9_#MZB7==]!^M#$'[B(UV@?K-F4OAF")<D ^# [&YJ_P913#-4MV%_0%?'B
MY U'Y^$_0%EZUC8Y31MA=T'Q#@*)YHK2,4-MB>:FM^35&7V4RR+QS\-W+XLP
M#"@L Z''"JJ_426A#2N9#G#H[RIKWK(\WT2$P:*%G#Q5>3I'RBBPW@$FL(LZ
M\UMM@X3J=TV73K+B_#4IQ&B#+NW+X::DX1Y@+-QLX4^"+TJ/FFD@V+ZX;<7M
MQY]N<?OCF2LO>,RM^S!3SG8X;U"67T] F@',PGL_"%[@(2HRH[O8]-@QQ"([
MPO,)H"72;DRY<8" B$$P)T30^6_)#SC/:\CEW&29&%O2$:H&;AL2)R"1O/;'
M.B-@_2N=7)0-;OXRF(&\#M$H&5D:AV WPGDHC?5,"T0^-/=JXIX^KZ&&;]1@
M$.Q%>)JR$T\UN-3A3&4F5#I2B59L6?)@%F1,:\'HD@\4[Y5%JY>8.UP_>@-=
MH=HQB9Q%]OM*1)K6'.,<=OS('O'I>X;,)!,ERV^2)U_8DLMB!!>>CEI=T*69
MK$R@#LPSV&Z48RK-#YAB_6]-C6 611/F/*;4G N9TL1B-G.%%.VL"=X?Y0CI
M.L0F#567FH[4F/'O&"*@I7N_+_R38:%*XL*?_?R80IL8;M4/7-#F#BH"1D6-
MTS+OV:%@X(%!CJF Y-)_9P5&IO?\PF>$/,M;D>?*/;<I!1 '(6)V?K++L:1\
MV-KH),KTC)$72&(%EE?.C<>:3BQ56)J0.-\P[BDLTBQ#XI[$]QWB$:W@8,N@
M:H1T-:'\RM0 ^ !EQ'7V/[GMZ"AMC!M!7;'A ,#,;XJH;OKM'\8Q\=RY%D0H
M7BZO=R8+-QX + F8*SVUSJYGM=$8AZ\*LMY,7D0O1TH@>N!_$23UM&_F[V;'
MOS)>>?;YC_\Z/?X"*9^X7RWI8ZS[@ZG2P_ST^"B;T15\?A '?]/>DE]0W'8"
M=)7J<3!J1.P*'M)L"'[=-CIR0EK311;1VIN5&DDZOJOK3V^A# G]J?9,[A:Q
M++*G@Y-+B)46EV$=S*_IT\TZK@&1-)#>BXBN*R0%"I-#;%(U5PK/<[.IF-F+
MS8K0^E&%D5GRJ&-D@:V-1B'\.TL*6:[/4$0.PF*C\TXFD-I-R- %H^!(K&C1
MA#A,DVO4QL56&26E\!Z+LLN[7BOA7:&C( _F%0[D&*"ABKM#NSN:>5G@'U:K
M"\O]^/2[J4,9Q-GXK]C*C\QO".2XH&*]YEEX0"M"XH0NNWG%.5C<8TUJR:@W
M4^MJQ84\'BLJV':]@7DX$4OIBW 2YO0QS\4\7Y?@\*LB?)W+]!'A'^L5_.Q\
ML.>,+H3Z@GZ'5M>O,L8*)6Q<2^38(@#YDT%*N)-@@U]?9R0NGC8\ZJ*2GE.<
MI,.]G*'G8UZ:8Z9,O.%!UM0UI2%-%(2((8QOI1!PNB=D&TVZ#\*LC$8F1)*S
MCH"<,[!^$=CYG[95%,$5FG?6R<$]\-=^[<$)J5GU3EBSENXJVYBPM$*Z#;[Z
M@5F\W3%OD1)I^O!7HU"V@^7 Z24^(/!O. E4,)'S;=R]P9=J7+OK']8U?M<$
M\X#-?9L_=-.Y%]VBO(MC(N2=.>/JL@]Z,UPAOEQGQ>,[NZ ?8UUM9;H=^%>I
M<*^K7Z7=3;Y8EO[$%\IV._2^:XG7>8Z#5YVH+J;(+8-G"5Q+F^;3G>).3\'<
M)*GW[ ,ZG@1E*) HJ@[9ZEX35K=WBE&L6H)S=O)2E**9?.Z()O.LA]3U1Y##
MJ3[D";PB[ILV?B7;__8A3XN?G &PAE?)*RBP:^A%\/-/9+P%K@M8D:$:I4=F
M.W1B:$DFF3W4/"6A.P^9,T%6F;10?"(<Q.#=\%@[O@,_6GU_N\F:O2BZX#.J
MOA;B(B/JD>*6^S7Y+ZO\'7V-$T9PT;&49.45%&Z5J*%H5&@E<@\>C]%EF.!N
MW8;'7S;YRA_>..)XT:2H5T(LA%% 5[!8: #5'*ZU;WX-(8V44 $0X_;*]$+$
M42!7Z@?^Z2U7MMJAWXU5D2\>L-3&FFQ1AA9ERLN!Z9?AK]P?KP%HB']:PXY2
M]%0UP,BXJ"X<F.3=LB.O01HK/>-1.]W6'AS.K^/?_]BMA^&GLIUCA[Z/U@1A
M+97(M*=?'R". 15,D>)>Y^A_0:!C"&'!6C,R6!NH[-_+B>MI<$==5"3<(!<3
ML(QA)>/#S(3Z%PVW$<"-744L&S2*2X,R&/KH08PO& 6;O%152MR\# MBU\U,
MZDYVQ@X,^&H(S7@S$AS;QG[;X0:]\"D UXV;+=5#/"NZOI&#D>+#8K-R<C?T
MB'TFAS+X0?*:<[)PU2,6G("=8#NF_[ZJN65$#FJ#FY>:5$3Z=?D JS'$V6'I
MD^%+J*25!9E(5%#LKHNK"DP8"KQ.S::Y];S$E-Z+BTV.:<0_RO"D3EHT7.9$
M.C4XF1<\]TN&C>DV4LGZQ2\-FPY_#R6$830PP_T+7MQ%>+FPINC!6JX_$:Z
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
MTIF=!3J^,!$NYRJ9/<9S  2J,Y/PD<#5O*T[<]TL2AQVYY[2JKXO83-(C"]
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
MWKRZ:8T\0/5 PB,X/O4.();Z^A1V2Z93$9;\IW!]ND,,]G%A)'+N&7!"WB*
M)]QP0'C]1O\'>&N<PTI.-QB\%>R$8%HX<WFOOBJ?$(L:* $C(0#J=U-#!-,M
M$T^'#0FB*3Y1W''1I68A 8\FWAULB^O);R7<*[<N.):Z!'5>X-I<Y(P WB7<
M J!O0IV>MB()/Y4BNL&+D^D46_WHG@QRXV$XV (;5X?4 DAAWZA#BGS/Q[0^
M48<_TXL'^S]@HXJBI5;L,#6L=K:0W@'C$,"9,>D;&',30;327 (BG'CQ]E6Y
M\18B]TMX$G;AO0"B!.I9Z!Y>U-@9J7!_IR[LA &;V/B<>B^-J9T(D=MF%[ M
M/R&F0K3R%+3.CF=X$YSJ::O?;G3M)_M M0\IJXX?+^ ^'2,;+RUVB_M+Y?!G
MD'JZ>PE@!'!5[MS,C,B(N EM$)%:,W&WJ3-Q!/@*!6&6)H;ZG?Y8#>\C+;=.
MZ (+^V&#.3&(F4!F")PNG(+Z!(@>2=T])N&V,!&(3>[%DG!_NE)/!/EE*6-:
M=2^T'08/6TT0P&$<Y+#S%>!T %#(ETL4OG/<3JA4+E7!*G$;!8K+*>PT!"Z_
M\KT@#6^) ."),O?2 K+AO8%CH'*)AUU(%&VFOPR('CS6VH7[R&F7>0I;070P
MJRHF)MM&+TE9GLUA*8]+$9%_(!" *84Y=7*_PP9IL%RV6J)N"@?D/C9F>5@.
MV$L&G]/B"TO4L!@H*@A2T!F 8_M'H24=0:HLQ,WC3U1Q(N6@>G$V?8TD-9=
M$E_HI["OI]W&T' *$LZI! :!7#'(J4U1B8K@Y^VFGJ.PA%O.E+MO[D[4\/Z8
MAQ$BY%3W&A)QL96MB( MYJ+P,^X'11H !VX!%H!_P'$[=-P[V*/56@CV2?JY
MX)>T;(AW!%]%V/J0J:_H),0HA'R++];^U. +_51+T6F>%L3@"-PY&#>S^9I
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
M^#2F :,.62'PB370OT6Z\EZ)3/C,I4/EO49IT&K>_)TF2H4QZ8-\&_&&L+G
M25\TT4Q/^?)11ZLX[=%^I;/?W9.^A'ID@[Z:C5:K?]*@KV9CV#EM;M3>H4E@
MB+4?8L+3H-5^B E/K7;_4C9;0_8A(7L8*=2#O@XZU*,[?SWFJ1[T56/ %0[Z
M>H/7 !982;]\L/$>%YK[=G_GKW;<NMOR>X,3&SX^Y(B7<^7R/K8!/NW^T4EM
M]0"?>H!/S2;7"@W:_K!;P4E8-9N\IV%,IS8]KKEDS25K+FFX9--OCUK5(Z3[
MK.VH-.91W.#*JC9ZG?,4_]>)X(?W$&FW6XU.W47D.Y8:7 9>=#N#TUJ&7CL]
M-4>-(QHHUO1T'?34&8T>PIO-1#&JN.[SB?(5DXW,B1,549VRT('C!TF."1!X
MA-UJZA79*=\&FFJ34+?MMYK?Y@OX)O!<D _H @5GW?;B.[ER:NYYE=RST_:[
MS1,Z1]?<\Q*X9^_44&+-/&OF63// [SG_=&)+?W.R3P/;G9PWEK>/67^FT:C
M*>/:4M+KEDX592>A2:I*1<953E@U<0L_H>1Y_-0+Y#C3Y;2VG%_7E])76&T:
MN04?0]_[-8EG-Y]DNO!>P2/W7>@QS5,ZNEOPD<J92!$I>%.F:/7RBCZX5,S[
M)+YX[]/D-E25+[G2.\Y@QTNS8[I1('$YH3HZ_(Y1;&=!"!;E/:J*D$&S,>@W
M3ZD(Z;8;H^;P_K/K^XWAH/< I0##3J?>[."P(HNZ;N%J<[:O.FO_2G/6-R5C
MG;)^0I['L;"XD%ZN@Y$_?)A&T#5672]6=?K^H'6(L*VQJL:JP[&JXX\ZPX?K
M.UWU0/TO&\;LE64LMON-S@.E+%;NLA\V@>>1XD?GP1J1U_CQ&/"C]V -P"N.
M'Q<0:GAU1/\WGX($1@I2G"&/37_.E1<NEH*ZV8U7W@3N!/N^V3YJ<9)Y8\EN
M^B '>8H>66[>9$UEIZ->GBX3=: 7_R* U]H"O.V@XU9=$05[L!D7-0SD6(=
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
MO+%FC8 YR'(S#W/S&1,QS8F<#VQ7K*7O./*=D$^K0MZ@1S%\5)%E!*H31E^
M-^<\NVE+/@*NV^7 OQ;TL!\KQ#D/0-*^U]+4?F]\;+A*#@ FQSI7T$<Z/;L>
M/341Z1A=*F'R!9,N0$U0BE4PW#IY6E@/UJ@Q 2TQ)(W31K!"?#5\3B73Y%I*
M8H37-F>PSD+: [.&<3*QH\:^Q>85J\(5R8>G-\CT5M<F2,Y\"XD?X ;&F 8"
M_)6STS!G(C._O,.$=MPHV31?W=G/<H49_A2IU,F_Y-!&*',=-6X2C<)9S'5B
M&!!&\,R2!%=%'9*@&&(=65S8$L+8NZ'VJZ\YYQW'&&UPC"W=)/L;#/,J2+P0
MW:"NQBQ#*=>2TW$<18$<<PXR:CL2C7V-&C=3JAUE>''E%^N:E%>*B]J$'H8F
MT+'@UI/&R' =T@B=U80N5_#17'W;QKDC>,44'?NTYH8"3'$2^"^HK@&Y^<@,
M*!)8N:B-,'N:)!E8OX=R[?.QKY>FO6IA?5NB8WY,Z$2IFH3A"MT!$LL]B$<3
M8AN30B.5M?]Y4:/Q%QI]P_+\B>7Y?Z$8!JRMBL6M9:#8(J0VL;G*.6O$.C0
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
M(;33D=N8CZEI&K@DGE.)" W0:40$,MPX+'P@#'W:FX72G+?=8]T;_>\&()/
MVND(?-;ZY%F2I*V^2__9G8G1UGB[K'_])^44-EI%R#]^[X_QL_[I,7"#,2@O
M&[4L+I_/^G:7D3FROUU&YH[WT8?#CU\_X(]?XNOQ._[&^\>=[H?#?[X>[#P_
M_G <K_?S*]K'Z7O>''TX_M&+]];=W_F;'!SVCO9??OSR\?#O^)[/K'.<(GOQ
M'O$_\?7=GQ^_O#B>?"9^U^E'_(Y_/-[[GJ)]!^]WOW\\[O0Z.^]^'NQ\Q2FR
MMW^\]_/C^[WO^X>=>+\?0V<;_GAUN#O>?PM_[.]L?=_?V?L4%,:<$0&L@@%0
M[CV0' < F82>"BA"P-%JP:K-L9C$]"8RLED$T:ZC%!/@NX)RK/.$;R#J@4*4
MXYY90Z"V!%&&I$("$^>,1T$A['F&*-1 5/T@ZN<B1$DL(-;. L,]CA %*3!"
M$R"(%E!29H2'&YN$D#:5K$80]0N[<!(B2T,_+D:UVWKG+3DDTU6JA!GG2@XP
MK!C!DXJ,.\F^% [LI/5T-L>J]20/>$]=3]]S)42>737TJ3![,EHQM/YU!R;5
MUN267@R&.X-3,PZGO<D#O)G>?^F9-;BU-MSJPN\+N/7-O?R'NK_^T_N(>]_,
MEP'MO-__T?GY=_SN#[CS<Q_N'\8[_?*9?#C<)?$>XW>E-8G/\X_$^W]_TMA+
MQ2T&3%,>84\IH$30@#'LB C>&&PV-E6;I=36 N@5$]KNX+ALQ.]!B-_!UB</
MK>""(Z#B/X!Z+8%DPH!@C<<46<Q3,E2V!5IV"])PBRL-"U[(/RV=6_AJA]!*
M2_U>F[-K.QZ6=+'CQXTZKE\=EQQM+K%"(2H0)IP"ZA0#FCH<O6V'K*<&"QX=
M;:)$&Z?<RO6LV-6&V8TZVI>-LCYZ55[;4=NH\NVH\I)#ZK2(_X\>J$0F (J9
M IKS (RS@4>E]MCJJ,H(M^,)6B-5?FR)BKW^MZ@+@V'7GY]\N@B.+AL#O-=P
MM"[+8K+89Q&%&OA9&_R<+5L2PFIG,8(@L&A$4(YPM"0D!_$<0#@X*FEP&YM(
M\#;'RZ[AO0_9-ZJ[;DNB4=T;4MTER\&+H""QT8M64 !JH@VA"([F@W=2FFA.
MH!33092T(:F3ZJXI,GQO+(?70Y^'LD\GJ6>V[TSB92]7U/+HW9QUV17E5NP6
M.['5=P=I&[;RZC?>SIHQZV!%A0 .3"")-9#QE(G>CB7 Q'T%2%H;B N!*[&Q
M*6%;$5(C9Z>)6]34VF@4^G85>LD($1@KAY0#@EH'**$FJK9E *?N)TZHQHAO
M; K8AOC:Z?2:1B]P&K5=<QOD,,]77X.Y<94"Y8<)76O+GC0@=2,@]7;9ZB 0
M0>X=!9(1 ]+& <VU!3 :'1)RPSPFT>J0M$T16I.G=)4VD_L2 7G$6K^V1$NC
M]3>D]4NF"3.IU=H8('AT.*@. 6A&(7 8>1T(T<&[J/5,M0GB]T7K'WR?S^MA
M&GQ8#KM._2 GQ428OA\W\9&;CX\4B_^ZI_OCZ$WM3M8__EQ,;O6O$B_PFW2;
M!^%==+D2GFTEIH(M:T^/3S.#YHX_&2;JIG3;\9-;QXD+[F?)>=) WGH@;_]P
M*\-=AKW#!'E;9Y\<)!X23B+FP42IPJ/-(ZP 2E!HI9?.J93.0;(M!*V1/]8$
M6&IJKS2(<,\0X6P!$00)P7*&@;":1-_'.*!\<$ 82KC36F/C(R) 5K.0ZP-J
M95^MS ?%?.?^YU8O*5 KKPD8!'!:#!:X9H3F8</;N@R>Z2:L K$&F=:'3+O+
MMDH\DC2'G@!HG0?4:0A4, )(0R5#3C&60\>\C:YOJC25)_75Y769*HTNWYXN
M+UH9"CJ#K;' ,Q0 U8R"N*,$:,:)XM0*A^W&)E=M*=858&VB*9=0P\EXR"9T
M<M.6Q&2E&Z!9']#L+1L-5G'&*=/ (BL!)8(#8QT!E@J,XC&"D!<;FT20-F-U
M2C@W 8Z:6@V-WMZ(WBX:"(9X[Z ( '*C 35( XV5!L)S3H21SDL3]1;C-EO1
M ]J$(6Z05VT4']</B^E7:?K*4?=D]/OYED?ALBCMM72$"(LUU8A)R%'P.@0"
M(8(>7M9H>-&-W^%?=;]YM]<?Z_[GKND5_LJH*9]?*R3M+YL2#&OBL?% &.@!
M]1("HZ/W0AQ$QG+!C(T^"U*X3;"LD=/2!"#6K,W1@-0*1PN"*DF=-@I*KQV7
MB$IC-?.7-24:;;Y%;5XT,#C#DC$2 !)> 0HQ!%)2!)06,"A)*"0J-;+)-N9U
M"B<^^!!$KLA.D]Y*A;B&;?$H'!LL13R8J!'86HHE5-Q32X@U4),HOJ&Q+>J&
M1G\OVQ9<&$YTT"#(Z.E0%2PP,KH[G'LA(.;*!KZQJ5 [^JXU\G::*,6:E=E"
M)XDQTF.+*)'&,"$1-H@*[Y!WJC$M:JC,BZ:%$U(1HAA@3&% 0T@4'0R#N&O)
MJF FT&A:2-Y&K E=W+IE$1<;K*^QY6'#T=K*)F9==IU!WS;5[.M&H7?+)@5D
M/BB'+5!.)@X][('BR 'H5#0O# P,1Y."XC:[ODG11"OJJ\-K*Y=H=/C&=7C1
MDHC[A+T*#E NXQ_1M0.&RN@;*,QT\%I$R4UD7]$M>( QBJMTR]Z=55&TRJZV
M)'[UP-=KD*M=U_#EZ?^O_/P/!H[7VP[<X._Z\/?#L@V%)1(L: :4H3H-LM9
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
MT[MP'__G^.,7U^L<O\/[[SO=_2]'<5V>A_W#SY^0IM!0(H 4RD0G7BL@M=*
MBD"QQA)QA.XV.==(4?VER"J+/;4N^O!>)=;P &2  2@* X=$>2?XS6?F;@*X
MFNS)O9'#GWN?5(#)!XEF3$C,LIX8(%WT22R/*"09\AJK.PM)-E)U3Z7*>H@A
MQQZ@X%.L$F&@L:7 2NSBWU*Q8-C81$5&[LI9N?9=I>26Y'&25VEDL9ZR&+_W
MDS(X8$,9()QZ0)FTB7'* *NCZ<:$-0'+C4U"VA2KE8W8OY$$OKESM9&XFDO<
MX=^?E*/$:YF&+*287H) &1P'04;P4\I%/\%EB<,"M3E;[ABNQL[K G5SV9Q&
M^FHJ?5\^?^+&* F9 %JD5 ]6%B@9Y1!)YW7$(:>0SI16!/(VE<M]8;7"NT;L
M[H/8I3(L'S@.%@%&;6I"MFD,%@F >*(D$4(HD9C45%LDL5OAUD[RAG>4+'P4
M-&?K2A96U+3,-30YA:MIWV)&4!'KI)(*$(1H2M 3H!35P'@BD3(*0LR2S4!K
M1%S6L!#6-!O8J.=UU7,QY8<I92&57#&6^F[3:.JX(Q @S22A0@N4JM?)VL@U
M:M1(7V@9KJ3L:MITN15O.RVY[K5.=#?Q&+>L/NF.=:^A&+QI@V"V]J_CTN_U
MMXN%KP!10P:R/H!:,>>1&P8E12YZ?4:EED$!I+4$($6,5\PZH7TTOZ/;)W'#
M-?B -7I=-D2CT;>LT8LF!W)0\&C\ Q:$B0XU]$ CJ*-N$Z:@15;;:'+$K6Q3
MLIP_N?=51O?&['CCQSK^TK6\'O;C S0S$V[<VI@L^6ZYXEO6GAZ?]E*5RXX/
M7=MM^%#7B$TKQCXZRAC4F .CHZ%!49KB0IP"4B ;-]1R(]7&)D.D#56=YL0U
M$8N:6AN-1M^R1B]:&T$YR!6G0'OO ;4< B,A!\PCH86F4:W-QB9AN,WH PQR
M/+2:YL.AUZ/3X=FDJEF/X^J,QG?&W#&YG^PXE#Y$^85-4F]=:OWYUVV#AY]_
M?#S>/SMX_^YGO-Y1YV6\[LNX7N\_X'3/'[_\4ZS=X?,T8>439H*KP"20-"A
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
MK4+%.Z>I5?\@Y.-M=#!3]#)J>IG*LN84O,PIN&)8)(PVB'0P=70R JBB'JC
M'!".42.C>>(]V]C$LBV@;"/>]'8^<%6_G@_=J'J-5'VI:IX)!I&00&"HTB1'
M"+1V C"(=5"2<6,2;;=J$R[:7#2J_K!5_9J.:J/J]5'U96Y7IHTF! +#E(M'
MN\% &>\!HR[HJ/0A*G]6=09I&UV_*;!^'N[]\#W*8$XS2_'NO8]R*Y;@JD&J
M]2'5BBF+0C##&$- &JP2DP0!,MH>0 2%$2$:L]39$OT/R1-:73LC4+_BLD;9
M;]__:)3]5I1]T0-A,DA"$ 2>I^G/7%,@L<# 2N-)")8A49@E/"H\NW[@O5'V
M6BO[+7D@C;+?AK(O^R!0Q@TC%""'+:#.(!"AW0&("71:!HJ$RLHND&AS6*<9
MRJ4/,OFNB8C3K,IWT+?87.,2U[BEU.B=XFNBP6NY[K>N\WTW2EC8BZ#F6B=^
M6"1*FP[.1]:Y<$WO>*_S8@7+P_&@_W8\L%]W)I(V+3XI!:XY':]T.GY8X?=&
M6Y=ZR(%&TA8,BM'W(< 0A 03DG*?_-ZGZ-IA^/H9P0TH/710NIX7WX#2+8'2
MHG].""2(<PQ,X )0% 10DFE@K9,\6.HYC/XY>KJ"U;4!I0:4Z@U*UXPV_#8H
M58,,H?O#._#3#P<-6%T1K);B"\Y%>U:G410JC>B5 @'). 5.!!]1+&(6,QL1
MEV0T>O^L$5YE/_7?8VUZ?C)MIC**KW(MZZ/T#F]=P3!%4<'>>M_2-LV:U/VS
M^,BM_F <KSX>)*7*9& Z5>F&;E_W;5?WXOW%7QS'6Q[-^C\7'Z[\!IIRLB>#
M43?MQ+.A[^DT@N?/[UTW/IKH=^53Q?(]@[./:!/OX'1\_D?N?A413O?$T,)8
MH<J?Z7:SYJ>,/$<L"K/3U =L"&4J( MQ<,(%^BGUY)4?.IH&I4[T9P_,T.NO
M0"<>_&>Z]UV?C3;^/;<0Q]W^Y(XH?)K6_:I+MOD_9ABON>(Q:KC>>YVWAUNO
M7NWNM)Z_VWNUL]=YV7K])B+3]N';=FNOL_WT?-FLRR-L'W3>'KS:V]DZC$\1
MG^9P=W^W<_BV=? B_NU@^__]=?!J9_?-VXQKXL_6[M_O]@X_U/ZIGG3[K?'1
MX#1>PXW:+?_#^D0JF$[*ECZ.2#L>3><"9&B<*7^F;(OWV=,G(_]L\L.?KCLZ
MZ>FS9]U^_K;\H3^/]?!SE/@2,9*X+Y9ZI/4H7BXU0:FG HJD#&7LL/SB4D^>
M9CU9.!^*US!Z2N7Y+\.GZ-S7+KJL>"HI_:VK7OP:D7SM]\J>*B+OR;V*IXS]
M[OW<]KWRIUS<EWN]3_(JGF(F[LF]HOBB^#UXN8.;C9>EY%*779U<P^*"Y-H%
M*9KB5+L=WU1=RC5=[5E,GTK=SZ<J?-U6=G8OT7]WF2S?</!]L1;B7BW)5KS7
MY([H7C:17^NN:^WU\\_;^J0[UKU?B,+C6JXW?JSC+UU>H$E7\SK6YIYJU&'T
MW4:GP[-&IZHZ9>WI\6DOQ1:RG.29<(5*5<GG\V^>I!EP?[0*(OHETJE'NH!9
MF(X&O>@TC4H?L5"X_YYVQV<K .F<6A?\2([C2L;@/,)[N,QY7^]'+BK=UOO@
MERG7>3 +N)4C$FM"E!M]Z\-9\T9HUR*T:S4Y+WKK+4WPN,L5?;[U:JNSO5NF
MD/ZC^Z<ZFFNHW4KYP>LP1EQ:Z.ZZ[/MRZW2UJF_K=$JS.@L9H@@1 X,23AHI
M%0Y*^D][&")UM?1K 1Y[H]'I8L:UKF7=G6Z9=CW^V-W?^8SV=][A@\-WZ,.7
MOW]T7O[GJ/,S?FYG[_O!RQ?'\;\_/W[9FJ90#XY??/EP^/'XXY=_XF>_HH\I
M57MXU/UPZ+J=GT=?]_$N^?#E ^O\W&.+:=</[SM'G>./QYWW\=J'_WSM[.S_
M.$C?A_?(P<N_?^9K?/E*]K_TPGZW3+F^A3_V=U+:=>^31@89QAQ@C!- @W)
M0:^B7 6/G%'4(;FQ27!;"I2Z2]?467H5F*XSO=OU-+]N 'EEZK?+/_[]!+SE
M(6R_AW;+L]>J?EWAR]5FJMH]@;*?BU#&#!3>"0HX51Y01#&05!K@G$)!&(0U
ML@G*KMV9TF!8@V'W&<.$41&L3,"2&6H9E)Y3ZJV3VGH.&;T.AMV'L9'W!.#0
M(L!9P2%FV ."H .4600,5A!0R3 ,T 2B]<8F4K"-KS\QH0&Y!N3N,\@ISST6
MC$J)*-6>::T"I%3":  8S:]EJ#4@MS:0(XL@IX1%SD=48T%30'4TX!1!(KJF
MWAD1Q=FQU+,@2)N(=?&)WQ>0>\0QJ2=7"TI!#G5JF$R,,]03) V'$GNB':8$
M6G+IH-0DJYMAH(Q0E5_8A*76A@)L$04H)%(QSJ/N\^C+154'AB,-K"%"X6CY
M*$<W-G%;,M9&?#DJ]<=#A8#&SGD,=L[Y:+=LZ/P>U"T;.BN0[A_=._6-N;/.
M^/M2XS@1D,6]\\ 9&UTYZQPP@C$0I-+:0&$Q"='>@;PMV'+O>(-S#<X]$IQ#
MU- 0C!3(TV@>!,.P)$@''YT"Z3TZ'^=&\3'C3XUG=\M0M]B.[BAS2$37#FIE
MHVOG(#"06J!XQ#]$E43<;&R*-J*D ;H&Z!X2T%T!YT*@C@8>N(*.&NNE3@Q
MP3L>G'?NTO9< V\W"V]+#>PR(AJW(DJP$0I$K-- 21. -$X)SKS*#>R8P38D
M]R9RM5;Z;EAO<.KX<:N;J\^O,Y&JLB4D/K@;G*;VU]\I9;S).5'-7:Z/V/5R
M=WE_8JU7.:RTUSKEC:&3U&DGF958>RF982@$^PL2EN53*^I@T0"2FD&: VMM
M!];9<J;%:"(("@Z0D,:V"BN!"D8 2J-/17$B;\8;FTJT,5D7F>OE-:4NO,[W
M Z2:NVP _W8 _YJL6PW@WQ[@+WLHR =J@[" 4,$ )8P #94'1)NXIXPZ!/6]
M0_RU#C>MN8>R7333=K_Y5GP$;\>M0<BT7J?]<2+ULD>Z__GWO)?[0 G^4*]Q
MS\;7K3^VKYB4D#CG K:4(V6<H](RYS%S./Z^B>W7Z&CI;%=]B?WXK_VDI8)(
MNQ3+YQK00 +0E'# TF\I(5325+751FJY,/7*H?T:1>^;:]3\&H\>6JDS-G@C
MA46"0D\-]49%&Y +BKPEL('6>D%KU6J/W[&'/EG(3=!0 .@=3-C*@*2. D:X
M@,(HXZVK%;8^IIQ!ZE'6?>N3(6X+3JU14I"6_JZ'+A/L^N.3WN#,^_/)D>[9
M\+";Z")G@7IM,1$F1.&VQD"#$+&8,AF-!PZOSN:=<:IH(=\Y'<:U>QT?8U".
M#<M_/M<C[Q(/D>^/=+K'E\-+QR":PM[+H=E2OSG%3&A#@;7$ NHE!Q)!!K -
MD"J+8(!R8Q-SVH;7;S:OWU2"1ZKRRV;)-?7]G'*'977/):P7:GMCGEQ%H9>Z
MKDG<&:2CTR>LB HMHP]HN$. >R:,E,9BZZ-"-ZI\OU3Y*BZ&"!Y*0PP5G%)M
MC20N:K(V$@HAG)67T.6+?(U&J6]:J9<ZC1%27$)& 99!IOYB"@R-?D>@<9LY
MM)JF2LUEI;Z\NU%C?6ZNT5SCT>']7:: ?QOE?S&*J4'_*T><BCPQ]C8>W X#
M& (%-$@)E.$,(!/]-0&=()C6=A33(TD%OST=#GW?^>$YD:<F"=Q<H\F8_"9]
M ".2J(!-$,9$EY9I+U4P6GFEF>9*W$HT\L5@&'QWW#!@KO&T>[M,-8 IHI0R
M!8BV%E#+TMQ!QX%3$D,NE5,Z^CH$MJ-U4X_\2J/Q:PY@7%/=UV'15I2]L5ZO
MHL_+'?4.DD!IU&"#5*))XP%("3'00<8]E(9P3%*5XP/5YKI<X]&C2@W\Y 95
M?A=5EFNG(0M<2PN"$!)03J.9('PT$Z#5D&+D':4U0I7'5(.191^8)/S)$YY*
M?\O_2#]?JYOSWD0EF\CF&HAQKY_(FD?L+??E=#3.4[0/!UMN,E\NC9;;ZY=#
MY;+TFD7D?N/_>]H=1>A^ZX??NM874/_&V\'G?KY*P\VT7LQ?P;?+A; 66PT\
M$QA090/0B.!X FAJ@G/)/8B0W\9RF9CIX:2WFVLTUV@.C5LT\YM#XQX=&BN2
M9]HC9PT'F*:V>DD"4"(X$ (TF$=1":*&I\:C2IV=YR]TLV^=:K9==^CM>##\
MO9KM>QO>N(<UVTUR9&UH=K9<KJTPM$QP!0+S,G&$(" A]<!KJ#4CC!.)-S;Y
M&KG8FY#J(PNIWJ5_?O6(:F,?70U1EIQJ:8W'F&D 2003&J(_;91B0"#'.0Z$
M&)BF=)'E.&J#)\TU'L<U'CO.UR!SUN#\%2W'Y809)R1BN@>($@(HC$ O&6=
M"\^HM\)ZKNL&](\I:[9=K1D=^I/3H3W23;*LN483!_[MNM%K'ER_FC]5Q$&V
M[']/N\.F+'1]Y]?!7%GH_H_]G^\^><,<Q3@ QY4"U&,"M%,.$$Q$X(9"S\C&
M9CSCVAA?AW>CQIF_1Z;1MV"'SFESMCXGRKP]&(WW_?AH<$FU;LS22ZEUM3HT
M?L<^^I1&'UL6")#*8T"%<$ I;0!3VGDF@U<XFZ5MA:\S5J[&:EV7:S3PTL#+
M?8>7SB*\8,40\L( F-AU:0058&#@@%"(B&:<:EDS>'E,F=\TX:/@R&UU^RVK
M1T>MT!M\;QUY]]F/VJV^SXRZ8_VC:9]LKM%<HXEE7_^4QT$*P2S&2/HTB-Y8
M'*A&2!@CI17\]]EQ#L9'?IB"UD-_Y/NC[C<_8]+?CMCV(D+;7PG97NIN/_UR
M*XS]\(VW/3T:=4-<RW3O6WUWJ'\T9L':S(+M%:,/C:,8*2B!")@":@D%*H44
M,':6,ZR%=39Q>/)KQ1)JG/)\]#"P!F._@8%[!@-+.3'#* L."4"83ZVI6@/C
M. :,&J&LM?%4H+6"@34EQ.KL$SS?>K75V=XMV6S^H_NG>GC60NU65$-T'<K>
MZTUNK1W872T30A$D'$K#/(JNK^)2$8LA0<P0CR4RB7;\4@F0(DU927\4:?PF
M^;'.,,9BD58\HR32- "-I074I!KV(!T@/ 04S17%#<]1#$116XH;&!9TL<;<
M<2CU9C6_;@!Y^9G-5W[\^PEX*X8L_!;:76YF<V-S707*EOF) ^(:*QFA#*8R
MI AJ)FX0D XQ:CD-6OL$9=>N7V\PK,&P^XQA4F!/B(#2XGBJ)P8D11DEB"#.
MO;?X.AC6.)5K [BE@GIL/1,N>* $EH!:I8&". !I5?0U,6,VJ.A3*M665#0@
MUX#<HP8YS"AE%EGNXW^1E) Q$PV$^#^)-;Z6H=: W-I ;FE6.=+I;$H9=4Y,
M!#FM@(8. L^9U]'(AD+A-#9&M>F*T-G#!KE'').Z8GFN@,(C'DT<SR(,4*FI
M,=A2ZE7@RE!XZ:#47*%-&:$JO[ )2]U$36Z) CC:,MI P*R)I@[V!D1'&P(,
M'3(81P37,/IR[0CL;0Z7C9TKU]?<%PAH[)S'8.=<:2;/;T'=+TH*"Z1K2&1N
MLDJY2!0*011,!<J(8!'M'<>!9#K^-1H[4G&LC#/1J:.HS=EU&"<;G&MP[E[C
MG#::<"V-AVERO%/&!FH40E1XI1!TY^-<,][X;J!NL30*&\.89!9@'O^(9Q4%
MVE@.7)!<!2@UYF%C4[8%;X#NU\_QF%'N'D'<50K'4" 6,4ZTX!0+(STWRE$2
MG1U*G=)-R*H>P+94[!4,=AI##R@+#%#!)=!:14,NV>&*$:]#RCPBU49R7?-1
M+Z<;3:O(Y5I%NKF.\CJM()7](/'!W>#4]/S2@7/71?S-7:ZOBOER=WE_0JQ7
M.*FBKVJ9BN<5LHXZCPQ"6F(6) Y8<ZQSB3.:E#BC7Q]940=GI<S-:;6NTRJ>
M4./.HAE.(.68JI1AL0+07")#*0&284*I#URGDC^$5AOBOT?9<WE=J4L;P_V
MJ>8N:P+Y#QOOE=<Z<&\UA(P*X;7UBBH/ W;>0RH;O*\/WL?G'Y=1YN\YG?;Y
MDQ>0Z\ 8,)Y$Q"=$ 1U]EBA56"$B+?:<WA[BWX:#XKJCDYX^2\_A+\:+YIW-
M.V_RG8^):# U[.B^]><,JDYT^_[XI#<X\_[WZ/97K,T]/VM75J]@F>IPK2)4
M1T-=!..D0]XRP[A3A(=?'+?KH=M_.;STT=Q4N5SF:-X;+R5_(4*<^  !0U !
M"JT""FH&E&6>(BB"3-1S"+,V8^LJ=JM1[N.1ZOP*YHCK*?PZ:)!+=6^,[:MI
M]&)P!5G&$'4.:,\"H)P)H*2T@$MFA31$>!)-@W4E 1I=KF&A@O%*$TFI]]30
M"/ R>LDR<"Z-4AI?*CAZ4<5"H]4WKM7+D[Z4IXZ8 "#G*)[300-C$09<<0Z-
M% 0KL4JK&Q;)YAH/_AH/$O#O,CCZVS!?]=5"]X=WX*<?#AKXOZI1MQQ!I=0Q
M&;<5$.NC66>%C69=]-N$1AXA234*\0 HF65J9-P]ICJ.MZ?#H>\[/SPG_-00
M?3;7:!CM?K.A3B,1?1@G@I:6:A-QSSCL97#00!8DO960Y(O!,/CNN.&$6N=Y
MMS\^6'1W9'1G-(,,8"(3M;5GP*19H-PA@J-9XTA@&YN4MSE;)E-I2"SOG\JO
MZ+:XGKZOPZB]HK8WUNWEM'V_;+6M6+<."<@I1X (I &5R@!-I +*^\1DJA7#
M4=]9FZT89/X@U+TNUWCTL%,#7[J!G1N"G>6R)$BD05("&)A/?!\(2&\@T-Q[
M+[AFPN!:P<YCJN7(R@%,TH[D3$_5H^5_I)^;Z9%->/36TF'SD+[EOIR.QL>^
M/QX=#OY_]MZUJ8TDVP+]*PKNQ(TY$4I/OA_=)XB@P>YAK@&WC4^'_<613Y M
M)$8/V_C7WYU5)2&0;(,14$!.QV#0HRHK,]?*O?;>N7,+>BZWP/9?V5[8'6S;
MT][$]JO9ZRY3^^OXWVEO#-S^)HX^]WRLUX+7T0^/!M552L&#-?/^7\NQM!0Y
MEYYY9!C!B&.JD'&>HT0H]9$(BWG*R:A=0G2+/*EMI)9RC<=[C:>^;*Q="91E
MXR$M&ROD0M)*2L$#K!0J(:[R$D*H1!0F"HG):,UQ"Q>.)Q6"^YYHZ%4*/">
MA]XH^LEP]&L)X _6"?( $\!+D&5]A/9V.?>;6,^TP!8%%7$N_*60]A3^=$+9
M%'#>3+VQR;N4W3CSNWA>GZ;G]3Y5^O4=K\5&NB:E+$EKR[$)S*1<5HOG$S 8
MLH9S%+P*V3QBS%9QVQL7AR^$4J[Q0*_QU(F^!1&V0O37M1V7Q; Q@4M)P%P,
M4B(N%$>&P@]NO&+$8\>5:QO5W_41DZ'W>7;MYA(H?SYCZGY@NM/[W MQ$,:=
MG7PFZP@4\3\[__@1> %+%8;6"V+Z@Z,7YVV<W7K6U*+XKH7:=Y.][8OF&5RO
M'__]^NS]W^'442[?GSP_.SCT')[QXQ[=8_M_[GUY]_&X#]? >SO[_8/#YRS?
M;^];2/N'?T&;WI*#G>??#@YWOWV@27D?:$2)@(3D@A%D M%@[QD'TP%>"'IC
MDSQ;<49&YS2..I7;X3R(#E!IL2^\7./..+/E^4%K+SPWI[L%"LQ':1=O_CJI
M<*D&711118X=,M@[,%J(0]HSC(RC6@;'I5%I8Y.)KN17.!_[(0.T7.,I!T3O
M-3>R<-^=F($K(IDA46:30D'Y@#@+$EE+!:)4<Y6BD5*%J[-?"X*8[2N[53[Y
M-#_YE*+MN7"Y/[:#H]CI#3H>F+N3^L,OG>,8CN*XVQG ^\/4F=BO9>MKN4:Y
M1HD>W/Q47<ZD<]H[001/H-0,3QK[0'W>%4JO7ZCL8'(<1SDX,(K'<3#N?8[G
M=8&S+?H"".W?F<_^M+U!?G$K3>+H=?9)CL>]!#V8F[PU"(?V:[%;UV>W'DVJ
M33LSN_7;ECC8^@#F*(M."^2YRAMVL$56:8^XC<I013!/-!_@)-CRAIW'$V%^
MZARP=AU:.*"]'/#V,@=@3%.,$J,H,@=XII&1@2'N1 PZ)HI=:A\'W'7H\1X0
M_,?6RZW][>=-#:+_V,'4CLXZI-L!$-*;5%N^P0ET#X?F5I\B[HTBWC*5".%1
M&^=2]%+"WXG'Z%EU(-M5LF\7'&QUQFV=+U$R;-=*5DO5E1V5/KO9%,N9$41H
MI V/B$1,L4U.Z6@W-AGK@NG2E<(\B)/9UN16OT70MXT8R[&3/SE _)=8[FK'
M3A9[ZWH4=CE.*DCB*8: 4C!YDX#UR 6E45+:8A.]JTX'9^S&I[84[BK<U9:'
MO@9W,>L-BT99KR37CCB'N<3>!",$ =S<A+N*D%P?L2UM57 L.B=]0EKDBMJ6
M8*0]T4AIGV.C(<1\%C@,79???/]3(;=";FUYZ.OLR?),.P4B)A+!E4N&)*)D
M\B1*(;$LY-86<ELZ!(0Z&A5W*$IM$7<1(ZM$1-B2Z)@"*T[JG-]!NX(_*<OM
MJ;J=KEELE^MD/*@RX9/DB@K#$G5&$)8B(P3'*_N=#D?1CJ>CLSJUJW9"-3<L
MGJ?U$<!2 5VGA$DD>619,HC'?/2FT&#L:*6Y"DXE(X  ND**+A7+U2JNG>/U
M(-!?3)O';=I<)YGUURANV;99P7"E&L\MQ &7:@;[Y 0AD8-Y8V4NXT:0B<H@
M;4&+ZRS?1-S8)%QU*5OVK!>"*P3WN F.\""D<EYA);B.6GN/O6=12H85(_+[
M!/>CP]^*>WUM*4TUC=G 7$S"HBRU$>?4(4L$150P:J1(EEBSL4GI\C[J0F&%
MPAX>A5V#P8*,PCN&K6>$"Z(-492%X"))AM#X P8K[J=[2])J#G20V'/C'3+)
M,\1S80AGC41*2V8TP]18M;')B>SJ%3N,VNB >FK[.GI5!N1-]FTLC >#!P_#
MJ>O'BP-RW^GVI8GK2#:^0A,?CJ?T&NL3#EQ(J@.3(O!$N*4A:H&I-%8+8525
MATQG><CTYPL5X.X\\;BL4>M;HSXMATB2%AJ&S"&:+$5<2XE<(A(ECC73FL:
M>;:[69?3&U?SO1Y0VK+/X &P4VEBX?C;W6OB0'IH;2*-EB<;@..QM<*IQ(A7
M0A>.;P_'K] AU!L>A$T(-*3+@?" K,8,"<8R[]O 0WA@+%\J(91//HA//J7#
MRO)V&COP\3LG?^=S!^+):7]X%N.OG3NPHF\>^%J[^I1GSAUS,7OX&)<"VR $
MQ5@XD31+6/QDN5W/N0-_CJZ\-)<$E2LLS1^?+V^-\C@8$EQ"CBB,N)0:Y2.?
MD51:QL0XEX;DLU1HE^EU[8MJ493CB6)^Q3'/-P/\.JI!-W OQO;U$'W9H6(X
M#TJ(@!B/544&@;1@OMJF+1P.FB0PM9>/:R]8;C66KY5R(*62&LMH&.7*Y&TQ
M4DBO9$A* 9=? <P_RCTHJ+YU5"]MDU'*\"24R .&<Z5 @JQDL$X3EQ*5U"<M
M5J'Z7HH$MK%J:+G&X[W&HR3\^W2._C+-+VJUU/L: _H61\-"_]<UZI8]J!C&
M-X2@$*&.(>X)+ #>:22=-EYY P8\V]ALBKZTR+A[2OD:;Z:C41R$./J.^ZE4
MWRS7*)7F?G$O' [!4TFPB1SSG!I@HE8^2AD,33KZ.W%)OAB.4NQ-2L6F=:YW
MN\O[YA03S"86$!%:(:XL1UI3B[ W#CM),0B@C4TAND0O[YN]NN8IQ27; OE5
M65TWPOLZC-IKHKU8MU=#^XI-9%QQ3F-RR!EK$3=6(..-0-PY&'GMI-$AGX$L
M<@7#QPCWMESCR=-."[1TH9U;HITE41V34BY)BJ1A"6B',60Q(X@P>,<JYEC$
MK:*=IY3+48$#N8R.+*;G\.C$K_GW7]L3\=!<F\4]>G/WZ!K"81<I?2M\G(XG
M)W$P&1\.MZ#G<@ML_Y7MA=W!MCWM36R_FKWN,K6_CO^=]L; [6_BZ'//QWHM
M>!W]\&A07:74+%@S[^\MQ]*"-]8S+1#&L3(Q';+":Q2QC<EHRCW-L33:U>(Q
MA\G+-<HURK)QATJ@+!L/:=E8=5RCM5C"#$ X10)R 4;>J(2193QYSSP/N9Q?
MZQ:.)Q6"^YYHZ%4*/"> A]XH^LEP]&L)X _6"?( $\!+D&5]A/;7<NZWY4Y@
M"H:O#SFE0&J#=#!YZVV*T@3+B0<ZDUV&18M.\&FCU[1X7ENHTJ_O>"TVTC4I
M94E:,PI&$5C(2%@,TMHXG>N=:H1A8+V%D;6*;FP*OEQ%JQ!*N<;3N,93)_H6
M1-@*T5_7=EP6PR8&2A--"'-#@>JI C$L$_+4&"M +S"%VT;U3RE\MK@5NMG]
M?#J*GWO#Z;A_UID=F0J2V(X[_9YUO7YO<O:S1-6GY1-L@S)^'<>34<]/8J@^
MMI7'9S].#E*3)3 M1?S7RG6+QT<^_P*?)6#4>DY"/KN#Y1V5RA-DL<7("YV4
MYS%ID\]>,UV*>8O<?FV,*92XQ ,3RNNCGV)J78U^]B_3CTO42YCJB!.&@7Z8
M14:ZB&(^<)W8?)Z(STE*,#\+^Y1K/-%K//55X4Y5=5D5[MPH/1?@7_?@/OM_
M?="<"R5Q0%@(A7@(!#D?&:(6I@+C1B5'V[<NK"D8?67E'7J?9]=N+H'RYS,
M[P?3.[W/O1 '(,=W(JCP$2CP?_[C1T 'W%52<+V IY?QWIP*E_$\;^+LUK.6
M%BUY+=@"9+<O!DC@>OWX[]=G[_\.IXYR>0"O[Q\>\;UO[]C[G:-O^SN?Q-[)
M+MZ#U]Y__.O;P9_/O[W_\_7QWK?7V0_W 886$RTY$I)RQ*T*R*CH4!2!!N8\
M)59N;-)G1"Y!OG,:1YW*HW&>N0[@:+&CO%SC"00.KK<E<,V%WN=$MT!^VW9\
M7&R7=9+@4LWW ,8)8]2B"', <<EBCA(K!#:)IR:?M>3LQJ:D7:V6>:QL]RO7
M*!3[8+8_%HJ]$SMS.3[K),918X5</HV3$VF1SH<0*Q-E$-$996F[2/8I16>W
M%ZL#C>+I=.2/;=G36*Y1W)\MJA!TX5#I.AZ_Y?\[[8U* :!UKE_OE@L X61X
M,$DARS$%B0 _-,8N;]E,TE%B@F0;FZ0+ZJ\KV7+8_5'4/7UBH+Z#&D 7 %V%
M,F9XWAZ.)WMQ<CPL53?6BNP5Q7Z2,HJ&ZJAE*1 //H#\9Q1AJ24CBH5H'6";
MJ:X0-S%-6XSLMESCR3/,VO5N89B[9Y@E[6NCI<IJDH]P)Z!]E41&^2R .865
M1"3#=,L8YBEMTLWG&H/<'1S%3F_0\79\W$G]X9?.<0Q'<=SM#.#]8>I,[-=2
M,;=<HURC.+9OG![%K'3&4AQYL-P:9K"F%%:':(,Q3EP_:?9@<AQ'>4_1*!['
MP;CW.9X?)YK]VR^ T/Z=^>Q/VQOD%[?2)(Y>Q]G&"U]M1-H:A$/[M=@#Z[,'
M/-@#>Y?M@6!8<,HR1))(B#NLD57!HZB]C,1KJZC=V.2XJW2;MBL5$FAYCF0A
M@?:2P)(HT"Q@$A-!,BJ*./8)69HHBI*')*PRT9H6DL":HF)MU@-_;+W<VM]^
MWAQ>LA-]/'%QU&&DV\DXO,ENQ.80Z/KIELZ!7C@B.@_/>-COA4=WF/K*6 E/
M&@P@9["QBAO#'(]&$IR $CD3@G_8O6*(9"&L7P=(ZI3Q$AZYG2V)L_ ((<%A
MKU%0G"!NF48NY=U!5"2;',=:YRV)^3AUTQ7BQGRV1C3=LPOVW@BC;:3[C_L8
M_&L,>ILH=-F4_#7^_,XNF^-A'_IN_/R_T][DK)AZUR7'R^FE#L,H)!Z1T<HB
M'J5'3@<@1Q*=3:8Z!C>3X[HV:Q=6+*Q86#&S8L+64869P=)S%15P8TA8 P%&
M+D%IWX05BSJ^C3WF#65&Y3EGW"'B143<)8>,8 XE[9T/SD=M\KXBJKN:%F.R
MT&:AS772ID\B"4%#%#%PXX)FPCE%+3%64VUO9$P6VEPC;5ZV-$E0/D@3D$D*
M9#CU8',Z"C\8-4X%2[D,&YN"L"XV-ZZA^WAHLSCPUI'MK&Q*2EA"? YJ:N,E
M8<Z"X:69<S)<V8-W(6.I<><U-RP^O/61QU**,PT,1\H-"C!5$9<>: 0L+>3!
M4@Z*N$1-+J#8A2'L8K5,']=.4WH$S%$,KF)PK26Q_)?(\R?9GC5WEJ-8;J'X
MS5(.N=?$8^<%TMR"8.7:(2<I_!FXIQ0["?\#P:I-EY%EP5JHLU!GH<Y?TJK2
MRZ0)@,RXR*.DQF(I)%?PJC%:Z:)5V\*92UEPWJD4B=-(N* 0%XHA@X-&/M*$
M38Q"!5HEP BYKHIAA3<+;Q;>K,N&)ZE9E%P3QA,.EC#0>-(%JF)B@A3>; MO
M+B4.4L,UYL$AR1S-!7CS*>%6H425T21J%_-YL=RP+C?F$1!GE7'XKXF%V\UJ
MQ"U445RXEH\PP4<-]#;_UXW^M7FQM-P5OK8VQ%:;GGX(65H=$!ACQ_I\-* =
MG$%/=0;#"5Q],LQPK3K23F+HI-[ #GS/]J%]\$)U:&?GNP_7W(%):,+I<%P=
MR?G;*/;MI/<Y_OZE%R;',\98^%8SN/C\*]9!"Z:3[W^E+;THZ*4:@@L_<W,K
MJDG66DD$I398'A-UC N30+?1%%1(_(,R&[,O'8_.JW0>1>1 5W]"-F=+_V;[
M7^S9>.-?%SKBI#>8M4C)9P(:?;G+?C@K']24W=U_<[CU\N7SG<X?;W=?[NSN
M_]EY]?I@Y^WVX9MN9W=_^UGKGV#[8/_-P<O=G:U#> AXF,/G>\_W#]]T#EYT
MMK?>_+OSXN7!WV]:_Q3_[ TZD^/A%*X1QI>+:%YN](D='<$<S10M+MIU\V>H
M&/:<#"I*AV?IV]-Q_&WVR^^A-S[MV[/?>H.J1=67?F^NWC!(OL$E1J_N5[_=
M(,/H9T;)#(XFF;RY<8.;9Q5N+BU/]7N2/^.:??=M_(Q\][T?7=9 >_0O7?7'
M[S'S_7L^D;;JJ[7G)UL+?AJ^(V+ILRMT3#W?[\9L_SF2J_7A7;2C<2<. JST
MB]L-+EAI-^V=!<UY57.MY=WVP\T8UWG<I]5GI/39M?L,7P>*ZRH:#QUWZT^L
M5I<#G-5 &'?2:'C2&9[&$8@'D"=917X&=1"_?RC;%3KBNS/CNC/L-C>Q/])&
MWM$&OKN8O-\OY]&K]KW>I'#*/?M K_BLUW:"ML&9><5GN\^=U*]&P]2;Y"W2
M#\.=>?!FYLZ$ZQ_N\GVZA]_O^"_O/O[U[?W'][UWW_;(WLE_^@>'1V3_SUV\
MM_/V;.[._/@7V:=_?=O?^4N\H_LG>Q__PN^^'8F]C[MG>SNY?:]/WN5K? S'
ME]V9^SMOV?N=["KM?WQ'WYWM[[S^>+#SZ0R^^P7>$^__?-_;/_E/;Y^^2/.-
M,6_PU\J5N;/[(7HJG;42D:@XXAQSY#BE2 2KO''!P=LYT3OO'-0M.C;FCH(Y
MA9#:]&S7(:1H;9+16XP%5RH?C6>XB3C1$"/F-2&1&2&10DCW1$C?+A-2<H01
MSA.2/E=E2)(A':5#AC@.A)1$<&ICDQ#=59(50BJ$]$ (23++%:RC)GK/J>#P
M5X#93/.V829PJ @)SP@)%T*Z)T(B2X0$[*.=MF <I7RL'F?(>4]0PBHYQI-/
M26QL&M6%L6T1'STB%\EJ[&V%C]/QI [$3H:=402X^5X_5M4B:_F97\]_514E
M3T?#?/)(Z+BSM;M3VN*,:/4UUGF<AVKSS-R)IS ;>U4MKXX=A(X]&4+3OM4O
M#%.>BC !)V?5F_&_T]YIGL8W*6O4IMU-#\"[L#A"6X.PM3 ^93%=UV(ZWU2^
MZ&Z@A(,@"X@2YQ'WP2#KM428Z6BP,D*RN+')83'5C]"X+XB^-7E>$'TWB%[2
MZYXRA8WEB(*R0=P1C%P4$26A,3:8&HDE()IUA:0%T8\7T6O7MP71=X/H)<%+
M/+'1*XYLB 8$;[1(&^:0$!YT+\['5.?BR*3+'J/@O:J\N%=<;ET2%.=ZMA_M
M.':J[D+#A*;PAQV/X^3[\O:!%8%^ .KB8#8:+_-@O,ZM.DAOQW$K#\3BT#W_
M>AH'XP>R.?A!T%EO67(H":N0C X9QQ)(CI0-%!]0HC@91:+CBF]L4MF5C+2H
MS/,3K_7^ "1'@?D]PGQ9AQ@<J2<4664DXBH%9(R42 OI*>=!*4]S(D.7BAOG
M,128MQ?F:]<A!>;W"/,E<0)C*7T@'CJ4:P2CJY&ATB-,E&7*$B<QK.9$=PF]
ML;NA?8<VM#_V<5F9] 83.SCJN?X/ FQ/WG>R=@6R. H':7<^!A5GE7R!]3'4
MBHQ*H6'PM'<(IYQ1J?)IMDEBQ*+2E%'LA>650_11YB\54-^:WBB@OC-0+ZD+
M(I4@3'-D5'6 K$W(R!@1%DJ[E%B4$M0%4UVLVN03+:!NN[HHH+XS4"\'.@@%
M4PLGY*D!4$LLD266(!MEPISX"+#--0.[@JVK6/,##'2T1TN$F.)H=%Z,97 $
MSS^>C*LTJA#=I!-Z8P]/_FNI5$_"/7++4N/%;&3RX?;CK4'8:4:D4-G:J.Q@
M>V60(QDM+-(Z2<0I#D!E(#I,PDI+S3P,\<8FZ1K2)J](<7X^+,U1T'TGZ%Y2
M'SP(@T/4,&C8(&ZE0U88AH"YM1&1\Y#RGJ@N$S<^PJR@N[WHOF7Q4=!])^A>
MDB&6$["X @ ;AA/Q%#ER,>:#"I576#K*4K5V,]:FM?O)1#1>Y7U#XPQ- $''
M@_[H33K](>CS$M&XTWH0]2B\&(YVAE,W2=/^EB_TM&9Z6K%E@U 79:# 1V!S
M(.Z80V!3"H2#Q99)L$,LWMCD74*+Y_,Q(_H6"BH41-\%HI?DA*.<P'\Y0NDE
MP#H%9*WER,)@@K7!1%1D8Y-VZ=J.]BR(;B&B;Z,B04'T72!Z24)$[8,CV"!L
MHT9<"HR,EKF&"L<J!()3,'F-YGQ=9YP_P$#&O>+R[U%O$M$PI3J0X2:=WG@\
M!;T=ZQA&B5C<F92HAN(@I8.TTP24=F \=IOAR,Z/BV25>E]C0-_B:%AXZCJU
M5 ZW9@=GG)]Q*3%/@F.-5*XTQTF.6-#$$2&1!TVTY@Z(ZO_]?S2,X^\M\G84
M7V;;Y<1U45U,D!M"^_+9UR8&'8,E.009$*?2(,MT0$);+0A-\*K,;DPE;ZPJ
M"K#;"^RUJXJR7-\9IO<O+]=!>1J3E8BRE #3U""GG42*D<@,)OG@QS8NUT\F
M./&G[0TZ ,@QS/-26>H7#GY>N[K((Y*+,AX,=GKCV4%>!ZGD<ZZ;KIXOJPO/
M8<9Z8E&TE"&N\Z9OY0R21-' F:*<LFR"<+(<JKCV$=#%I]E*/*];5Q0\WQV>
M+TN**!/#5"B$0ZZ_*H)$1L)O1AH2HC*4\2KO2?/E\XD+GA\%GM<N)WZ"YP+9
M:T%V23%PK[2S/""'%4;9M$(&EEV46 HB4>N\BQN;2LMV /;)[*78'PZJ*LCC
M?%QT)Q]W&P?C*O&O1![N3!N\.;:C^(<=Q["], #%B%@?(^TNBP(>G0D2.^2C
M!U$@B$0ZP \JL8E2$Y%T3J]D74V62:DX)A\/FM>M# J:[P#-ER5!EO+ Q H%
M["GB.#)0 PEF,E92@/[GSM(*S4JT*5NZH+GM88:"YMM'\Y):P)J&E+1"3@M
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
M6(+Y;%5K/)B#G@62G)2JKK7:52OR 5K&@97*_]?$NGZ<;1Y:V%+<H("19P*
M<CJL=Y+]-HI]F[<=_?ZE%R;'LT#ZPO?J>_R&S[]B'31\.OG^5Q::[2/@:73W
M6*>Y38)=VDJU\/-X=+[7^B@B-XKV$[()&ON;[7^Q9^.-?UUXII/>8'9Q):LN
MO.[3;_ZO&\$U+[3H]KYVUWV]N__F<.OER^<[G3_>[K[<V=W_L_/J]<'.V^W#
M-]W.[O[VL]8_P?;!_IN#E[L[6X?P$/ PA\_WGN\?OND<O.AL;[WY=^?%RX._
MWW3^N0T7Z@VF,?Q/ZY_HG[U!9W(\G,(UPOA_5F%A<8+;T1',\<Q-XJ+E,G^&
MBEK.>:'B,GB6OCT=Q]]FO_P>>N/3OCW[K3>H6E1]Z??FZ@V9Y!M<=AGF^]5O
M-\@R^IE1,H.K\5PV-VYP]ZS"W27FK=^3_!G7[+MOXV?DN^_]Z+(&VJ-_Z:H_
M?H^9[]_SB;157ZT]/_%C_S0R1<329U=8ZO5\;Y75^B[:T;@3!_GXX9WHXXF+
MHPXCW0L&R$U[9T$W7=5.:7FW9?_L54X<^^GC/JT^(Z7/KMUG^#I0O&K K0UQ
MMJN=]9=Z SOP:SCK[SJG,?[2$7A739%^NHW\R>2=V7>@A../V_20/_ED\G$O
M[@FLSC/I#Z$9_]P?3F)'WRA?X;$Y0E<]8KO=G6W9UK@['D]A@8@':2^&WO0D
M%WO/$ZP<X+ >U^;><I";"D6LC3IO?&"(TQ"1L3!X3D1+G""!:_V(#W H//58
M>>HV-V=>D:=*'.:&9+54^)DXC!TQ".9M1-R*B"SC& 5"M B*$:K)QJ; ^'&>
M(U7(ZI&2U:WN,RU&U6WSU%*\F!,%@^0BPDIYQ WER 7C\UX/G6*0/&C61J/J
MZ92X:79*= "7/Q>SCWQ#_+WN.WT=3YNQ*,;4+9+47RN4G_0T$AQ0="PAKDU"
MQE./?!1*@OF,F1=@3*TTI<HA&H\#S>L6207-=X7FI8,X8Z(V#Y3'&*21=!II
M90(RED9F*;4N2R/Z'6E4\-Q:/-^GC+@RG(MX^&4D+XD'R97 6"842*"(,Q60
M=M@@++T!\TL+J>7:Q$.I37/36-CG>-SS_7BQ+&9GD#'2 ?3DO+8G5L>F+=&D
MBJ=>U4-0K(_U<=;;92W!,*/ 5!I9$1CB1GMDHN1("\&EY$QZG38V&>X:_@C]
ML@7/=Q)U*7B^-3PO[?ICRFOK"0*+PR!N(\[5N0VR07LIO<.4A[SKKZO9C0M@
M%CRW%\^W&I@H>+XM/"\')+CU/F"-A,.Y8G5BR$@<$$M)*0_+=<*YGASI4M.F
M]?G)Q"-VHIMT>DV@#AYU//E^7NSC='.THOCE0<H#,0N8;N=A*-QS+>YYMZP-
MDHHJ<5 $A!)=:P.=.$>8)$EBP#%F;2#%3:I@%:]DF^%Z6Y4L5\*UV!%KQ/)E
M7: UQR)+?!Q-W@BO$B@$X1%VRA&P!QG\M[&INH*6&,,C1?.M5:TLB^_- ;MD
M^ M-5!(L^^2<1)RXB+1.%CGI6,!"!T*K&F8W*2-=8@B_$D/H#7SOU/8[IPNI
M2/WAX A5^4@!H/#$P@:M24.JZN6^A*'(P<[,2<6H6!]'K3C,EQD@(J\=4BX"
M45D+])1\0#I2AB/#V;*H@@=$L794RBU^QM9KA +HNP/T4BZ2<SK"^*&4"P=R
M(0PR7L*,IM82*Q,)0FUL4MEEF!1 /TY WVHN4@'TK0)Z12E[RED0 7%)/.(A
MJ!P^H,@(BXU2B=+LP@- 2_TP:MFWKY) *ZH3/-3PR6HU55<;B9U^M./8&3IH
MI,TSLH16[E!8O:@'X64>@_DPS5P^A;;71]LK3A$SR1@I@T6*.HZX21X9$S02
M25&EG7$L%["G8(;=Y(RAXJUM,Y[7K:L*GN\.STM965@'8:1%&&@9\:0=<H)&
MY .SF-N4@L,9SX266.HCQ?/:957!\YWA>3DK2P1!2 I(\I@0IT8B32)!F!I-
MJ.=.,E>=,LYH._#\9,(S6_Z_TUY=R!Q5M<]CN+& >!I^GUO,S=J+HZ,X>ET/
M1Q4??C&K)UE.0E@_9>WOK#@3BP5&DJ<)62($F""8(AL%1T%QFH3$.F&_L4E(
MEXB;9( 4UVZ;(7Y[^5P%XG</\<LJPQ-%22 4I41BSM=4R"6C$.;Y0#P5@F1I
M8U-W#=$%X8\3X;>8XU40?N<(7]8=%$<?/45"YS)ZG&IDG&5(P9A'JX5TV8\@
MNU2W)-_BR00R=GKYI*]!R%O'>Z'$*>YE"\AL# H+K8^%GB]+"6V-8REBT [4
M(!Z]0": GM X4.R8#()E%J)=J6Z2)5+<F6V&\2UN#2DPOA487Y8+T1 G'*>Y
M8CA&7#F,;& >>:ZLQ%QA(LW&)A-=NHZS$0N,G\0N\9^AN-2;^F4 +ZD!GS0,
MC11(1>(0]RP!@!-'(C$33)+:R/45JRW!B.LC\74\G8[\<97$E.!13TZ&N0U#
M_ZG$(>Y>(+P8CLX'Y"!M5\/Q)H]&,336QU.[*_0"C&8RD2$F" 6]0 FRGA&D
M&0TF@ F93-[*QE17B)OD,Q7/9'LMC5O3"U=%=3$\?AW02X&&A#55V(+BY[E*
M/L=(&ZJ03H$GSAC,Y,=\]- C1W4KX@UEL;X;;"^)"L8(#*(,2!"G8+$. 3DC
M,2(\.I)=!BH7L66L:^A-O (EQG!]8+Z9CD;YC.C19371L5_L*(P[[JP33T[[
MP[/X@]-9'Z?3XUX41L^=_C8?E LDM54-R!]GSV?#45AK?:RUXC!$$ Y$AV00
M#;F,K=6Y6@8W0%V1*L9AI@>[L<F[@K8D(;.X,EL;D2BHOB]47]89+EBA#6/(
M<I+3K(-!5EJ+I$_!2U ;PM-\T(W091O4(T7UV@3&M5!=@'LMX*XZ"<,JSD _
M8)5/PG 8.>\H$DX2>$=09<S&IKE159B6!B2(:;.$J'TO^W'2\79\W/GG=!Q#
MIS?XG\[I:)CC=2%KB#3+Z^O8>6+?30(6;C@"S"%XZM]R+XV'_5[HS)[UD?/7
M&K3&&!X8?KOL*8%!W(8Q?-4,W!]G;V$L=P<E*?-6R6[%<7S)6.T\D0@' 8S'
M8D":,(H2T),RF'-N<]$<RKK8K"$M\\IH>D!>TL?&$/<9&"F\<$^\L!0E<2Q2
M8S#2U H$"L:">L$*6<*U\LDY(C7P J? "^NJW5_(H?WD<,?RIY@/K:*)Y8"+
M5\2#J8 2=[G*?CZLQP>%) >9I)@R,9*-36ZZ3*XAX'+K!+&F:$Q[)50EGH[M
MX"B"<*IE5#Y!L/HE'R/X&> PN-DI($^9\6Y/,&6ZR_]_?CY(K^-X,NKYO*$-
MWM@:A(LO+'SR%3SY$/C1CW*]C9U8_PM_]Z=Y-)Y_K:?$:SN)SU.*OA0V7"-K
MKCBW,#D2M<,>.2ES>72>D..2@X4EO?&2&1WYQB;!K*O%37:[7A>1#\AS_-A8
MYCY%5^&6!\PM2\(M))L$8<AX'1%W/H*$XP8)2G0(,%$4CIE;2-?(Y7I=OY97
M7PCF41',VO/B"L$\7()9DGPN!D.D%B@RF "<6XG OO7(&\<X$]Y&;#<V!>M*
MMKR!MJ7\LJ886GMUW_;WE%['3CHN'O4&@QPR&Z;.:06W)[;%YQKD&&04WC&<
M-X%P0;0ABK(07"3)$!KEA]T[,+H*Q:V/XE:>'0F2/9M/P:J N$X"Z6@5"CR(
M$ )73/*<1LRZ?$7E^;)%X-& 79+$/!%@$"G)J7(Z2F<"9]1:SH.Q%=AOVP J
M8%\KV"\+)BD!Z<#D2 4J$;?&(9L(14%*P1@-+&&VL0E#O/)XR0+V1P/VE'C@
M229I<,BZ6=OLO$TQR!1B""R#G9@"]@<$]B7Q L8:Y8)C) WUB"<3D=6"(A8Y
M%S9H2UPN)*I45VO3(K _^L#4#P5*A->_*TU^63S^G,Y6==&]LMD_;NGA'PV'
M6R!PS:+DFC"><+"$*>*D"U3%Q 2I#+8KE%TH'-X2#E]Q<*?30AF;=W5B31$/
M*2 ;E$9*.L6- D'N34Y9-%U)EP\87K,'JDWN[<*$A0F+G^H1,^%EZ4HHCSS2
MA!C5)#-A1#I1@3P.2@CIO!)D;7ZJPH2%"=OSU,6)]Y29<$G71PX+')$YZ\%:
MQ(W5R!'A4*+:Y Q5IRE>FQ/O3ICP$84DU7<*@IR>]F.NEV/[G= ;^_YP/!W!
M]7-]D.P$2/WAETYO4.,&ANF[,<DK],K"6#$8D#"<NGZ\.%C?=8RNP[GZ-)OX
M9(K;S/>DYOKYG3 =Y6#ZY#@V+JO,_;_]TO2]:D)3N<::-T*S-D^W7;!N@"DG
M-_%$/S;C=M4C/AH3=NUE96<SZ!7P%9!7L4[79IT>KCB^3A!G<6(6,=#HB!,;
M$0@0C&1@WCC*:3)Q8Y/C+E7+Z?X//L)<6.FQLM*Z-R(45KI-5KKL/12,VN2$
M0I3%O,5;2V2E5\BXX(6U/%KE03.+KE'+%:H**Q56:B<KK7WW0F&E6V2E)4\>
M%@$GQQARB2M@I9B0,9F:4HQ:!,NHI,!*LLM6E/!]\ DZ#T)\^N%)[$SLUSCN
M=@9QDAUVHYC@V9Y:W=[[57!Y& [S*!1B6CLQK3@X4&A%!8U9M6D@IL0P<HQ'
M1*E.E*C$#>,;F])T\<W-I5+5L\5(7K_J*4B^520O9?Q30XQP!$5'(^*!4Z13
M!.%CHV=6^Y"PV-ADIDOYNG8P%B2W$,FWH!0*DF\3R<MA?T?S( 8 <2"(.RJ0
MTT;#PDR9-9X!M!,@6<&:O%PZ_\&?(=@&C7"MV'Y6"C "==FIGU?GO:.H]J._
MQAV'X>^5_E_GW]$PH>DX=NQX'"?CSM!-+'PPUXKNQ*9<1.;ESO TCNPDQ^K[
ML3KGTL$#5+DF2Y/RQBMEZWKJVGF#C]-=N'9A7LW @_1V'+?R]#MH)M_N8%:I
MY,5P=#";>"_SO'O9LZ[7[TW.BK6P/FMAY3D[3LLD/)+1@+5@/$9:Q82\E]YP
MS206V>ZG7:G6M6^D179_8;#'RF#K=D@4!FL+@UWV7% AHN<Y.*(M19PKAHP,
M$GG!!>'."<\S@^DNUC<.CA0&*PSV4!TQA<%:PF#+!<.UX!&("J4@(N)6">2L
M]2@Q&4,2,F]8K,*[,-PM8K!UYA:W7D+'1@TG$,PAG@QZ"9I681A>LOZ_T]ZX
ME_]$H]BW$]#5(;JE7.0KN9F?1%V9M9[8NE^[S\X/.&A&ZR#M7ARK@[1U/E*O
MZX':@7$J%'8M"EMU9%*BQ.;S68-/#/%(+!AA..3CIHU+Q$NF^<:FT:58U&,&
M]3H/;%T#J(O1LD;$7Y9=D42BC.*("6UR3AI!U@6%(L><Y)W$P>;=I5W,'F&B
M;,'\K1SGNF;,I][7&-"W.!H6N%\3[DL:A:K(C"4):1%U7N UTBSD'X:*X+AW
MSN;32#78:K^W"/ _$2FA-S[MV[/<V/ACCGC(GWPR>XY?C7+X<G)65<W+!?-.
M<[S]^\'.^F#<^/-09TD0NA7E5A].%RMOT\%Y[^\.?#[8.Q03;GV<OJJD-P55
M9I-#PO)\4)V02!,J$ G:F>0)\#K=V)0EY>^1(WJ=LJT@^BX1O93%&U44!F,$
MM)Q/KG88&<<<"IHF3*62G(<LRA1;5^FS@N@6(GJMHJP@^@X1O:R[G-"&AH"8
MEP)Q&05R*7+D*>5.:B88QQN;I MSKT6(ON/0T/T)CC>QWX^C1>50G2$[' QB
MC=(OO<GQ8GPHAXO<= P7&H]_D.;[Y/U*:T]!_*/I].WAB0-&R_??AN'JA2KB
M/1P<CN#!4LR4-HM[]V)AN5M@N17EJY..@D0<D&(^( [: Y2(I0@S0SDFR@J)
MJPBX>8S%8 KJ;RUMKZ"^1:A?"B%I0H++>X:IHXB[I)'FQ /JB7<F$!92+EIO
MND2VZ=R1@OJVRI6"^O:A?DG16*6QQ"!ADC02<1P2*!IGD8Q2<,V%L2*!HN%=
MK-L4.7XR,92W@ZI@Z^ETY(]!\E>UAT]7QU5ZU8'#=5S%>@]//QEW3NV9=?U8
M(BAW)FVV[6EO8OO/OY[&0>A-<L'H&9?],9WL#R?O8E6HJ7#7M;CK:%FG@#P!
M\I($@2 AB%,&W,6#1TE8S9-QT5"UL6F*=_51XW?=(J7@][;PNZ0X&$_.!8>X
M]/##.H.TXA$1114%# <L<M'9$N]\S/A=N]RX.GZ+L%@?N)>$A>.2&T%=KBC-
M8'&.&KFH&>B,1%.47GMOJU )82V"=Z4K_C7))C/\&WJ?-_\7?LQN?6)'1[U!
M=;J$N A!'W,)SKM'&ZW#'K$R^$_@WF>Y5L1@.(&K3X89:=6A+]4>F#J]JF?[
MT#YXX:0ZNW3>R9>?M;D#(\_RHYX.ZX#);]6&FM[G^/N77I@<S^"^\+VZ/W_#
MYU^Q#MHPG7S_*VWI1\$O]L;BS]S<B@B2M58202E(!1X3=0Q$<B(>TQ142/R#
MIANS+QV/9H]P:H\B<J-H/R&;X E_L_TO]FR\\:^+\PLF5],BF2ML7NZPNELV
M_]>-X'O?&[B63M+=_3>'6R]?/M_I_/%V]^7.[OZ?G5>O#W;>;A^^Z79V][>?
M?7\JMN41]@\.G[_I'!YTM@_VWQR\W-W9.H3'>;&[O[6_O;OUL@,/>/A\[_G^
MX9M5\V@^?FMK-K]2JU?TZQ4GLMBXO;;_O$S3O,L[I%-E,I/?.XU=L3\]@<OY
M-0CYBZ;#P>C(#GK?YB[*FCKACZU!> 5V1*X652>\OYAQZ9LYE>[,BT@=0IO^
MZ _]I_NU'?C^S';X^'_]/?J.'_SYG+S[^^V7@\/7)P=PG;V___JZ1__OY/W.
M?X[WZ/ZG]SM_],$.Z,=_OSY[_W<X=93+_;_?@IUQQ-\=_M_Q^\,ML?_G.P%M
M_OI^Y_FW]W^__[1W\OS;._KZT]Z?_Y?V#C_1_:T/0F!LF*<H@=F&N),<:4L,
M$M1HH@R)4JG:".P-IC%L90O,69[?<Y@&PHUT-C"*HZ=!!.>5LAN=" ;9:2:#
MT11$P<'K/[?V=]]O'>X>[,_,AV967&)&>*^Y5;U!M!J1G][N>XRJ*BO^7OAS
M *MVOP_K^!_37C\;.IU7HV&8>EC$_YGQ0?'ONW^\JGXCO_]/MV,[.[!6?[&C
M"'T].AW6SO;*Z(6+P&\'?C)T<=2ANML!7)!NY4_LP?6^' _[_3,T_)*SM,=3
M-^Z%GAWUX&'^"8_;S\D4GV/_+-=4KMSVV=2PX^HXJ:8EV[4QTFV:4UVY>>M+
MG+_:O#(=K_C8<#J:/4OG= 0V^0CZM-.K>R'_.^U7#]3M? $$CDY'PR$8.$==
M,'-&$8UAL$[G?YZ_>61'L!)WPG X&G<[(]L;=(ZF$_@^_/6E-PC#+QT'?1_@
MS_'Q\ OT3O/1#.TX@1=C_W/N^]S2D]YH!&]6OP_AX4?9,UN/2$YG!\+H!6"&
M;'%5Y\8/3V""5@:8RT,(-^T 2U2V&;0C]UX]4^NB=&]!,\$[%<&,GW4.X>VF
M5YNJ8+'*;AF"/=OYKMZJK@^OK.40\MW]%Q?V!TU/8/H<I)?-/4!F-14+\OT:
M_82?& ?N'V[Q#\Y1%P3-=>&9!NW#2=8^ CGE24P$,R%M/NMQ.4FL,QNP\1R,
M,_#F[>ZIYV.G=V':;(-M?>*F,$4/CGO#9U<Q"^^3Q*II#I@<3SK_G=K1)*=K
MI4Z>;0# ")BI[+Q,4-/%ZG?C>%3K%6 :8)U,0?!OM@8[]0:2&@OPG5DZU[/.
MW[%S;#_'[X.CN>AZ P(+()F9%3.@S.MYO&F>YH(+ OK49S?$E^$H@*7Q=!&T
MLR<.=K;P_L>W7_</WYT=;'T(T-TZLH28SOO9L0K(BES8W"69)"4Q"+^Q.3D>
MQ;B,J!63*,OBWKAZ#29?GC7-ZMJL*'MV,$WP_?J4Q Q$,.XFHYZ;UDF#,Y:#
M29:U]S[([4Y>/W?/CP+-"^QLF+OU[J;IJ%HC%LX+O1):S;VA-2\YGRT@]<1^
M'(YZD[-9;XUA8HX[\-)1CN<#GD?#D^J-UD#M=03.K-PX!6L_M-C?X8/#7;K_
M[2_ V][9_I</7%KFHPXH@BF,N!4>V90T\HD%Y3DGU."-S>%@!=)&\TZ?0:U[
M 5B %K E)[8RB<"8RX;<"OS-OMQ,LVS @JT$%F>H)UI>06!&?X:U$#D[KI;!
MA6_#%3^#L3B<CL_-L<:\6K3(!H"1S .@)WR->FB^[8TJN(_BR3#$);-M\?.=
MF"U ._J4Z[?. 5"GMU27G\#D^E0E&(] *AZ?K^S/.L\M_-T\^86VUQ^%ASYN
MS&G0/-9GY,&ZEY\Y+G;:0@L6B(AU.Z_CYPC2"O[UPZ-!KWZ\S$&]BP25+S*J
M/SONN+-9?]5Y!?.+7V*I?UU25-=R*>B-'Y,=T7? =C]P-="[<C6\ 2NGVD _
MF&S5N1JPU+P:]GL>9%9;' @'V[/@PQ[=^SL'"EY_.MCY1/<^_L7?G>SW]@Z?
MG^U_?"?>5X&%_>-WA_U/E^GHW;=W7]_G0,&??_&#PQQ(..Z]H[M?]S+M?.R?
MY,#"'GUQ?/#WZ[3WT9_M?=S[(+0(FG&*DK$1<2T%,D13A(F7VGDJG$F7/0@F
M@7*1./&D,8_*.BL$D!6W)L$%/+WL07BS^^?^[HO=[:W]P\[6]O;!V_W#RB=Y
M\')W>_?YFU]P*OR\!1=;3(*5@!&I,8BP0,#@B-(90I65,)WR:?#? PF])Y.@
M=B;# MPX$WZ;#H"9\Z<V-O^P8%)E9EITE%5,\@JL*-\[[=?)2Q?\:NVV?VZ9
M JH>R[4S+L#_K/[YM"G ?Z!6<9Y 0@=N+>+2860Q]@A[XX/BVAGN+D,:!-]I
M7L1S&7]8V7X>_&H2Y4:A*CO0; Z:C4;V.LWF[5$<@,E?V2S>Q],%C\T%+TV>
MWUO59+%SG]S;9V^>=?[<VII[YIY=II;;7FHN(*[,KKW#HP]1@(U+04%B*3#,
M+A:03HZA:)7D.$JI:;H\N[(:NA!EO<K\JC(R%VVV[[I6GW6V*K_F!&S-QLTW
M3^+,+#K)6=*UI3VN_1HN1K!"^[V32H2%I7EU%7)MY5("9FO?CL?S^D+C)[U,
MP/(Y'+V"2P_#Y8[9"A^GXTF>:SLP5T>]T]KU^K0@/9>P\#QPS?VC#TJ 4#6,
M(46<1MQ[AG2D&C$I$]8QR&17HKLI10/,OJQDQZ!!<Q>[FOIKET^WLQ@QK&#Z
M<U_0*&=L@XW4\7&4"^'D=0:DV5FTHX6#:,;SNZS6<^<W4]W.G\-A^-+KUWIU
M%VROP5'/]>L4$)=EK\]>G#H?)+<J_UJIRYP5!4*[NO?I@MU6.4_C5P!3SB?/
M'UU\=\9E-@#U9,=8E1&RX&B+.?=J7-]_G!=DX*?^V>P:U7>/X,G'N6,6=^-"
M,P;#Z;E>WUYDV/-(:[[_/-)0/7,.C(SB,=PT-Z0Y_[.Z"-BD+_(3$XS^O^65
M]S"_7SWG.%\*VC?M+RSNEQ_Z']?(:\-@]ZMH,)<<%(&(.C@F))/4<((3^VE>
MJKC:-IK<W]#$"QMJMD:C/)&KOMJNYO3N8.LD+R4'Z3M?F1>7)E=+BY-/FV7X
MP=8'@I75A$DDJ/2("Q:1B\H@&%W*&!"_CFYCDSS[7B4 6(GZL_E[G8EEG/?>
MPN*?(N;>2N,E<XIIPI4SRK"?)4R6B=7BB<7VMSXHKY5."L-ZA3GB06)D0 TA
M[*@-T1 9<_00/_O>>7&SB06$]6.6S1[!3'.9_L?9X0?,MQ-]S"[T#B,Y*X"2
M:G[FB917KO'I+/9?)PO8')W,+P\'548"&+RCJGA;5E8_71ULCL2<9+T69BO2
MG*OGC0,._EPY<R=?AG5+KQ0U::5A^[:N6?Y\/($Y/XE/VZY]FRN)SKOBJ<$^
M"]$=_X%*9261 A%)3,Z58LC:*)$VAEN:-"PD\;*I^FI4FU0-QIN\D9^[.AKC
M+T<3*E?'W#-Q;I+"G+$UOV= GMA/8 7.1JC;^3@-#?G7X!^/IR>GM2"='-M)
MQZ:4X_)UI"4;T- 8>U)+V/,$EY\TM+KR4C+SLQR3G37-@>@%B[B.D"PX;.9-
MK6)&]C3ODQSU<H"RCNG8\7  -OT9K(:@LD]R#<K?.SG+YW,<=3L!#.R&A7J#
MXU@9QM-!8Z3G'<GY&:!+\IW@0^,+79.#Q3G-IWE::%(_@#4/'3*J@T/CJ3\^
M_\+CT>K;U4F9V03/OSR'>?09UG'H@W8GHMRVRRW731Z$_,]"EQ3?V][A7V W
M"T-\PB#,,^4Q*Y&%[D3*>>JU9ECSI73/OVOFR%9EY4P[AJ'LGZ%^#SHWJS4@
M@TE-'[.-TJ'FN"9'H=_)@*\Y+6=UU*D,5<)(YP3&_CAG,W1 ,<\D<W4 ;#P?
MNF7IN!S*KKX#>O(X]BL%Z>S@4Q6#_MRKC*,7.[O;\!A -CD%\9IR\M<R]A!?
M-3-S0W8'V<L0:NN]F.:K3?/G7_>^?(A2:0ET@"2C >:K2 B4O('NX0(6;!Q
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
MV^>2S!=%XD&BY*/,_*P6:2T=PCYQ0Y,+4?MG+[C9TY?7W-^65\UZXP+CVKJ
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
MUA6RMZVD7;^OSN+)O'B/*^-:4T'84M+F^^=6NYE%X\E4LO^[*=S?;6FX9^=
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
M^>QH;H\;2M25G)$2KY]UK5F7!?>3Q4K'B=%[V$Z@L4O-=P:2S35KI[62^M+
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
M\MK+*];^MNW<OS)=<%C_.UI_<?#R$.0N4>X-PDEEJBM-D&/,H!"TAN5A7B6
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
MG];$7GJ6K3V!DLA](KDW.</6HF12Q$Z90!2(O;FKW+?[E/>'1Y-WI&P& #8
ML/4:)="B,6;V%1MY5-$JSR-8W=8'G")E0SSNL6GB@PT IHB5G <D8*41C]0C
M8RU%@F&65$K1Z)RL,S:<C 6_J[S& 8 ]-0!&*%<\DB0E39PFYV+(23XQ!1F3
M3=>%[@< =K]BOP[ $J4A8,$0A15#7*> ;. *!:MHTL)ZE@0 ,/,(Y'T 8 ,
M>ZH +-# B=?P@VD>8[3)Q,BIU%PXJM5 B??H-/';=0!&O.=*QX TCC*7@H$I
MK+2#WYST)BB#4\H 3#(Y9O*K&7,' /9$ 9BE8)T!ZB)4,1XYP'E"7/3P,V#,
MZ%!']K >L";7 43_HN0['!TR%V U/$,1U@G$W5!DL$PH2BVXU3)XI@<(MHMU
M9F'RYT,6F[4/?J<CD'OB!D/X[G2VF.1-^'P><QCWS_A=WE"(E6^O;P^[B/D"
MSU[\C?R]6ZTR>=]ZSLNVO@C<\60(+BV3-#$J"!Z"I#X1;:@<8IV/2^6_[L<Z
M/QU\\.Q06\8<)Q0%G0D"A=& ])A!DCDL# G>YI:01,@Q0/O=2)49\MON":TQ
M8HS@3(&\,YZ(=4P33 V1.>$MV:$N[F%%=^DN^[C_>?_C(1,B6H;!--,$C#1#
M(G+*>,1X$*"J69+92S[DMPT:XYXRH2P6A 7EE4]<Y79[.(GH/ N!,JG,$(A[
M;"KF8!T=,$Z]$& )4A43J)@D0=EDPQ"[F+@,41/W[ 558S@R=D//#*)^7X5Q
MCD0LC1:)>FY4-#$X":<,53QJ+,,02WM0R5T'!YS%Z%R,@.M#0)P2@RP1#FD2
M)-AP.@K- -?OAM .X."1:XPM5?-22*^Y%=H1@ ;8@=Z(U!&1=&):BR%(]-A4
MS-MU<$!L<LXZB^ ,R(V3J 7[(\)O2I*$O</6:U Q<JSE5^=,#N!@5T1]*SA(
MT29O2;(.1UA^[8+A7%(>'!8^F3#$>1[4<]"/\[S;_[1_<2A -5.M&?(N$8 '
MFB(#6!^!MA8\>5@W*P9X\&W7QHU'=@&_G\[F9S%\862OKN%S!L\>9N=N&DMT
M[_*XWS>4,O1U4[/;TG,;"@7 AT)K$VFT/-E@:<#6"J<2(UX)/<28'M=Q\V8]
MQO3I, A-HN$:&:\HX@ ;X; )#L$BJ\@S', VU]-):<::WW%]S5>)V5-(-'KZ
MZ--&CGG.,^(I<&ZH#IC(Q(RA7%F9KE,A _J\7W6P[IJRV' 30T"&2@UVHTA@
M-V9>!LN(I*#WC:294@7?=Y+1X\>E?VV2]P#F!C!W#9B+I4N MQ@+#H>[S?39
M)N)$0XR8ZR$D^-BT]\$ZF$LLB)3;B@JF<]8!-\A2(F ]D_5$$LJ3++5Y4H^E
MN&,=/H"Y)P_FF+21!:DIPXYK#RH$._@14@K16$F&...#JH-U,"=AOS(7(L(R
M@#H(V""# T4T66N)9A(S-X"Y <P-8&XWYN068$XRRQ6ES$3O.14<_LJ-AJC6
M\*+ UP5U!C"W<]K[[3J88P8 .A4*44(QXM)+9%7DR!F-O<=*2<]*G9]@8TKO
MJB'L .:^%3"'N;3><1J]U#QH:FARTL)_"-@-S V,J0_KF=N,"WOAF37:(QV#
M11RD&ZP[AE'446#N (FG <[=(F;\CS,+BJVM,(,?[9B.[?QH<E(?G,+5F\=%
M&40]9[(HF[^ZEHY^32W=_50 7C_S="UJG0'#""YXGF!CGL]S_[O9::P:8S&R
M\SB:G&2<$0/\,CI['T>U@-';LW@TFW\JW[?3Z0B^-)F%Q>AT'A>@8N#S9[.L
MW3(@&5T ;AG-SN%K[^W)4;XFO'7<3MYHEMJ;PNT7\>@8+K#86RLW! '*RG)R
M<EX&=]7V^.LW=-X+1=A &\_J[#T'\8WSNN M?AMEK'8&\WH21C],K)M,80+B
M8O5)MS^7>:#'>O;B;5ZW]@%L?0#X>S%9G.65.S^!QYC">MMCT%CPWMFGT[SK
MIY]@CRW.IV51$X#8T0+.F\6H3$MWP<7HXGVL&\O/%F?PJ"C_=W0<S][/0KY^
MNU'G,+-')W7#3. R9S!YG_-M82[7/@,OCT=9W. ")^6ZB[R-S^?S_$;\",H4
M=FJ^9QWSJ'D"V+%E( W"WAMM>_0L$_D^\T8F9E4>\L5/N@_EU^&[L.Y%1]LL
M#_^T4POG\>CG]Q$^LG;QZ7(W]">W'0J<\D5:ZM;)PX59+;?)3[-8;)FHJR:A
M7&5=N%<?I#^@&SS-ZA:NA]W!.8Q\XN\@@6$#UFQ80T6P7IZ$5JH^O<LGR3NX
M[3^G,__'XX0XT_A_?_KT^Z_AU%$NW[[Z_?CW5S_2MZ^F?^R_._I\\&H?X,WT
M^.##RX^_O?OQ\]M___CQ]P\_XK?O_I7V/[SD $]T(M3#?"-/C<WT!+G?2]2(
M^9 $3+ZC.#T;10""IS"]9_/S^&SWU,_WZ_('6[>_.<O)6X4W;]+SDWRR3&-^
M::ED\I<V9>DB@@C8!9QAT^GL8C'Z6SGB9N<PW+#X^_.;J&51YJ7 E@Z]59 &
M\S.UIXOXO/WENS!9G$[MI^>3D_*4Y4O?-==JK+LML*$<*_7M[RXFX>Q]AD][
MN)H739)=<^?F[;WRUAJFK.\IOJ>4NO3M_Y^];VUJ(TG6_BL=G$OLB5"Q=;_,
M;A#!6-BO)BQIL(49^$+4%01"8B4Q&'[]F]4"#$A@, ($](D]'J%+=U=5YI-/
M9F5EXF5RZV=W79;@96'$+UWV[L\$N_VFCWI8?:_+_B21\:?NKIGZZ@RO-7MD
M<;A0U'RU-"CUZ&/V4@M&:@_)[_SIM%R))#R@HLF"SUFV5O<)4-]GQ.]NYLA3
MY \O;MKP#9M6]=&HJ@C^9'<!N++4+$JN">,)!TN8(DZZD(\:,T%V&O=+][V5
M.[?B^!WL'ARNT^U/ZZ)=WV6MLUW1K*^?-/-OZPT*_\_;G5W6//O2:]5[^S?#
MA=OU[8/M^@%OUSUKUP].6KD$6&?WI)GO!\\ [Y^U/FW@]F8K-;O3+=4M-A9X
MAT+4B(AX, XY9B2BGA*;MPY,XH"%IL;9>ZL06.%=A7<WJZ;**+QCV'I&N"#:
M$$59""Z29 B-LL2[>V3$57CW3'@WU8@^,($C-Q$%' T"F\61=BHB+:S.Y^E,
MS(WH&:U)]1KJ(SY_B<(7)::]&='I]W&4]Q\+PLHN(YD53,T-IDZG:9D#3D9"
MY(A(1A%W 6!**HP G[CPT:0D<L=:7=-Z^JC5_U4G\M^"&C\EV:C4^"G4>(IM
M4"L8L7F7@_O<O58E9+QS*!@:&$F>^IA/Z/,:$=,-<%Y$C6<D//SSVK[93_:\
MSZ6=YRV#Z32$RYV"_[F^I7.^SX!__,0ZX$G'X]M_,A4\?*&-($EO9 1<^7=O
M^"/XO!N1&T9[@&R"A_W-]D[LZ6CIG]=W<+K]BXM+!G>_.?;)"%?^[8;PN_MM
M TT'65]HGAJMKYW5SY_7ZL7O&XW/]4;K4_'GEW9]XT/G:ZUHM#XL%[>.:%&&
MT&IWUKX6G7;QH=WZVO[<J*]V8#@?&ZW5UH?&ZN<"!MA9:ZZU.E]GB<0-K9D
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
M-]OO^76!U6J9=#PJ3H;=\3@?M4KIG;&JA]1\>2%XVH3%B>V4*J8U-^B:52/
M)Y]3."R*SC" +J*0DY8AQH1VPDBE<U$[7I-,/J(&S.*1K,7=-[A:,OUA.P?G
M([WU#/";WE-XV. 7&YX?@LXD,4\$@+22G"JGHW0F<$:MY3R8R4&"N8%RA<5S
MP^(9,3JB$\"NL8BXY!&7WB/#!+!*2US.I!":QEQ@3^EYM;:]G[94%',AHG=7
M%NM&Y8?72$&?[PQP%=A[(8B;$=@+2:GD&4;8I(2X5N D>VR04)KR&!QW 2".
MUBB=KC_PZ!+*=VE-%?.K8GZO&=*JF-]3(MF,F!]S5"IE*?*)Y$(J3B/#B45*
M"RP]5BZ)'/-3C]Z@J&)^5<SON6-^+P1/5<QO[M#5GA7S4SA@C3&26C/$G35(
M\V@0)C)2RQ/C0682IM7TAD45\WN.F!^9FR/_WL-^;S?R]]ABHE7D[X40>4;D
MCTML&'$1X< TD$DKD58DH"BHPAY<8^I=&?DCCW:+'ZHP3X39%T=@8"3Q[M+-
ML[[YCHGL\T86WT%P\9'%2JO@XLNDX9PC:(FDG8RBJZ<[.NK (^7(2 HP*HU'
M+HB$\GD<&;111)B\F4WH$S1H^XGF5 '&*L#XFF&M"C ^*9HUIM',1)V8R&<T
M>"! "G% 1B6./#CH*D2FA%253+POF0A!&2RD1I9$@SC6%!D3 F+6<&99P)KI
MI17&IJ/.51AZ$4Q:%89^4!CZ90"K"D,_ 9@UI\&,XF0XCPRQE!LJ>^60ULD@
MDW!4FB3,O'X-!JZ2E^>1%X>3L#I1))CVB">?B]X1@Z)PF#'K/"4.C%]-LND&
MM-5&QHML9-!?C$M6?=6>88(6FR@\8]O*:BODI5!^?1KE13[[&QE'04B.N,(,
M&9(DRGV+C!*))@9NKZD)/N<LZ,7NJC:[5N4]B\:K647CKQ1Q(_H9JKC=43%>
M/%?%^$99/;2L!=KHUZ/+K12;=G@0R[F?%!O^&OWQL*PK"A]^@&6SW7YG:/,B
M3XK3UKLCWQN,CH>+4T;P]$+9-\@6A>]U0*T[S;/6V9<NS"]OTC^Z\+K7[N1V
MAPVQ7>]-EQ'L?-N'9X)[-DGSK,E:GQHB]T[8.FS ZPW1.EP7S?W>07OS6VJ>
M;8@=;&.4@6(D$[:($^#P-K*(,,XE130%\+4WR[C#DAE' ]-8"(ZM<BYS?2&!
MP>DD')TJ,[_Z]?\5JZUZ4;Y86]]H?%O]/*E+>5?)^44K53B[9.9/)V/E0ZYA
M6]9GSR\BB.??8%QR .&\WUJQ!W?IG1:]+GP6KI:"+TZZX[W\!J!-V9VG/X:_
MQG$(\E\,<\WT87=T,*F^#@C5[=M>+J_[HUT*6+AS-9A4\QW&>-[K(G^O%T>C
MW,FM;-L#4Y6_<W0\]'MV%,M:P*-X[6DFC7XF?7Q>HD=/<]"/IQ--_P@68+0Z
M_F"'PU,8Z#?;.[ZG37_Q8M//K>;[&WB'.V=84!@Y0T0^E220\2GW=8N><"T8
MC^"E$T.6I^WQ9;GI+&8/*B_^:\DMU;+/9]FWON\P; QAD:,H!3C;1)0U#3A2
M/(,3$S8DMK1"A5Z>=K9_+/M=K5,O6K'EOA0770QZI\O%5P":U@  BN!:\=%V
MAT6Y5D4SVFQSSQM=Y"*O%_N 91.,RV84RS.XTB]VVP%/9,&9DWPNYO3G,%=D
M'Y_^V0-+DAM0@\$YRFNQ<&PH9U7]O=V'[\'O6F??NDW:!)?C]^[VY@9N=CS>
MVM_EK<VMDV9G[V!K_^-!J[YZMOW5X.V_]K __-:WF^:X?;C%6IN-LZVS ]K\
M]$=ONP-N4-:W^B[9WE_]WO[TI=O<7,?->JOW%^A3>WV'$BNILP%IL.6Y:%'>
MKW,.,1D5)D9HSN14VQUKHV$4I-!$KCUWEGG/ .!,\(31=),/_?FE_>?:E\Y6
MR8DR'?HS5^G^E?X[/[OQ4Y?KOE6>WK$4\>;JCA#:TB@$ F "]S=7Z[/")T1@
MO:0RRF/,%KXT]\7B3EI*7JSLI(G/*+/ \_X0DWK<F6W^K"+W WH"/&\-;B67
M&1&_4H-;\F6)]?QK<(ME(>4O7?;NSY103_.P9AX%PR_",#@'869EE)JIK\Z(
M#T^$:*'BH-?;J>; ^K7XUF.GY<KNPP.B7 L^9[-V'GYUQ.]NYLA#Y.OUU^G_
M#!;G$6F?[VL3ZL'C?SM[3#XEK:F1,6I.#-=)PM^,)1$4TY'==X_I5MX+KS^6
MC:[B9W!TXY?\F.VT,8IET/GW"/YM7/7GW?QBJ.?^W[Y;4GKXZ>KA *;U[+S5
M]&+L0?TRA=[:_&.TW3G:W]ILLJW]W_>VZT"C/\$]SAIG[7KSK%5OG&UW<BO@
M[6Z[TSAI?CC_S5]_[+G#T&L?MO:VSD*W^0FNN0_W.5MGS7V@UV=-W-QO]9JY
M%?!A0S3W5T_^.IN19I<43B(EAJ((0,)CLLAP;Y%27CL1L<0BQ[SPO*K^/_D&
MTR^"]TW;5^%BA8LW<)$K;AP#?3"<<D:D"](XRIR0N?57BO<]AECAX@+BXND-
M7(PXN>@D01)C@KC*A6X#-X@EZB5A&#,O7A4NOOF$K-^/N[W\I-51F=N9'?;<
M9>@RQO.DJ?/P#I$T)16,97JAF-TK2#UZ)? V(\$41R(\PQYY*C7B*43D0/X1
M2((Q@DH?,<D)I@9/[WF]W'&*7X2N6^,:[QX0N)!!2H9#C)9[@XT246/C<O>C
M)&Q:*$I3 <(< >$FW_&.&15%0MX$BKC$$?@.HR@8IY2.4DF;%@\0WG[(+FO-
MWJ 7<A/QX>#O24[ .SM(]0! 8RP2DWP,CG"XF+))2Z$(%=YARJ2K&,Z;!+09
MR=4 6)@'BY$%IQUQQO(1&IT0-=)X*2SEFH$#1VN2/KH/W!S/S<PI?%4AP@4B
M )?UG@5F@S)<,NHDUY1%'QT..1NJHCAO%1%N4ASF',:,&,2- XICO$>6.(6$
M\TQ'IWVB-H=T:H:)!4*$-Q^X^7@\!/4]'L9:D4#PX<7H>C9-%="YU7^3"M@.
MQL*)R FUQC"K30B46X,!Z2JZ\R;!;6,&W8D^8.LUBC1$Q)V.R&&O$/CR%)BP
M8='JI17%:T0]&MRJB,[B(H*+&"='B3;6<LVQTRQ8F036TE&N0D5WWBHBW*0[
MTG)/5=)(ZIQ>FR0X0-$H<("$5)Q;1Q0X0)+7A)AN>%:%=)Y,F;_%O:[OS87C
MO L'+ED6@G$ITJ0YT\D1KQEF#(#.9R2K.,Z;1+2M:8Y#LN_.(X 9D\!QE#;
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
MXU"@P5/O/!91+*T,^C-$;K+0D^S_<P')4I6%XVY9FX6 =@@@.3AT '$!8 T
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
M:05\3#YMJA;HP/2<]H'>N DH.Y#0?U7+M-C+M AN0X7%3X[%T]M7W%(!:XC
MC'JPU"HAIY-!6')LO7>1,W,;%E>U*EZR5@5]S';5.ZX!P6Q*V%&FC,+<IF!-
M"-@(#;04Z B9;+(_ +6J3?8YH]3ZC&T):P2500!*<8YX$AAIX@"T2#2$:Q9-
MRIOL0M0HE:^E!L0+Q#/?L=K+0("S^$BDQ9Q*90GQ(=+\@" WQE1J__)J?W.C
M0A!OB+ 1*<$TXCQ$E'>;4/+.A<14$D0OK6A=8VQ>[98KK7]36@\.B@3S(+DF
MC"<<+&&*..D"53$Q02JM?W&MGW)) M82@-HB &N*>(P1.:L4"EAHQ@R5CM.E
M%<Y9#7#[M:C]F]_HN+/@4_'.]CT>4DEIWOY(54GI&>%K8T9^770YE@*@Y2@&
M^"(<69,(HE'IB!FFUH?%JJ1414BK0/:;6::'0.^\V6$%O<\*O5/,D?+<F(4Z
MQ(ECB >&$9A1C@!I"0G4,B[58D'O.PIDWU+$;BJ,716'JXK#+62@OP+O^8'W
MUC1OULIBP3E'FE*%N*8&V1@5DD0Q%AWV5N#<I2G'^!]=#6$!BL/-*1!8P64%
MEPNY05+!Y5SA\N;>"*"BQ,D0E 2 )#>8(H>51O"7)];ZZ*A_FKV1"BTKM'SW
M:#GOT$&%EO-$RZG( +/,.!LBBL N<T*Z1R9AAJB(TA#C#6=V:86IO*<DW@!<
MSJ@\?#ZHUO$A*(=?O$K$-T[*7%8*OEI"]++L<+?O>\>Y>'!9%3B>%Q>>E/J]
M?XGA\ZL4,%@;]H]'X_+:XT%ABZ-A%RY37L+FTVRC[N3^XQS+..F.]^#&W?&H
M.(QV=#R,Y0^/RH-NN?JQ/3H:#KZ#ZHYC[[3X[P?@"I:,:$6,#MIR*:G-W1>
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
M+@45670XBG3%Z7!U-#7R)X 2 21497"!ZNL/B]&AU?I0+0$#Y.(D;- ^M<T
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
M05:LNF*[W\GU$RY5O"G#;T=!O%7L65Z23GD:?U)A:6L$S!-+<@%"M^[3X%C
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
M:5%/9K!FD#LL$DRY1+JAEEU-L]KC01\ /J\1O&N$.*4Z/>?9O3&(3([U/%K
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
MI&Q*AF5$6B6!X"_E0S(21[NV2=:UT"M44[4N_%SCU7W$;-\9KVJWP>]#U73
M3S!:&BPP$MXEQ)G52%LAD4I&<=A+YM1*%H"NP:H&J_N(N*[!ZN' :B8,6Q,?
M%:$*&48Y@!5W\%O4R%)EJ7.,V-RAK :K&JQ68&X/$#!=6X(/C5C3ZI4F5AD7
M#+(JUVTP"7XS1"$9B3>!,&PBJRW!&J]68&X/$/9<X]4#X]6<@&@I5*0FQT*#
M.9B404YPCR(F)D0A6(P*\(JL$[6H<)D:L&K >BR!R[4U^("NJ]EHYF15XM0*
M%'CIO$H$Z9@$TE83AUT"';IV7M5PM1IS>X"PXQJN'A*N9F*1P=9+/%"/O"&Y
M#ZS$R%BP#8,R6''MF5I@K<H:KFJX>F11P[4Y^."8-1-4; 46+%&,B$H.<4,D
M,LPDA)T7W'"KJU"&53,(Z_ZP=7_8^^\/^^XB@KO6HQ:"2=]F@ZLT$22)I)&-
M(2+.G4-:88]B[K]!$@>#D*YBQ>^Z7/^*QB/5_+M4_IT^$L,X.B,#0]IPT"@D
ME\@E0U'4*GK#M&8FUOS[#/AW\5UB:_Y=//_.!.%0#%ND7416^-PEUAFDN8A(
M6VZ=B)'9W"VGYM\GS[^+;Q-;\^\2^'>FQ)^-7@!]HF2B0MQ:C(QQ'H4D%6&!
M$:MUS;_/@'\7WROV2OZM'7-W8^*9. W%A/):)\2,!B6:>8N<EP$)(Z(&'@Y@
M"^6X,L-4S<)/F(47WB^V%L%+,(%G(Q=X8I$&PY"*02!N<$2.2H,X3I;1&**0
MMA;"SX"#%]\TMA;"2V/CF1-] 98O\3IWY(L@AI7AR#@N$:;<<),(,RS58OC)
M,_'B&\?68G@9_#MSNJVBP@%3BZB(%/$8/;*,1&#B:!*5@,-T)7NWU]UC:T*_
MBM"/9SN9$FVCX@DC C()<4XDD#D.2,MH%7,A12SK-5_LFGL-ZGW2!DE)8<VQ
MH4ASS!$E*D8*QIJ4>+9[[$0-N(6TD*U@8U[UI2LK]SV'.+Q%K<Z3T6 6%0LS
MH;?4U8Z7#3G33D&/<Z5CZ1'C3B%.@T?&!(ZT@Q]6^VQC+C;9=$%\M.*!R366
MUECZ '%)M\'2VBS\?1B=/B!5.&(-&X,(6/2(,^J0P=@C$9SA0!U:.+:D.LHU
MD-9 6@/IH@/$:B"]%R"=B123UC")C4'$$C"!":7("4<02$*O(^?2\(7GN]5
M6@-I#:1+BM2KK?M[1-,9M50JX5TNR.(BH*EU,3?I5<@*8ZQ0RHA :^N^QM(:
M2Q]%U&2-I?>'I3/ADXQ%V#6+$1<IF_@X(L.L1;DVN[:!)"T)8"E;)_C.@1LU
MF-9@6H/I<N-7:PO_?ERELX&L7FO*F1((,!'@U%A02(TDR"E! S;"1+NX;+ :
M2FLHK:%TN8'$M5YZGW@Z$U',D_#2 90&EB+B1%FD)<?(YA/%9#%\9Q<445RC
M:8VF-9HN-Z*[1M/[1-.9^.Z0HD_">,2,D8"F(B''E4'!..>U =)U8<'5RQX8
M3LO(\'_U+;P1?H;F]\W1O!J#$V ;O_F_\.%H%B>V^ZW9+L=B2CB]9[:DF2T_
MQE@T.OU8B/7BM>T=%K8=JE_>_'?0_ X\T.[WUC.K%">=;BR:[8IK,@O#?SY?
M&2^NA.]]:Q!B@%^*_F$LRL4HK.M\CQO%5JO7*7JC-Q*Z7EPD7?3*-_]_,<":
M?"NV@ J^EYQ[];O#+XJO;8RI9[P3OJQH."@?<6DOAFO"!2S:::?7S!>\Z,96
M^?B79\W0/QSAV,1=0SK#%[=8!R0UZ%]]RP1!>1AD[#[0OBLRM3H3_QYV1Z,Y
MM=\B<MUHCY%-,-@7MG5FSWMK_[I,R$#%PX?+7*YO>N[5##?_UW7_M7GYK?.Y
M05R6\ ^Z3CN-C_M;[]Z]V2Y>?=IYM[W3^*OX^\/>]J?7^Q_7BYW&ZXWBRAFM
MRA0:>_MO/A;[>\7KO<;'O7<[VUO[,)VW.XVMQNN=K7<%3'#_S>Z;QO['>20Q
MQ365-&3)&25Q<#I@[JBU06K,B ,+B!L:Z5C<#W'OLGPWCG"AM8DT6C"3@J4!
M6RN<2HQX)?3!=CX1Q003='$T>EFTC^7YA(S?C3;+];#7_A#]H-L%''EE>\W>
MIW;'P=)]STBTTSX=P"A@.![N*F>T#^-ZU>KXXT<JZ;_^YQ#[DW_:]K,9[!UY
M>#Y(=_C?U[\^'&=)WSC:%;LGC>.O1XUC&#]OG'QH[FZ___&?GY_.=H^V#ICC
M-G >$5BJ&/&8N^3 =B#IE(U<!2NH6BLBZ$.GF:B[@[BV>F)L'T2-/[3M;UE*
M% FHH_B>R:/HI%(,^<[\?L_%'[9X%[_'5L'@1J"-/XLS"Z*H!U*GU>J<]8H_
M2D'6&<#H0N_/%W?!KTH6CF5'J8G  K7L:2^^&/WR,C1[IRU[_J+9+J=9WO1R
M^/2AP,DOF,X6R^^KOA[BK\0;@LH,P<-<M>&+A^B\4:+SE&)5?:?4AM;BRJ_Q
M!KGRN^L>2\R&(3=[[((JR-XLQ6XLH>[;)+JJ"?DX$>E\Z+K]MP7T[9X79+W(
M@#@%T[^1^GAC2_KADA!O;D;/F]\O%?<'S*Z\_^/NL;0<BLBL'G]N]@]G)&/O
MLFCL71:DX\+?Y;.>@_U\VOSZU\[9WO[;YN[1/ZW&T7NPGS\<[?VU0W;_VJ'E
M]9\;K:_[QV=[T_;SR;_SL\3NYYWSQN=/M+']7GS]:Y=_.?IT]N7H2Y;"AU_H
M/ZV]_2WQGY];<]J8@TQF@3E$HF)5VJA)VB+OI<$F.6*86)3U?*?DZ(J3GD=F
M]-]@$C;!W,E@?#KH@L;1B\4I*+CQMRI]SYG^S>LS/ H$^RU5?QE0=@62_3W<
MQ&=1K>6^T.S-G+KAU)&8@L^%ABWB3&IDA2#()IV$Q,E)G^,GQ3IFYD$[&=P%
MS>ZBA#X$'[^],)-L.!KT^@_4L^#A5N"/^X6R'LP6?ELRIOUEF^UWG5YO9^B*
MW6F_L=TV7-:K<>Q6.+8SBV.64*F9<"@HT,6X#PZY(.&?R)+046,7[-JF,7P&
MQ/ZLM;%%<^^6]]U8.27;%8[56MARM;"F6SA:C3?QS8_3V.[%&J-NA5&[LQA%
M )^T"1%%R0GB 0?T_[/W[4UI9=N^7X7RGG-K[RJF/=^/WJ>L,M'DV+>!3H+=
MV_QCS:=B$-P@;?33WS'7 D7 1"-&T%5GGS3">LPUUAB_\9CCD;L,(1FQ=)[J
MI/,88<5996C])%'-&GF8MRRM_\^H4VX5UB(HY?ZHLK?6$;0F)E;KKAEYE3NY
M/(C[, ]QBD=C&3'(<TP1QT(@0V5"UJ1D.<&6,@_NI*P3/.].5I;8TN7Z4SP_
M[Q9"]6A/<DVML6=!MB=R(&_>9N4Q/@RJ]J>ABC6NCOBA<3)&YB+").0NI]8A
MZ^&34208QJWTGFQL"2P>@5.5(79?C_$45G\^K)W93JB=YURT;C<.*A-L38'J
M.GK_"3!JN#<<CFS/PU_3^%7984\";I/>MC1A:CF*R0?$*<NU$B(AS0F1,BDB
M50!7L\ZU?&UFV.IGE>Q$'T]=')1>/_NQY))')U[_<)''.J2F+)\Z*ZQ9GJ'C
M;978LN(ZXV!>9TA'D_?:HJ"81CR %V\C4<B#.>QTLA(;ORJM='Z\,&16[:Q7
M54A.ISWZ5M!R4MY1%':,BSS&I1\U6_NOGVACBI\2YMLMG_OZE_MAA%Q3C'A$
M2CENY8*R]M'7ULX7TC@ZQ I@/E*)" NY",Q;L!"M1]Q1P5-@!OL\*T]LDCEA
MKP%C=S/W9$X$;K/GM;[/[^FFNBCU1X/SX]I_1G9P'@<%LU[S:'E&SN8.$7X\
M!28O?+Y>O];M@WTTJ+F<N]5W!?/V$SB%EV4$:P@L/(C#4?<\?SV(?W>&<.KU
M94% XWDM?CV+_KS4)INU+#"3 XJRH?)>_5YQ95AE85M-BU)9[]29JIBZ $:%
MYWI1DR!^G)-V0;-\N6R>>%C/WE5CY\LA93:PZ!)27E'$39Z"C+E$3 7C/8U.
M2/W"!FDLDWR2 =2:Q(!>"B/./4=:LX T\3'I$#!F9F/KFZA_>QQ&%L+^6>%=
M](X*>>B!*Y[/S:*9MT.R'BU$X1,(2NF09W%HG8U=DE(&WO9/SP;Q&,[.I7Q[
M/=\_C9NUZ\)$HNNU-Z,AB.]PF(]UG5YY<ED9F#("@#!/%0>6XFCGL@/RO>\L
M!)D:_K%(*FT  .D,SP=EP>&2G_:VT_632J?>7+ZQW1PP^70<X_E[L)S.@#*O
MNQQJ]U"3X*7' F$&4,.MCLAA85'NW6ESDP_OZ'J40]G!X#)+9L'[)?/9X;#O
M.P63WM1(%5QZ4T$+Q\3S\O!IF2BTJ1U$T)]9Q?EL,L,%SZ>+K3H+A&',8[6"
MR<K+YBL$H."@X_(E"A-R8CQF5?DI]CH@V5GZLVKM [7/P:X"++A=V#5[;+UV
M$6NC<UCQ55:_QYU!0&=@&5R"@9!_KUT<=_QQ\1!%[7"^>;=;ZV?PJ.4#:VG0
M/ZV=]D/LEEG=<$D0ASCH 5V&<#N?B36HP3O^ B9 >4B)-M/K /* B \+6V)<
M74:GEWYZ8YR6;P46]"(JSLPF:)0?J3BC9)-JOOR*,[5IF/JARW[[-\WE4RQV
M'$=9C\6N&67OQUW?"1%_=QJGF3MT032S%,^5ZLZR72B!242X-A<,OKM9T"LC
M";E%DL>RR]3FPP-"4"M.N+=CPZ,,UOWYS;S<!Q+@=1$R6^H/(^+KI%/%<#^!
MX;X#=1,;$AS7^&UZ54?>/O)U]#JXY1]-&&NI"Y&;XAXK6=#=*4LN8IL+7!QG
MAS%?8&/K'^2?/]9U8?G[WFO2W/#!S_]BVA<2,!D3S^E^0?!(L<-6I""Y8=:D
M$..]![[T<S1N<+H3W?EUT.XU;$[W<>O]QTYS)W0:[]^=-G;V<6/GPT6K?7QR
M</*QVZ1PGYUFM]G^\[31F>U:^(%_?K^'FW3OXN"O@XMF^\-%<V=;M-XW.\WW
M^PR>"=:Q3YJP]H6U,R9B(AQ5B''K$*?>(R.%0Y)2S'T>'4W5QA;#N [LMJ2V
M"T^P^_QC75YG%,N]N[Q64/=:H<XIRJF(0FD3N>31"1$-B<PD:KBB]Y^V6D'=
MDT/=W$@KX%J?;$#*$8]X[G,-&HH@'+6DV#J1,-[8H@K7C7ETJ6 %=174K3?4
MQ8AY<BSY@ 5G))C$+>762&LHT?[^HZ<JJ'MJJ)N;A0I01:(*$BEE)>(X8F1=
MY(@9IZFQDB7.*JNN@KH*ZLK^^Y@QH:7W3":N$W8,O!]G0G3:\1AH!76K W6S
M5IV/VD<.!EU4V"!N,476@%7GN!;"2<MP] !UA-0Q?71^]<^"N@49U%-Y$.,[
MH(PUOU(U :!.+\0>2(/)D;UGRL.9"AO^_-O_ZQ9AB-G4/!-B]VN1:3,L4G4Z
MIV?PZO-&YPADMP_O(*?.@*2?USKC<CK AN'"9OJKG,!^>]* KM<R%J$,1K6,
M1G</%9C+/[K/$($"JI*U5A)!J0V6QT0=X\(DXC%-087$#XD@?./;>3Q$_P2*
MJ3N[Q-<(J:':$^<??HI'.?/I8SS+[-8[NIG(LBJIA\WV+OZ=?KX\^,O+@ZON
M27/GS4GC_=YEX_T!;;[?O6R>[N*<6=O:V<.?=P"HVXV+S^W&W^']GSS\[V_=
MS[3[MSLY.VG]U<"-]XV+@Y.]B\\G!_B@O4</VA]H\^H#;YQ\_-(X>7/<N'K3
M;1"XY\D'T3@Y8,V=#_FZ5X= 7)=2H,A'JA$G+,^>3AY)YY6$#Y@(OC%.9QW%
ML)T5JM1*B9BBH* #;&#6AY2\H%P(@Y4/LWF+>\UWK8^-[?9>JUF#_WW:?3\>
M S CW;/9J?,# ;Y_YYF5)L*DTQ+DA'(3@O/&1D^(<UIS9L0*YE3NC'*!2%EV
MT!D,SV^J#E*1*U,OL./M<2>FVN[7Z$=%HG KI8Z/@WKMXKB?\XIM!J:; UO7
M^=,[8 $-,ST;]@M<]!\;;UL[C8U_UL=M[4-Q8WB(7I'K/$YEA*]R>4*\&-X:
M@7*#:!GFSD:#L_ZP3//,R9W#8;Z?FZ14PPJ*XP'JZ_D&]FCRF->'%$F*79#,
M<JF#.,Z%W*SM]?*+/1GU2J,R)TOGQ,OA>-5%1N8@%CH='B$_][ 4_UH>T^+/
M0>K'I1;YPIT2?W.*M.U=UH[MW_G;.RW7\:666U $,C&+6" '+@Y:Z?IEC2'L
M=G5YKC7(]NP%6$/#V+LV9?'K0S/2W/G"FNU]WLB3IG;V#V72CDE)D/4I)U7[
M &#&-9BF5&'F-9?&;&R='P]BG"\#NJDQ&+_P89FZ/RR^ Z;>ZPW/@3T+CJ_7
M=G*6?L>-"E[)G-NPO5&RF=?@^&_,:UD)E&D!_T\_S_S3WV07#\>8<-(?=,XO
M)QG1O9@/^3OV<EM7>'PPV;.4#_JI4Z8;9YX=%H>NC&25QD"V[RO1NK]HX5;[
MZ%!J'<!?IXCQ*!&7D2)M"$6@CVW E"?%Z<96O[= L ;75)_P5LYE!_#^+L_E
M6DI0:R@G2(1BYM8-OZ;\]VC\5^8W#W!>MN/(;=/=J-/-7DGFR  :X+J4%*[?
MR1Y;5F$]$*8LXX6.**0:%I 3Z//U!K',T!]?&VR40NU-'U^+\%N9I3\LD_H+
MR2C65%S^'%CI2UZK&X#B.ZZ5NFU2RC>,<]]G903/W0&1MX-:+A[MGX)QG-=P
M0RU0>IFX(/F 37Y21#11IW#[K.YRI>'DT?/I8UIF]9SB((;ZU 7A0!\#G%4>
M"M?],@2+8#0$YS@7,.;>)_5:!/KV+V-11)$)^'?^,M=+##)=\C6FJPV&L,B8
M*0=6P2 755RK\[%1T85?1\-<OIA+9(NJC*+X Y[A,A/< 6CE7[. /A1"5(P2
M>^FY=)(SI:P*)B:BI0PA$7"2*N7\$Q%D_P*N>^@2 T([AA(Q 7%N."AG !3O
MK>,*_ S*Y1T(,@<4JZY><ZE.JZ@7!+F.1WT I!(%@>==[/8OX,_4C7Z,<_V;
MVKVQ=GT@OT?..?4LY6G0W#"LB7+86<M84H3*6/'[3^7WK\VKW<.HDO<\$"2T
MY=D8%<A%;!"P.=%4T\ 3!F/THK](8Y[:3J\P.^>,TN]9GO4QO(9^40!W&F,!
MJ=F-!,P^+^M*LPD\/.YWP[!PW8:@]<88/8Z6;-:RA7CK3O/:>EQ,5QIY@YB5
M0O>RK.C-T!^FSYXX>9,2O]P2;4J#UVM'HW/0)&,GT(.:&(*Y&;-%"4PZ !'-
MNF!L N3CRHEKQ5R4L9;+KF^YR*)$\#1[>V 13"OI\K%NT6O!<XW-_FMA]+#6
M41=\VVF3XW311?H3CSGW SC+/G-_-.Q>J[.RS+>XYK>-[\+CS6'5XN?<02YW
M'BL*BQ>LI3XQQ,=&R/EBXVK\6/DJUY>SP[-CVRTU=J<71OF-@3)/'9=I##>^
M?HG]\;OYUBM8!UB^1?AYT_2&J8<C!T<6AF+FZES!.>_Y%/2^-JW@W<.5IG^?
MG5,[HQ1^Y&:35W=#]/Q8G9SE[\<1C?*8,2_,W13>ZOG]"5&S$Z>N?(7CAYSC
MX1L3/M?L#L><<0[V[;"$M6&NXLU!_HGM>_LW,%D!D2YZ$TKMEA.0RE^!04:G
MUS\5ZQR6BK2:OONMZ;NS;=:JZ;O5]-U[3]_];O!\)MCNM0\,6RH55CRHJ,'D
MT<R#I:_S:,&P@L'VC)Q?P-T\C:#DP),>#<N&.F7\N@";J;CU!),71 IM$6"^
MB89-T/!V5&R"BOGH(J8V?5MW64:E6SN-O(0RX#Z.6H/5-U[2]'*FXN5Q.EK^
M5VX\D++[?-<R)DOMYDMF3+XV"G(G@DDT(>1HC._<A%C&6[?C[B?Y-OUQGX:L
M/6#5Y]>-'>K?/ONFL\FTAKSVD6:6M*C]"[R&0JV-OZD7FA)H.'ED%[T%NM[0
M-/3AM+S:_&UA(DWO8-R\],D%;KWXP4)"/_46IC^.8=2-K32[F;EWL_(WE^,?
MJVW-ZVU-?"B]\#9H@Y3W&G&:-#+)2Q2DYQ8GY22+L_@5 >64SX-,P&'S3#L9
M-"-**N&\Q5+/;FNVB\Y@N9E&$7HKC9*I".;T-M3L9EF6_LMHP8@&[P08?G&3
MU+(4O! >^(#G6W8\> /U^\\X@^F>>N!80Z-.W MB,-9,PB?&A2(63W3_S^T
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
M0L7T744SHYBT,$%0'YQ,GDN7P&F@S#BM=. FY"R[E4/L<*U::JG3LSVPF;L
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
MNUP?DY?^CW;_K.-KFNM_3BH@IQ9(IA9XJVSI]FH)PN2.U=90[9/OG\5)7V;
MU,&X>B83,/]4UK><G4W3_U9?_*-1)V3 G6MO<H]F]Z%_=GZS4(JPO).L._GK
M =QO?/]/HQZ\X-K.N+/L-:%NT:Q\JI*1AN4SE:=-&M*"GOF[TQ\-KY<R>1K0
M>B$.IE_XH@$8O!21L]$ )&;<X18D]/HBG6)LQMF@_W<G% FDG9@*,>V<G@$&
M9CG.%1=%2=+Y.,&T. 5^AR5G:L[(^* @1U$W%O-,C3(?-;^?RYOZLUQ5E7/@
MB_Z@7\]BZ,0R(?XZ@166Y,K63Y?C$N"R/=5P>)T2&PN>!0W<@V^+1:>R.VHA
M=:@#]/DZ:0-?-L7*"P'..XTWY7#%4;716:X[*=[%^!KC,KFIVKB;*BYG,\"!
MQO;'<3AUE7$!G^\/<O^ ?DF>J3*PS=KV')L.XS0!BI[C@[_'5QUW(+\^?+JB
M#/!NF&O'<T_D'((ZL[E8;.J$S?M4(A<61;+62B(HM<'RF&ANLF$2\9BFH$+B
MAX3HC6_G"!/]$[2.NK/2M$98[?_^'PV>W+]J3UWT<][W7X[[77@7P]W_C( ]
M<Q^Q;-EU"Y6T.L4\1Q-S[:+Q?I^W=G[K-M\?7&:SZ?/I'CLX^2 :5T=@:AV
M"=>X:/VU=_EY+G5^^^)S^X@W3O?QYY,]WCSY>'IP$CI@LEVU=CX>?SYYUVU<
M;8N#D]^Z_[[:(ZV=#X=82>(X3X@R[!#7P2!-M$"Y<B=9["(QIK31@1-CV,Y6
M+YCD-ADB! ^1,\9MU$)0$V+$B6-!9NM]/K5;;__?_[9^W]G]^*EX[>I?M=T/
M^WOM@SD;:;8<;+ZL^/LWO[U8YT0P\%N(BG,NJ<5!4I*#C8;82,F=Y4B$/I-E
M5EJ>(1<;%<_]:Z$Y\E$;6]L/J6Y]GN*Z6U[5<&]</+'7FZ[E_(93ULXF].N5
MRMWL8%TV3SRL9YLTKAJ'DFE/%+%@RT2".$T2 0]SE.=($N9H2"&L187=V,A_
M3(WVO&LQI6.GFX04DT%*.Z@L[/NA4IJQFJQJ::KRE'5;[,NJI3GMA-"-SQ2^
M/,BNY^XMU[,JJ*D*:M:@H*8BV2LOM9EV%XHN=O:\YB)8),5 U1RN*KH-5;4U
M5=[DT];6>!6,=$I*#4ZX]E8'KX.(CMI$P=,D1<_RA1O[,R4U=\=U5FCG[<><
MQLG.6X,VP$GT%\W3=R>-]AZ&Z]&#]ILOC9T#TMKQN''RA7YNO^D>7,[NO&U?
M'5P=T>;5-CWXJ_&U<?+A:VOG\W'C_8>+YLD^;UY]N&RU/W<;[_\\N5W\LBV:
M[08]Y,G)Q#U#QMB8.T]@9*3WR*K(HTDDA(@!2.G\:+BJ]*6"L)<.8<#](27/
MHR"<"ZPL_#_&6AB6>V<Q5XY=>"2$K4=FP7K@VTV.T1C?,(U*,^(0L]HBSIQ$
MQG*&5-#!>(435WQC2]>5G,\QJA"N0KB7CG!.6L^="M0:S1EGEEHJE0@^T"C'
M@\B(J1!N=1!N.I_ZZH@?1D PAKE&RF@*"$<,TGG4-N,D;X$I!ABWL:7JA*\\
MPKV&^I3]FQ[S4\W.\P[)[5[K=VYY5 4J3YF,JA-)GEIEX5$Y)E8;B4&Z%*<R
M !ZRI1:HW#'RN1G/6VF-DD[7 3@;\ZZOI9X&I0-0-&77ET8$;ULBC4621GOC
MG<JESW6MQ0IEG58BOV21)YK8P%U0-N1$$VN2$L9;ZHR7+&JWU$J42N1_HLC/
M>8.&6Y=(8 C^2Q!71B$+THTB8+O#GG";Y\/+.A'SO:\KB5]MB7^0UZ,(J&YX
MW]PP3CF O4TVN6"$XCP:?H^2DSO<GTKV5T7V9_TD$'D*X"Z0C%+DSL $.2(5
M FW/C3*.I02R3^L2S\O^_?VD99>7O/#-REEAR)[/M7^44[NR=U1FLT_&G3S%
MQN6]H'$!>=<$&I_3__G>B(\[\/)M.5SZCV*OND+(Y2/DAWF'B$D?B:,$@1>4
M$(=7B[1+$GDK/;88*V%U1DB#YP=[_EB[DQ4*BU<0\&3^4 4!JPH!<PZ2CQQS
MIA0*)+>#BY$B0VU"20JM%0;_R- , >SQ(9$* E87 I;@'STE!%12_C IGW6%
ML/$X4I#MD!P#16\B*'I#D231Q;R-E#C;V#+ZT4&0)<KX:]@;FD[=G-X<RE.(
M>^$F=[/V%'M WSMOO/4W+FMA\!I#?Y2+9(KMO]>9-;!,TKP8Y:$88\[):*QE
M7$1KH\'<>"ZTQ=KY,FGJ'IYCE4GPE&IA?\&&F N)<F&0\#QOB 6%G,BV8*2)
M49J';.&-+8[K\-\EA<>7(3G/'%:O<+/"S2IA_J6"Y)R'+'U@4C.#B P!<6,-
M>,B!($:8@N\5I2X^-F&^ L<*'"MPK%+QUQLY9Z,.THA$&$U(10?F91 8:1TD
MPLY9+9T.ROG'I^*O ':N85_ W*MC,)N8<(_-V,E\7.OZ?\?Q%&T[B#=CLW/C
M*SCF/I/@UZ@ESZ?C\B'/1@-_;(=32;G?'=+['&^WU:N]BVY0MOSCT[WSKMLH
M%LW6<JL5U[>#(M04.O 2S_N#8<V.SH_[@X(+8.U%([SA>*\^GW'=_FZ8$76*
M*KE!W-' GL+%042/CL>-&LNN=ZQH&0<0[\L8;_=RYCZ=GL]M[>*$Q<[[N6]D
M.9=]<NO^Z'QX;LLF;KY_>MKOC1<!S^;A&M<K&9UEKOVOA^R"X9P/EKP(UG-L
MO N.P$?/<KLD85D9Q8#_\5OZ1BQ4,Q^O:?)'29+MZT?=+AZ(W$_WR#75/8_H
MC731:G\A68<TKCQO[C0.L98:YY U$90CK@5'-N*(F#;88RL8<R:7_N/-NX(4
M(&'=W'VO!G*Q/3H: 2P]3B@ S"[NYOZR9R'\T+4>9/J6R(R/*3M ?O,JMNQH
ME%LHGA]/8T]>5L7>+X"]CRZ:[?WEL?=W,7*"RF,1(+@^[F [/TCZ1CB.;7@0
MGP$W@5<<)=>$\82#!3>9..D"53&Q<4QC/AA\3S[[&$]M)QLB-PQW<TS%>O=G
MO:_-G:-#AO/^GZ,H,&9RUSF%M+,!6,_+I!Q/FM"-+2+IYET;@Q/6&TS>2]EO
M%5#T+EPK0/C&.*$E#SX&A^_34W5L?XV-))Y[M)WUAYW"S"M:SW7^CC>MV?[[
M=G.]L4^!;TZQ#CR(T?G=I\PUNWHF0U")&>I,_7L\N&E'=121 ^/K"[()%ONK
M[5[8R^'&+[<M6S!KQQ>7X%_-/7OYA%O_XP:_;-W'/!:+FH(]$YWVFI_:V[__
MOKM3>[._]_O.7O-][8^/K9W]M^U/]=I>\^UF[<XG6I5'R#UW/]7:K=K;5O-3
MZ_>]G>TV/,Z[O>9V\^W>]N\U>,#V;F.WV?ZTB"46MF']X;:JS^?Y?,,E 4A9
MLDUEDTK4:)$,]_!_Q@5F.!7:@E5%O#"%KF.@[FAE4_TLQ7;5W-D])!9;0Q-%
MV"2". \2&1<E K/#,1RY"88OQ::ZL>,G?'9M]H^;A=\R^\MV_$40I6R4OM!3
M'O>''Q]QW9+\/'O'(U":PQR,*"XRB&'D)]WS@2&R]98G'8Q76!XWO?9.[N>>
MQBW@X0+YV:Y#.V=P=G$.N-)=G]-2"J=IM4,=#QX?<"/TQ82"0?\KB,]Y[%[6
M[I3\DI SPO]#_92_A0+M\?LMT* (. VW_7]&8/B$2O(72_Y^GC9#FNVCKX
MM/'A,)"0M+<$14L%"#ZSR!+/$7@?Q.'@>2(1+-K-^636VD3B)U)3"O[M(%,Q
M5[)7LT='@WB4R_3/!AU?*(_;G/00)?*T?/1G;B\P8:.W_>%Y(X)6J1CJ/@S%
M6A\."78VUXNA&*@%%PDGI*F7B*M@0:789+P%AF)J<WY0T82EZC6P-[[)$G_$
M02'PRV4-^DW.F##%]M]Q /9_YHV;98P9 +]N!A -\)%9D H3P!%-LH\LP5.2
M/B!"M+6!T,2XW]@R "E\G@%L2=LQ3%SKUP<-O<&S2NMA:DHRRQ6ES$3OP3;E
M\%=P25"MX4N!PX,SNQ^MIM9U/_7'F>H+&*7[O+ES!/^_?]$X\8=.!JWA/2##
MHD=<"(FTUA:I$%+PGA&NV<:69'?-09STN)_15G=OCSR%YGHL:U6:ZZEX#.[O
M#ZVCD8.N0#)8A3BV'%G.'(I&.,F$=":/$&)LTRQ?<SV2-2K-]6@&N-H^],E8
M[PU!UB:,N&$!:24<<HF(0+T&A:8VM@3;%/.Y:W>KKK]B+70>JH5,A#7(Z"W&
M@BL5P4,V/(>6:)[IP_5W2@SWFN]^6 VESM<8T%4<]%\Q<TQ/G&D0N/]A"-%9
MRRT*EH,&\C(@RR1!3@L;P>1DG@$Z]/ISG'$^'3:SO>MP1/BF23/95"+WBR>L
M9!+(3B</Y.N%F>2/IYVY='W3G9RM ]Q=S4ZZ-3OIPR%-)B4/%A1S@2-N P;
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
M:6VN@'PK/Q@ =JN?A['5ACF#BY^TK8\WYB /PFTHGF>B'I1N/#GM^GW;@VL
M"'IXGB-[&(>#9<% ,KY4([;2^!)CH]GIQX9>;OS5.=Y#V[%[!$/H^LL9HQI'
M'9B6UG$-5W 3*S>',CM=-IG6\:FM"7(>W JUDK56$D&I#1;(''6,"Y.(QS0%
M%1+?)90LW3TE1#_#G*B)<]+<VG[?(+SQ/_\+R SYH_%_;Y"!D1.MCG !Q#72
M:'F"QZ4!6RN<2HQX)?3$%6-L*P=<O5>-X=IQ>']TTNZ<Q_AG/(ZIU?^[#4^R
M#=_W9QMF^*57A?P]]:H KV^(3:"6.T>;YT G\=;'30*K ]F"OS</OO[\#E2Q
M>?'I?+,UNBI\@N\ZO/C^\3] 53> 3G[B.Q> _ =?!?R=-K<_'&ZN[[#F^L8Y
MK KGS?5/N]HQJ;TQ"*=D$6>.($N)11%3%R$F-S:1>BD'8XQA+2^N#C/MG&:2
M4<I-B, YC4O82"N("SD^C^ +)S 1?5@?EE;?;_[]U];.^_>-/]\WWW_8V/XR
M1@)O6/^(\=?S\NOOO'F//G$=8P+"X2$*A: '8RN3=XE+J81S2[=Z!WTAQ*JI
M=<CZ8]5S_PZ4/';SNY96_[]HV_U]?UU^:BXQ]UM>MG,\T#J!=3XS@"-8#ELG
M0 #V+Q\A8W!>^C+HPOJT!UB<4;<FM:U>?07;;I\W>K&=4#JMUI^S5A\H;^8=
MO=-NQ8D]>'=>TV!MRQ#L:J_NY6^-/WWL5:LPH/=)H]V!7]JMH_PJK,KPC@KB
M837^K1Z&E49>+:[=XN!B<*$,(+'QK^-8W60<0$B]HK?<:;6$_+MQ9F&Q. $B
M\!.X9C_"O4]#CA\$=9/(<<N=_%[;RL9PF-[73[ @W/C947#SY^:G71*YE\XD
M9)V+B$O-D+,N("F<IP+65B, ,!A>8;?RX>7I)CRWJY/16PPL7*D(G"27+^-$
M@>EA/JS6&$SX^)9,F?!'3'CSTZZ4%N):D9<YCQ$7V"(7+$,D>49"L$9QF'"J
M5\8[IU\&0)D;3C/GDEFN*&4F>L^IX/!;<$E0K>&/ H=JSO%PSG&9\QG.^7D^
M^N]QBLP$Y)+CB!L?D7$B($^$YEH)3+*B#^4KX_O3EW.>N?LP+NK]8JLD.VYE
M)'DVJ\@PQXBM'[ XU$$ +''U4KC26!L$TQ! Y%=R6'Q4!<K7EB2(Y5I'>77S
MI]V\#P5K3Q7E0632Z>;W_BNS:HK_V/BS^;GZD?SQ[[R>7@;D>0F]%K;[:^QX
M& 2]@]4LE\577_ZG;5<+[9?]&/N# !K6N:FV?92U1,5H*.-<.N)@"A@X'TZ*
M$F?U[L;]=GN&U/USO8'P5\NZ043W+H_&<;^8_F33_THVUW:M9YJJF$O)J$0<
M1UC?:#2(R9 9,9.1&%C?5L8[;#X8[8"?:^]X"$X[#AYBM* ^* &,W,)Z%JJ)
MOV-A*Q/_Z(EOGNTF*Y77@L#"I@1@GLIM+(A$P@@=L8F**9$G_G9>T[ 5C9X,
M<D-X(S?A[5Z[&8/(9! ^\"R>?]+I51MKOU?;A'"I*\W\_W,S7ALH[N.KCU@'
MN'7:O_TC8W*R+Q0B*3DR.M?^W>]>B>'N1>2ZT1XBF^!F?[?M,WO>6_KM9LP'
M =_@XI+!MX\^^YV=#R8$CF*2[.X+C=-&\\OVVE]_O5]O_/EUXZ_UC>;'QM^?
MM]:_OMO^LMS8:+Z[8_MQ7AXA[W9]:6QO-=YM-;]L_;6QOK8-C_-AH[G6?+>Q
M]E<#'G#[_>;[9MX0&3>)B=L@O]S6&-D&"2HZ$5E,BA">L#628RX4=LQ[7W5C
M7:1MD&^=[F'L]JK=0_5'X_KVWL+NBYS=?*8;I&S #K_F$1AD2 9[)Q5_;/3
MQ%NIY7-*()/ ZPF0TQ[<1:]7I>Q.<VJEL0\W!&MM. 68SBF9DVYGKVN/<C+&
M=W[ -^1M$GCF.E53Y56NWCS<'1]D-&LVVG"VUZIS#H-DY) @7S'8P44[/M/6
MO$]3I4T!P/=A:8'A[ \ZNIP>7_Y:,UVX[!U#TQX0@?/J*T^Z\:AUFMEQ[T;^
MJ<ZB^)HI7'XFYP%^S7=7&AM76TTU]\[W"0M=[/Z(E]\S).[5,GGUV+W8[[?K
MA$YUAX?'G;/CP766\Z)Z%H'^YUVC:Q^O,D3=G&0:7JCZ<R;TEX.R<3Q\<9"D
MZ<7+>UJ&.>[U.]V<CZ\WO?+^5;<5\S/DFS\X#7OU/<$DG];)L_R6*@'=CK!X
M5U_H.[W!3ED]S57X 2/5 CN,H4K/]:X&I5N-038/N$A^5K"*6.77;GF>_*W@
MU:W>\$/#8:F'-#]7?N3*KEQLM^+ '+,9WQBEH]C?[X1>MN#!'0P-$-YY?;;!
MU'-*!VZV?HY>/]M#'I&84DU;(+0YSQ<ZBK:7DWKU1;+/M,\OQPV^<SA?*W..
M.'?XSG!3L]^!!XK3\7IE):PHB@O+LQ(NM4Y&8:W76#N?!BH(]]VJ'-SD=1PO
M.QEWLGIXEH.U76VE38(2E'C>K[1&(T.U0SXX+*)16$F[M$K,'5L9T^U78LLI
MQI$KFR*77C@5E#8)"(A1/$4WU7YEF?6'S/JG78-A5?-$(45S@9&W#$% YU#0
MX(^,:HY#@EE7*^,GP!X<QF.O<HZ9!<L<ESI8JX31T9@@D@F$3K5I62;^ 1-_
M\7X72\!<32TB4G'$*>/(N1A0($X+(R,E4L/$BY5Q*=[9[USFOX^PK$P7JEP;
MS-)D9O6E#_^IB0>\;^OR9$QUM6P/W;@/=I"7X8UC6*OB:'3W-.<$LE%^\?O
M<MMQ*]V^U;2=CS"][9,"7W>Q<<QR)A$)#."'!X$<@#\R,N @M7;$CV7^%XH6
M7:?HE6%6O'N4[X?[;)6?Q4R*>X.FEKW&OV[VJ'S,7LSSMJN4<D43^I!NE8*O
M4/G0OHFW7Y;B%:4?VC3PKM>DFGVKQNIF[]<$\YX-!6^M<C 3^VB)E8EF-#;O
MG9.7:J-U8W<YGRV<IIG6- 56MVD_3Y!_GN<!RTO8?<IE[O.X;VO8R#26]1"=
MJTE]!%[NB3?NLPTV,P7U47.X=Z.%EQN@V759&'OX7U;)O-Q33Q'[ 9N6FD7)
M-6$\X6 )4\1)%ZB*B0ER2^Y^K%QL0M@WY-;G4R5Q7[Q\[(',NRX?Z^"=@W_V
MX7_M?%_-@QV\M0V?6\^5'!MX9_N0?E_W%\WU3?Q]M'SLX'.K^>T#_.^?_>;'
MK[29*T2 L6^N_]G>//B\O[4-]WBQB3<O/A]6NI=?1FHSK8O*:L^1MY$BSN ?
M%QA&"2N&-?-*2K:T:I8-?_)6"Q/6C7M6EM4^,Q<]90K:O3ZT"S(*[QBVGA$N
MB#9$41:"BR090J.\Y<!*0;L71[OS$;2+!F9,<(PBYA)Q[?*1/TJ1Q(D1RT.,
MLI+0QGS\O-,\HMT32#3-%S:-4]5VKIGJYYJI.\CJTU?X+P1P/0=-:W:.?<&N
M66/7YCA3T\*#86F)'(L)<</S)BNQ2'.B<J*54Z*65@E;5B\LC/, -O:"@F +
MX<C/P4"*(S^1(X^2$,:B#CABI#S-U0:8(<L=09$XA6-R(CA>.3(SOVB@^=B=
MJ@=&/8,L09:<"IW3G',8.LOLPZ*%[+8YBP%Z-1I#S[A7M'8<"HH]!8I]&J<C
MTLK$K/)(!&H0%U(@'4) 2@E@)8P8E]+2*F7+4LUXYV@&WK48O=(+SA:<G2^.
M6'#VR7%VE"T*IR'RTP$E(1GBF#MD+/!&EZ1T/)CD7,99LLSYN"33HN+L=.)P
M@V]$&==^!SZ=3S8L35O@]*(5()5PVKX--U4LNM''UH_J4$\^HS<X?E0IMV45
MBYCWQ?)QHQ$AB^K-Z32K9%37@G>=P SYUG0GE5:>2H+GYM&ZRTJ*O^ !/@].
M5'WH=#?J6]]R8![UB< W?]1N\V)O%Z"<<N,3DH[FUCL\BST*B53@ 7ME,;%^
MM-*+2TLUC0(H&>&Y]I9R;8)F">O(*66C1_.V]UN]Z\;72:E75WEG(<%</W)9
M83-:0)YM:G L;E 75"F_Y4*>JG1H6"A^UP&XNP2 [E'*]_B:QHGE=;\<Q&<_
M?Z=6"!8//'_'Q9,<:9-:/LGYNR<Y+"BU?L'S=_<Z%?6BW//E#^!-?XSL10?L
ML0?P9G+Z;O'&[,V?OH/5#@U/X.5*U_[L#M^]H<V 7SW\JPGT9[6A>LF\OUP5
M)'^^9'UO+, _:V[_<_#]8_/H^_I_(" _Q#L7\/[U0[[S[3/< P3HV^W]'?J]
M/1[@KY'FM^8AO':X"?>_M?WY +Z#;VWOYWNF\'P_M[Y]./A^],_D$W@X.*:#
MT$@Q!0%^\AX9B.H15UP9Z1T+0@!.+C/RY&=2%G"/M$#>6X"\6>UM%LA[$<@;
MW]-,TCEM$--8(ZZ9!,BC"3&,68!U30A501XL; L!>3>W*\<TK>Y4W)Y',9W/
ML3^0G&]42MASOW]ZFX(.Q^1?A_\>*N.< =F.[CS+W@Q4/QJV 5[N][.NR'79
MWDITV.[%+*^?8JVI>'ZI\%N7@&:=]VK?MA9[O^PSD/M_W)  SM(AT?K]ZC96
M&N_ DFQKH."3E1X[9]6.[<TK#+ZK.W*ISG%6)-Z^TOL9Z//T3EVO;X\'XLA9
M/C(K_42PU4JBY_+.QYIZ3%GP?5;M2G?VCF%^PO7A'2J'5'L&+R)P?-GD*R8P
MD?#NVKAE(UX+1ZWC5J_?K>3C!N("B](7Y-DWFS?@>GN[W%'!%!=(,VNSK$1
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
MCT]%'[F3D@3G8Q288R&M$XDQR2":H5PK7.CCZ\:EL2RM=Q9H(C?(J0BX9)2
MG[!%/C 9J0C4"9^W&)<5*6%M88^%/3X7>WP84A?V^!I0>D*FG!,-T8.&N#[E
M?)!5'AGL,%*!&6*"E8J9&2E(S@U,5WGVW_H6OA3^&UH_5H>/!M0 '-$/_6KP
MZTT',HX S=8FTFAYL@'6.6RM<"HQXI70$T^=C#B/WX_AM!VWTONCDW;G/,8O
ML?NCY>,M7M5N=WSUTU;Z''UG[Q@@(M2'S=YU>OW>-MS<G_">PP7U@^__W<?^
MZ)]C^\V<;AU\@N\ZO/C^\3]@OQMT9_L3W[GXRN$S OY.F]M@[^L[K+F^<?[?
MB\/SYOK:+K7,)<DL$@YG&50<@6SPB$3T4O%<GN+#4B,"6IS + #P9#%0F/>A
MK1[9[E[KN+(X4ZW$SXSE-&/Y]GX$2@I3?0;VW:BLL]$[/8)[@XOT&H"2C8IZ
MHRII S9Y92"-^#/_'!O=2^N I0"<J-$Y[3; %GECZ^BXY4Y[C8UC#Z#;^A$;
M?[?A&?_5.H8K=T[AQD/OW[]?^G+E%-4_]1]<][?5L1>'(W3-^_+%@5L#$-3W
M/\""VJ-A)-OVI!=_'_[P1VCU3MKV_/?6<34>U8?^&,S& "#$R9@W5]]7O_S'
M62OT]W_7? 5+GA?$P?&9P1?7KY*5:JT< :CZ-2Y6&..WOHQ7R*VOW759(E>H
MN?VC=UWV[M>X$>5FS?TF[!?GJ7ZY+4#$V'LGT.7:Y.>*%NY$V^TU(B! N'&L
MZL92_=C1N1;@W+9@WW4R;0Z'[<Y#9],\[ML:,U+&;.HQP].XXGT/G<YU$ ^$
M]@B8RI<^T-1&%0GVICUC>[_Y?VU[&M,]_.+N5XSL4TAN7)7?4B%Q&0.$758F
M!G#C9)!R<IAUM6&!V&C0-8BB8I@<9+VO*?3]MH79@@9:@PT']GU]3^P<?#[8
M/-B#[UO#S8L=^/T37'?_8(=N4+C/B\UM",3>C6XXA,.M]7:K^7'S?&L=GFW]
M$VL>P._K[\^W/C8/=@YV+IKKFS^;ZU_/JF;B8]JME@JIG$->)8TXU3)O-U!D
MB.5,!\T)QTNK<IGR1V>KIO*;%Z[M*<A7D.\2^:B/4BJMN2*$:YE/ !*P?!)Q
M4(KSNJR)#)&/%.2;2^0;Z_U'13!6JRP=%Q'7GB&'@T5,Q&AE2%$00#ZQ3&?6
M);0@7T&^.7CJ*9"/,\PCH]P*F7B(V)&@<>X$@YFCG*D*^? 0^7!!OGE$OK&3
MI%AC2VA4*$D:$&<B*W%CA3P)01$3>71^:94OPR*W$,CW1LHTT3 WU;A'Z/Z&
M%85'3V=BB&0L1#=<".Y)3A!F-*,X<9NE\YXL;BTP-05,;4X(325W.%F&!)$6
M<>$PTIQZ%),2/AKG81YS'_?2+N 5>Z\03'M/<60N<N>H<90Q&X1Q21D:^9/%
M7L5[I_/>T?!*2\R)]PX1%S5X;[+(D"@1BT*'R*F+0@')D+,ZQ5*\=QZ]U^HD
M2$H*,\Z)<D:81#VVL P[II1^LOBA>.]4WCL6(FC*O) >5EQK!8(8,"#GI4":
M.4\\ :#%>&F53>CGM?#R^G,=!OP=NU5H?.PCJJS_\4' ZU2H&@$B+#6/--!<
MN<^U58XYJJHU*%C&C"_)J[E'J0D=BKE4D5%&D9(A(,ZU1EH&A1C##F,7G+(B
M;^&RQY=:%?FY^75N$B2AFEME ^<I4:<Q"REBDY7%I+4E/[,(SCT:0#CNHS<A
M2\:YW/>"00#AJ<VJ',0+0W#@+N]2"CHN*UF<^]4X=_2P'FLEA29@$=P::AC\
M@9(8X<\VE!3$ CCW6'S!K#80^T-4$9Q%/$B/C$T!64.T-1$'E_?VV+*6CV[@
M5?0@IW+-OUK6M=JM_GGC"6*--['I82PE-@ #M8)QE2#BL$9:+K WWG'F2L)A
M'D!I0J>MQ( N$F*0-P(8!\41&<8\TL;"A)J@DB; .,P\;7J4+<L9>V^P$$H(
M9;%VDBL:#/.>Q60( 09J72K!Q"*X]E@V0C'#B'1(T)"#"6T01(D1:>6]R/FD
M(,32*EV&0+(X]^MU;L,-9LK*8#3G1#,G8C12R& -9]H^73ZB./?LG'LLF* Z
M.B^RJHFD!'%C(9CP6;K3R0C8[:,SMNJ0^?A@HJ0K'IFN^!Q[_6[+]R^CB:]9
M;KXD+FX]>RXY82X$'@SGW$!P[//)2YT;*CAG14E<S#UB3=)[)\%@PR5BW@E
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
MFQ<?#C9I\V"'-O>SBM--Y_#GF_"YYL5^>VO]>WMK^]/9)MW@S?5_]IO?OE[
M=U[L5)_]D%M$DN;ZUUUN;"X7!9<PR@$C4BSWP.7(8H<C8"RQ$M<P",87PUK&
M&*^\3!*X%+S(*4U.6T8<8*(0FGO"1ZM.-YKOMC;?-[;7_OO^RZVIG-MKE'_]
M=3=O+R0L#>$!:QDX,'Z'1<393G00!"[PC#7-&=\[QWG3:BM=&M^@JFP@?S%G
MM<PO884[N\:31(6W2$27(_D(E#Q1BS"FRD9O(\E6..>US-N Z5?*%Q7H7TIB
MQ,S,J^U.8/=Y'[+F'W6Y<J;SORI8GD)=X7DKFZ5:$9P]I+"9D16-;W_Y$;7"
M@HLG*&S6^DFJL!?L9N6S5&$3L:!EV#L3]J]S,?9SUV$O7GGP6+7Z(Y[XS8T<
M*2/WP)'#;^XT\KLJ0];__3XF\ZCF[K,XYO@DM9V+?9,S.O!6'\YBOS96N+47
MLM0/$8;&MA]3&O1*SZ"]SK-D,^]T,X"Z@1V-Q=Z+DBQ[6% ^.!J&(=S^^?W;
MAW9S.QS"/>(FW;G8.?HJ-B_6Z-:VAWM8^[ESM$-V6J-'PSY=- \^M'>^?25-
M^NEG<QN>X:#9@N^]V%S?$<T+>-[U#ZWO!_^T)A8%8IVJ3NY(&!X05RP@9YA%
MGM/ E9&)Q;2T*L0RUX\^U#]_58$%I5XK2LVZ44Q!J>=$J;$.,9Q0GCA#QB:/
M.$[PD]$"$6I<M$'PY"U$"FH9$U)0JJ#4@J#4S/NL%)1Z1I0::["B) N148&4
M, YQBDV6>N+(2,J2)EA3FY/8;)F;>5)8F-%^RKUCU1?USDK8O-1P/W=T5PW[
MVG'XJ^,++CTI+DVHVM86 ,D:@5Q@+@N_*&0P5@BSQ+W#P(U];ORLEAEY=/G/
M'!=N%^=^HJ"H./<S.O=8:&2D%%(J%+)?<VT"<HI[%#6S)E OV:"K.V&S$I@L
MSCV'SOU4L41Q[N=S[K&(@NKHHL^2L9+D9D&*(N.H1LDX;8EGS"6_M*J7#9DG
MQ97')K\>Y.0WZXX?V,YVH1'@J;C[+8<BB^O/SO4GU.P3&0GW B.A\I9G"@YI
M;!Q2/HFD8XPJZT8KNJSQ^*'X1]7LSWW/ZX('+TKW"QX\!QZ,\OR0M)9!)>2U
MPH@KJ9&5U"*!7318PDL&+ZTRM4Q$P8."!\\8(10\> 8\&._FCHU/UEA$9: 0
M&EB/'& [<ISD'(064=&E54Z7.;E-7&'N\. MG.Q<CRF"VX1''>V<EX.1<WV-
MYSZ#^:)F=<LQS&F6QM>]^LT\.AXZ\F#DRRKXY*N@'X^2DX\D.4>15T"-.>44
M62HCRHURE8Z4F\!R3P.AQW5D%OY<T"MW[G\];ZS;@P>&GQ[JYL63I_/DT?A6
M6LV8B S%E/-8SD3D)%,H2,Q3,B$I38#/LG'!D'\7%WX-+CR#\/21+EQ6ZMGY
M]UB\*BE/$M.$(&[%B =-D!.*(VD)N'?"4CB(5]4R47/BX>587$FN/WGP<".[
M7H#IR8%I;T*B+0:!F13(!F<1C]HCIP+\(W' Q. 8!1 /,HM#N^7\S!SSCZ</
M(>[G[,6?I_/GL4""44^MC$@1[A#77B!'>4!1!44DL997IUT?03**&\^Q&S]]
M&%'6[.?V\;%@PFBBA)(&46%@S9:<("TH0R9R%K$)BG.7UVQJQL_%O8B?ER-Q
MKXNW%[=_<K<_'*?JG#(=A>#(I01+.[ U9#AG2(I@K;*:$JWR'@)6CS[J7H[
M+ P>S!?)+[Q^1LX_RNL=IS+(W @ V%P^\&*1 4*/ I4L6((%YB8G"!ZSXA>O
M?Y5>__0Q0>$#SP )8V% C$)A[0 (-,[9?R.0<3I"J.^P-#AIH'RY/(:K\:V[
M^0.%9SK]]G)2<75SN=Q79= ';MI([,ZF@OBNOH+W KFYR\K<7R9E]@,TW^C_
MDC%@P?HGQ_KW9Q7.UWB?L?YL<V^71@8A'M/(>B'J8D@=F$>,2VD$$3)$0'ME
MEO7CP[^9^],+;Q 79"W(.O\%9@59GP59-T>159% DP@14>T@M/9.(T<U03PR
M*3#QT3J[M,KDLIJ90$Q!UH*L!5F?K52O(.NS(.O7,63U6B4.TZ0$LXA#S(%T
MY!(I;$R4*;* 0R4):";L6RXJLCZX[_UMW9+J 7#=W\9;D3U+B[#W*=4M8B_=
MZ+/MQ\\1OM&WVJVJ#UKI$;;N=UE203@OD1/, )'(A_@%4 H*QAYUD@PSNQ ]
MPKHWYK;A8O\LQN.ZC?W0&*J=K"X80@/><1S[PU9BN0-QU3BL/FX.MV_[I_U.
M][Q^<ZO7L+U!5[%>XU\A-_OJ]AJ_Z"WVW"W#8,E:P?6R-6W/,,Y6&.<S[VRE
M5R#*?X(N7$S/_E[EBN1Z0>ZUC&L95QA7<;][?71;M+$>50-46O0V5<_25,[\
MNL'7@@W;8SO*_3HW?H\Q6\AA>_IV<J]UY%ZDG=S+I5TW+CO<-FS_%E;ZP"#S
MK6]:O:4]J:?+H]X,I&_9JEH;=K7X,C3<&\'X6]C).CG:^M;<;U[\Y[!YU&PW
M#S[AG>V]BZV/S8/-;__ =W^ZV*3OSS>W]_>_?QG9R3K:$3OT/=L\^D1WZ%?:
M7/^\O[6^R7?H9MX9._R^#K'\]L;/K8\?VA#+3V@3)H3Q/ ;$K6?P3\#(9*EI
M%HE+G"6LA5M:E6Q9FD<+;4SK8L^4 '@$!;E'5<[]^-R"G,V[%57 +X$6SQ98
M-IH?1I'E/OMUO\23 60@6C#C?I@Q>F WD>BLXA1A;%4^K<^0)58C9Z/Q J;<
MB0A\#.+2IT:,Q\+%2_C0_WD*?;A"ZPJM>[9#'(76S1M$3Q!ED3Y0)U&2/B).
M<J<!PSSR01(2<((%V2RM,KHL'R\JO&BT[LF9W=L@=X^#ET+NY@0Y1LF=XL:!
M=7N8-4D1#TXC#3.*E.=!:L6TDN9YR%WA=X7?%7[W D?)"K^;-Y3>&I/'E<X$
MQB*B,0C$#;%(X\!A@*,B(@"]&_3-AK5Y 7"Z\+NYXW>/A)?"[^8#.3;'RZV<
M9XKXE,'">,2KWA(,L$,H+Z+SF"LA"L.[-\.;43>"N>9C7_H=?PA/=Y090.6H
MI1_!2Z=3FYU\).D4[L>UXX";?=FWW?BG[<7P[MI<O>OT7HM,R7,!Y^9XIC1$
ME6(, :ED,% N*9%6%B/JC;3P@PC*+ZVRF37M6U YDM?DW$^1U1QS[_O0H@?Z
M>F%)]W7V,:U1;S5$6!PYP8$C26&1%56[3A.)#"$Y09=6\<JXVNB+./O+LZ""
M-(NC:#8C0E$V>&8'0&,)/)AS0ZDC*/E\+@NF/JMC6!0X#IXJ#"1$9R%4(>>D
MJT(!@,<!P%,DV6Z'@$(ZYL#G1TF'(3PZ*@GR. G$@TC(<@8_$1RY-EH!Q02?
MG[ O\]P>7_C&8L#-'*:3RK;%DX+*6*:(.>MB%!BEF-55";?(,9)0"'E>'4D>
MZRQ4,">13''N^<SGE&V+.73V"<D=G;>BN'6(<>;RP3^"M D4"8*=CI;SJ*N-
MBUFU#E]X(O&+],U0=@%&*MX-3^6=B_G.M]";?JN_'[N-D]B%*\7C?J/5CT>]
MTA7PI5-XU;2LA8/37O\(IJ57]M1FMSI^'<_@N>"=9$" ,<D''VS0R,#O2-+
M=% 4!U8W%]*S$D.<(SG#M^K=<Y/#JYS]\D_'>QL9@_^.W2RE4*COU,X]NGE&
M.=$$\XBHXQQQ$SFR@BKDF90JJ*J>.1/?654Q+SSQ+;BRH 5WA34\);",9>)@
M4JG-5701!XBHE17(.A>1U,0PA[G2I,K$434GT%*\>SY+W@IK>'GG'I,RB$+#
M3!FD@K"(<X^15DH@8(>$.DE3L#:SAEEI^!;6\+9QY>7R;N.LH1"#J;!C++,6
MDI$LFH1(\ %Q1QS2+%"D.&/.2B&-@HB#TT(+7HW[SDUFK=""F6XFC.?1N!$4
M)PTNS;/&D<)90,,#_X_4\,AH,%[-)(_V6HC!6RB#>K=OC_=B5G3_8=NGM8*\
MS7+O]MB/*6V^\M,'4QUE?GP^9;JCS/5$;1P/N[C"&]9ZO=CO_3.<M[7AM!4>
M-!58[HRG52C,:-)<0>1D<FLI($,62X? _K*62)3*T:55HL=Y4#FHO(#N_40)
ME4<<5'Z(MQ=N=%]W'VO7[@*+5$I$B<6(RQ"1MH(C;(@,GB1@,[>41I53R@5K
M%JXJJE")I\.6\:HGDW*@+)%3%*(NA@6"N67(Q:"4@$E502ZM&CI^/J-0B05T
M[_FK>2I4XBG=?91*6&\$SV<VB)8&<8HQ1 X:H^!DT)8;AG7(5$*^N+L7*K'H
M6/,DF9=")>8%6\:R,TH2FDQB"#OJ %M(0$99BZ2+,1!87A*GN6E0*9]^%>[]
M1)F90B7FT]TGR=I);H-($2FF N(!:^0",(KDDG0Z!LUB=0#TY6.'ER<3;Z'F
MY2I9<PHNUNW;W(C7_FR<='JM/.UOK?YEKA,V\(=W< ,PI!'^&,OIE.D T8]G
M98RE6E 1D/:6Y28]"AD;'1+)QB0%@=":+ZUR81X!A^5@RMSX\/QE96YUZ4)R
M[NO3H_LE)$4>M:.(A)@09^#.)@J%;#),$N*U-^:QJ9?7<AZE ,K"IU[&$:04
MNLP.7<:2+\:8A#TW$#81B3BA><=$1L0UP4HYR6!JEU;ILGZ4Y%SA#'/CXO.7
M?BF<X=%>/28JYZ30BFL$_\O[H%G)UA*,HN0*9M6+Y$@6E1NO<"F<H0#*@A2W
ME.V#1\+&6/K$>(XA=/1 !J1&W#N!K/ 8&0:K@Y'&)B>65J68C^/OQ7M?46U+
M(0&/WCB84,_B8.X")RA([('<>X8T\0EQ:[PPCJ;T_[/WKDUM),W6Z%]1<':<
MF(E0,76_>)X@ AOLS1.6L V,!W]QU!6$A<26A#'\^C>K)6&,A&U 0 /U83R
MU-W5594K+Y6Y,O&%$-H_%5O@.=2SY"9;^80DBV(^&XG#9J,71XU^:J1Q&ZZ&
M&W?[>V;%+37D"JO6:K47WO9ACLZ_4X(BBT3.O=EC%"XXIX1)) UG@)L,["#+
M.;+&8.:U#\Q8<)]$D_+9++7"H/M(Q;PVI&%72WVQB:XIV3/4'R(Z$Y1!6KJ
MN) >:9HT,AK<'NLH(=(MK8C;=T%\*DDC!5,>*6%8,1WN V!FSE.TLXE+KQ&6
MN7.84Q99)B4R0F'XL[84QZ45W23\U@PAQ7*HBY37ACBL6 X+$^S+EH/0T6B;
M&_,XXW*?'H+ 9"!($>H#)U8H(K/E<&L6X6(Y%$QYT'.58CG<!\#,'+Y80;QP
M5B''G<QEL S92"@BBFIG8+U)[MDCFDK=FI>P6 YUD?+:G+\4RV%A,8?9<Q@6
M':-"&&2ED16;& +KD",<X.? $]$B+*WPV].4/Q7;H?3G>>;?? ZU2MO]D>U6
MU4EQW"7MNL>MKC\(<8#&+_&"@:"'_K'KQL9T[),OC/I'+S(,#/O=3J@^_+4.
MK=UL_<]#S4Z]<;,6AY:3+G\OQ\?&Q4]8G#FQ?O)V3M&KIP8L0H=4"CBSE@=D
MDHU(AF@UQR'QW#)8F:96LX5>-\OL6) PE2RO^G@9]W.R.4[J.H:9W#R*@\K5
M*#[%#4"@=1D$@F3*IQ@0]CKW#0\"&>(T\E0)SX2TF@ (4%G(BA><Z'UW4%D,
ML^M.4+VW7RU.A8MM=I>PO',9EC'5/B5#D+8>;#--#=)8>60"A=6U,6@OEU:8
M;"JRJ'Z3BY.G8I[5R#R[E^/C8IXM!@?\91RP42AF?4"$1(XXAW^T(19)8KS2
M.+! %9AG; [-83'/BGE6S+-:F6=W=_1>S+.[A.4OEV$Y:8.3]Q0ESB+BRD5D
MHHQ(&2<(XYZ#P@7SC#4-6U3WOV*>/47S['[.Z(MYMJ 0^K=I&+W"@;6-SXF+
M*")-* 7B$3=&(T<L149'X@C#+! #]IE87E0$_=';9]61[%\C"] %_P^=KRO3
MF6D?'\(#_/AW/]ZRU5Y=^0]\;3KJR:VY@&=/Z1A?#&+7YEW_]TDGC/:GDGCA
MJ@ELXN^76 <(>3RZ^I(+<YH[XX'HWOOTT3PFC<_G;SQ;%_[='TQ'<V3W(G*#
M:+\@FV"P+VSWQ)X.E_[ZX9T..[WIS26HD)EW'[_ARG_< *[[X:D7;V('>W"?
MK&C$CVC\H/.TT=[:7GW[=GVM\7)GX^W:1OM-X]V'S;6=5]M;S<9&^]5RX\HW
MJLLKM#>WU[<:VYN-5YOMK<VW&VNKV_ ZKS?:J^U7&ZMO&_""V^NM]?;VUKPM
M<4EJ)J">L#0D,]K*P+5B#HN(\^F,#H)P2L?Z"*Z)837;BYH*KZ4SH'L<6#'4
MT8B)]X))I67$]ES!3:1U 8=!/VJP+;\?PW$W;J89\N.<5]:QKM,%"8[#[0PA
MV_#HE]V^__)(==BG?_>Q/_RG9S^:X\T#?]J"Z]IG^]W-M4_=S>WW)RVZP=MK
M_^RW/^Z<P3//=JMK7Q_\>[9!VFNMSS@:[GS"B!C)<A<$C0P+ CFAG0Y2>>[,
M4B."JC_*^WQP')>NDF5366D/L>U?]0^/^KW<6#A7CX_V8U5('B;+7Z6VV+P!
M&OU!HSO9 *<-.XCP9_!T,A/VL/%'INC=[Q_#0,+PSQ>W0:]*.7W7')59#7/1
MM4?#^&+ZP]_3?*-.KWJCZJ*_)W>?J)O\@$N:N'K>^.,)^FJS3#3) #Q)5)H\
M>(+-RQ4V7S(/QI])L<R%NO)CO$RN_.QGMR5BF1IVH]O^_#,NQ-T,]O=N^XMD
ML%_Z*V;FJW,<DO$FJI7]M5J)U5KT,3L@#4::UTF2_.6T7' %K^&!UGS.LG;Z
MG;#B[[SQLYLY\NSXXJ>F2@-LE<;86+E-4'IAV^K&L9D[&>2":''&<2!3\RWQ
MMM_;0R"<AW=:S?:0]UB08%?+R53-EW/5>S">P[G]"0Y( RS-[RV\9P3^UK'-
MVLW!M<^ GN8I#GBV4K,HN2:,)QPL88HXZ0)5,3%!/F_\/.^YXXY>S/BV\,/T
M;Y.SG \17N5KS%YOM?G@+N=-?YY%$67_V^:;]_"<]V)S>[^[N_T>?]K>('"/
MT]V/N_S3P?N3S>WU;[MT]^S3JTN1W8-U_FEMY[2]]D5LO@'O>>U#MW6P YXU
MC.5@_["]MBI:VZ\//AVTO_Q[]GZ6N2FZ@)VU&G%K#>+*8F0"28@Y8<"UU@*#
M6[U"6!/CF@1V[_/LNR!7G=[M&L@59!3>,6P](UP0;8BB+ 0723*$1EDAUT^R
M @MRU0ZY+O-+!.VCB$(@KP)%G$B-3-(>*6JPD=@XG9FI"&Y2?&MRJ@4BUR)=
M@_K;DE-AR*)0'>./TG&W8;V'-_R)Y_C,BMH7;WE-SQANB6&O^X.UR:*M3M:L
MH-KB4&UGUAY+$1.&(T8.ZXBXUQ893CQRG'/!%,-<4$"U)A6WYB"N,:G%[1B$
M'[7DW]9RN4O)+\)]/>&>H<3"*6&B&(J2*,233<CD=NZ1:*ZIM8Q8L;1BYA2A
MWD6<^7&8$!N]K[$WZ@\ZLW&GYYI?=X_FPG3V3XO:7QPR[,Y1^T83PI5$CO*0
M&P]HI $1D,R=![QRF&-1J7U2)U_F <YBBMJ_N007(;V>D%Y6WS09S"(+B#&O
MLFVND:4@I)Q3QV,T@EL%ZGM.N.$N>F8\#O7];M _@N&<5D=(\?^..T>'L!V+
MXW_OFGRZ$.^ZMC<"BW]]NA8%%ZZ%"_.:B$LGI30)T("97+IHD-'.Y!J9&*SE
MSD:_M")N7R!38X_]V0ONG2GP(K@+$]P9A:Z,\LQQ)(*FB%MND4X69[+JD)R)
MR>6:%L9NS0BS0,%]9L[_R/;V.JY;G/\',!G>]/OAI-/M NA\7XCQ1R4<L#A@
MFM-/*VJK;% >84T CDQ42+. $2PMPUA:KV$Q5U13JIJ0595PP".Q)HI,WY=,
M7S8V?!188$]04C(7T":/-$X)P4K;:*QD3&02RB;FLSQ'SS=^T,[%4.-2[MY>
MH]L?#AO>#@:GL%5/[""4%(+[-PLVI\OQ%E;CU<7%*"!Q+9#X,JOXL=:*JR11
M@G4!/X0XY+2/@,*$6VDCJ]KM*7+K7,P:AQ+*X?_BU?[/9+9H_04*]&6MCX7@
MV N#2$P6<<9!H#WGB!K, @W.DI"S%$'KET/_[R*S.=J/@^+QW[]JS_->A/Y:
M0C^7<5YHSBQS BD#)C[G4H'8@UI76!BL6!#,L=P0NWCO18T7^;QS^9PE@P^4
ML8@EDCS+)PL*V: ",E[1P"L^^ CR.=M?ZLX\<2%JKI//RWSG\)7<R@V_'7_H
MHP:*NPO=#\#.+Z;] E'DVQPM;WPRW&.!O N (L)9Y')^D"*)RF2C(I0NK5#>
MY+?7]-<5ED?DS=^4$^11B_[=1?B+Z"]>]&<,"$ZI,D$XI&34B!N*D=6,(ZFP
M!FEWF#J1*6*:@JC[<^SKSQ42A\,7C7]L=\+<=TXJ\<R<_3_J8"2<+\-YU4]!
MANLAP^D<HX RSQ,C!!&;".(V$# *4D :1RMMILFE?&F%S[H6?Q:O_W$+ZIVI
M]"*H"Q#4&16>N/4I*()HTA)QQ1(R1!"DHU8\&2]5(*#"R6S#D3^?;Q2@/9>O
MM/C_-?/_89F*"[! _#B;H^B3-  .BB$K.7C_T0A0]-Z#W@??7V(9N>25]P]K
M6KS_XOW?BZE0!'_A@C]C.!#K%:%&(A(S\Y!)&&GO [+!"P=&!8&EJWQ_AF<%
M_WDSQEY@M;^+7F:UN$<A?ZT-<6LA?[US\M<2J+M+:_X"7OZ:O*?H]NOI=CK'
MJ)?).>RI1-I9@KA,'(%")RAJSU2P49#DEE8DGZWQ+^&[1RZ^=V"3%_&]6_&=
M,<UQB$X%#>XX9@YQ3\$G]UHA3+Q1T1!'/0;QE;/)MG<7TZN]TB\<';52]#\I
M^"^._<+0@\U1_J#SN;0L(6>- >7/"#+,1L2HB4[GREMEEE9TD^M?X4<IO7ET
M0GVWZK\(]3T)]6RFCA'$>*]!GHU"/"B,M"4.!0+";I+'(J:JEIXNW"AXS)&
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
M%-E(J9**<Y9L%9L7O^JV6&)I%V-II,322BSMSID72BSM[E%S7C,6@ZV*1D5
MS: !-:W.G(($2>F(M\'80'EV%AF>=19+-.U)1M.>/6?S;2D&2MBL]EAX,6P&
M]]KV[+.3QG'L+<(4F\Q>()$)!AQ9H:6-.%HC6$Z@Y7R6S*L00#_6&%UAE+TO
MM"N1NGI$ZKYM;J^S]LEG@#7"6/*(^U"UX0O(ZJ20IXJ#NXQSMX**BE;^*I>M
MU K4,66NF'&+ K:2.%<#"/LV!\)D<((EA9'.AYS<QX0,Y3ZW[=#6:4F)R)4
M3\]<JS5T_7YHD=XP=C"?N[$$'F\]-4\&^Q?%K%W"DO<;EIPB.]-8$RP\PE)E
M*D&P2QTL(C*Y\LLZAI-DE7%J;MT];8'RLQA"V!D>J!F:B,DS44:M%]S@97%.
M\_(+%J.;7UD+4IFK5,OPH>AEK\"'[7T[^IA)T#8.CV PZRF-"</@*Q_L*!86
MT?D<+SNX@I?M/8"!5=':^TP"T923"',C!>)8!F0$%BCBH"FV6!"L,NOL;$NV
M<T91.[J*N.^D8JFSU=J,R2&GRU1MK<P?N=S8R+0KF40TCAEB*YXB^,EV,T%0
MPWH_.*[([[KG=)/G;$T_1J9^3B(XB'7:O^>\N.^F;[K:"].I6!V_<]G$5Q 5
M?6NMM3X'!]ZFEP9%C@,"]U,AXRAH,1P-ICXEH]S/=V[-634_QDHD0'0R[?<D
M6)%9OGZ@C;R:,.F/^,UWCX=9VN![%R2JEQO[C7?:GXV3SFA_0A?6@\W?&)W$
M[M?,B=H;[5?R= V949AA'YE*-F+NDS32",L=]E8*1HW[13Q@H_WZ-P("[3C:
M3#\5GPG5](_BDSK?8D!G<= _EQS\_"3GM+VV\9G1R"1+$JG ).+!)F2I,<@K
M:1/#6$L<EU;R5,V*#NR_ZZ HLUAQ%SA++G+0,YIX#Y(*N"HL!M5S+2[QQ6Z(
M@J<7=P58 I2K1!-%S$F%N#81V1@MS$^,(F!"368YH\NS9W./!$_78FYNVNGE
MV.Z5)@1@8X;"J;4QI=,-$\3-I,#_=UQ1G!\<A[W#JJ$Z7%,QZ4Z_75'Q=X9?
MP+:Y2,+;Z-J3*;UNQ:Z;=^?1($["E8WA?F4NC9G8^XUN'GI%PVN_$^9V>N,M
MG!\Q^;Z+U15?>OV3WIBE$22P OY\TT'<LX,P?N6K%$6FWQV/Z[<(<ROI2-9:
M202E-EAP'JEC7)A$/*8IJ)#X9\+P4@UXW]65A*@-(AO___^G*2%_WS4)Y8?Q
M;GIG!Z/3[0&,>RPXP[7.T'?[0]@?M6&=/%N=@L_9I\-/77@.WMUNG;2W6[CU
MYCW?_/C?_=99B[765NDF -*G[?;!IZW+X-,^_'2X\ZV]_0&^NTI@;">?UO;$
M[N'Z6>O,G[36=L4FC!O J_OO&?SM8.=S"EK$P# RF( Q!RX#TL(&%#PAGAE"
M*9MAG4P"6V&H(8E*KH@P@1#AB#4>W!CKPV76R0_K;RO>VW>K'[9W&]L?5MM;
MJZ^V-S;;6S]GCYS+!_GKA_\XV"PJ5&J##2?@;GD7 I':6:^5B2RR*_ER']3^
M',9NQISAR':[$]")@Z\=GSG/^Q.&>T ?&%PV+"^Z:,-S8ECX'(S)"L=2IOBO
MOI)YV ?#_<Y11L^_X#/7GU"!!@!7/^H/AM-/X#WL7JR0=DS'#8(#%PZ7&YD
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
M.6<1(O [X8EG)49W9#H4,5JP&,V<,3*JG-$*'*+<L4?3A#26' 43HZ!"DFC
M/Z)S;("[B%=56E_560-O]T>V>XO3G_/$>)A*-*W@''_I ;,??M>#>[AYKW5N
MR*- Z-L:.M/$D'.4WHJC43=6+$7? ?MY)8?<%W#/2;R3A!CM#44V17#?" ?[
M1VF& J$N,FFE=B&71S&RX,#6O>:&C"7KB2?=%51]O*AZ6[NWH.J#HNI,T6F4
MG& OD8\AHRI)R)!DP:L,7E'XFW+9JVQJ(9\&JEXOW:[NC'1OXP_]=VM)E;\5
M8Z/='\6&:3;&XVU6$;QT/*@<@TYO+.$5F>V8HKJ;OP:X<\X*N?P[KUC+%=JL
MWO$"P>68I/HBQ66]ER\W &F,X(Z-4;_Z?_.<M7L2@\TOE'/S]B8>8)5A!T_+
M*7@Y4@OO#B^:\_'V+#B2H\9Q12P.[WZ4:8_/:<-3?E)6-AE@<M8?;(I1'(P?
M< 0_]'N]V*U^BX='W?YIGL]&3K$['F7.\(T>:)Q<>MWIY=M5,6!_<:*;<,>>
MW:N43?XDLX8/AE74N-OY$KN=_7Z_8@6O+K4Y6[#;S?_/WY@R[<$L#&![]GL
M(:>-.!Q5?1C&7ZF2#/,-AL=^?WP7F(!SEK[EQFKO_(HP_KQ3D49GR N-D_W8
M:W1&^6_3T>5,CT'?5<F&5:R[NK.]P/RW#^-S,5\X5IFAFJ#J5C^.:3P?L(%<
MG/<& 48WO+B.,(KAL3N(?M2H> 5A'^=Y.X:E'(Q@(4?5C)[$?,]>?Y1O._ED
M/%+XY*0#\W<TB%]M)\<0\H! KB?+NMSXW_Y)!*2N;A+ZC?%-NAWXV_@.>?S'
MW<D$]X]'L),J#GG;.X7]T,N*X'R/5(_:MSD'-/\-]CIL(!O@]O!$T#OY-2;H
MXB]FHJ9.#ZR0_.4I*W5%JP^/K1+B^K#OJNFH5M+;X7XCY<312X TMYO);[-"
MRZ5? -M#$P'K^R("?CGI#@!XZ6!A\E36D0!X=VKL==O;GK?/=NFG@P &V ;>
M/7CY9??CA_U=^O[;IP//6V<;)YMK[WEK)J=\A[3/]EC[X-,AW+?;.OC0:;T!
MX^W-ZX-/:Z_!B-P[:QVL9O;ZDW_/=KZ!P?99J$")(101G3M&6,R18\8B1841
M(C!*K+Y, &Q9PB))"8M >,!P$2,4%H$*QSQWXG(.^LN=K8WV^M96X]5FZ^5&
M>W5[8[/]"^+?NBFL^4S$OYZ('R>..<NLX]X'KSD3S*2 L6$6*^R]8[3*F,UD
M^U,"_GYOKY\!:0CJ:Q3W*D41OQUE,-Z+_;V!/=K/%FGW=!(V]8/*R($I^Q(!
MUO>SV@2(G$+H^.\ L!?4$,PTP%DGG58/!+T0COW$H  T_'[)264['75C!K@K
M?;MI)XZE!4CQ=T]OH_WZLE##MG%QL)FFPAV'J_[_CCN@JGYP[F"]?7;P3D 9
M#F/OW+?#ST[<-T[:JY\C48%;J5" +8@X,PQ9XL$SLTK'J'3@2BRM5!M_QC-K
M7G_5H[5)1F\Q%ERI:'TTW$2<:(@1<_V+9I)EU1>QZINKGY/BRE$JD<0X(2Z(
M HR']0^&)DP9-\1:6/4NV$B]V28E&0FNN_*26:XH929FBG;!X;?@DJ!:PQ\%
M#K]H*%A6?@$K_ZW]_K-VWD0A.8HV=_7U+B%GF 0=":J=>9QI$)=6P+.)L^M^
MWE3)?[>;9MJ_#'_:_Z7ZETR[T.$?>TN!:Y!7<&P?HVFK&=\?9NUS.&E1 _KN
M.DV2;JEG9KLES;$=+XQZTCGI51[S8VF8=.]FYDGKY'/BQAFC.&+>&<1ETLAE
MVDTBJ8B*D62TRFWI9O-,OO<EN]8^N)WF*?O@+O9!^^2SD=HJP36BPBK$P59&
MUH 1$CU\0J6EC-*\#V83)6[<GO"6JJALA;OP/,$4-10S[CE&)B2 !"L]_&1,
M[IT1A"48C%'\<TBH KX+4$3-<:.+RE7ZGF"R&G+(KW*\<L>_.&E=/+?R>&L$
M_QL'8L%QV_P>WAF'90^/!G$?KL[WV>CE@%,55[23-FV5;Y7C=7L]\$C!L\L!
MS?P<^WU;-> 5>_WCT8*>G[]6-[VZ%<'SK;K/?CB?BXM-HC]D\_0XYF9.;_(,
M??]6D;,KY QO;GO2WMX[;9VM8S '5499RG*#&FH1QP[4L#4!T<!"IH+E.IA,
MQ[9,'I$>+OMFT?MF_61S^PMI;:_3]MK[$]@_G['P*3B18)4X>)!>@A\1F48J
M<2S!KDN1@]XF/P/K.NKMLG7N>.L<['Z6+"47)4,"I\R_8RTR)$2D$ZPF>*2
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
M<,EZ'&2.!6,+QCX QI;CB+J@[MYLK-*(J*U"PBF#> P<F1@CL@$KH95U07E
M7=749E&)NP5T"^@6T+TWP[8<#3T<W%;_59!;P>W:QF=)K??,<62]28CS8)%6
MGB+CB Z&,!E8)@!4N&GPK8G!"N 6P"V 6P/ +:=TM4+ETUE4UL0YJ9"+G"-N
M5.XN1A12VG(6,"%)D*4539M\856J!90+*!=0KADHETX4#X[-^#(VZ\2TH$(B
M:A@#;&8"Z4@U@DUA3%1>$B_ 8FY*MN ./@\(S=5![%\C"P^%_X?.UY7_P#_3
M@1_:P5ZG5SW>5%!\S\),JU83_4%CM!\;I]$.&K$78FBL11\/71R,9YV19@-D
M$S?^Z/3@F_UC>%H8_OGB?#5^\EJB>JWJ_<]7:SSG\'I=>S2,+Z8__!TZPZ.N
M/7W1Z56#K"[Z>W*OR1+"[2[/=[4>XX__/NF$T7[&J&4\QJG)$?CDR9./EZN/
M+NVA\6>4+!-*K_P8+Y,;?L8TO]&5/QNL6>94EK&6L9:Q/O>QLM^[ZR_2@AY3
M+6RED"X8<L/?2 "Z1F[,XZK7S%;L<W[_"_N@L7UZ]*SGXI4=[C?>V4YXSI,P
M/J-N7#BD?LZS425(-MX=#_R^'<;&NT''/VL1F41LG_,4M..HL='S_</8^"-'
M2'[,4KYI^O"5[O1U:3;@#@\T,1NO-ML/G4M\G:A$S?<9P1,J:EPFM?X\U0N;
MPZ<=X'].\7M,/;7>,(.QXCPDZYP5.$9--$N:CKM@Y/!]U06C^J&D9_\R#K^_
M"V/9_;CSK;7]\F!S;1WO'NXP^ [[=-@2GPXW6&M[%;=@S+-Q^->=UB$\=WO]
M6^M-B\-W.I_R\]?"X>Y9]W#WP']KK;W_UGZS\^W?L_>S#"5486]%PH@X+1$G
M)B 7F4"<RL@-UH'E.D8BF[#@CZ4A=$&_@GXU1[^2.%T//)SA<<$Z\A2C0[F5
M)^)>>^1L4,A808UC5AF9,LFI,+=NXUO@L,!A@<.2TEP+()S#=L.\IAH'@0(8
MB8@'AY$F)"'-..4Z*!FTR0<O35ZPL&!AP<*[Q\*2;5PGP)SA!!+11H<U1M3F
M9AF&)F03]2@8&3@EA -\+JWPIBIX6?"RX.6#X.7SI4NZ1V2<H4OR4D7%N$<
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
MT&%]T:&-62,%'>X9'19"*LI%(PV+2-&D !U,0L91@30S-6MZHE1O;$G1P8\
M'9YJ^LA,6DJ.R%V'5 HNK1Z77GSY<SE3,\&4(ZYRJBNE%L%N121UT!90AXB<
M_TY51YB2Z+'&@KNJ>$<1W+L1W$\+Z:@^,4^=1@&$%/$ GH9)(,(L*.HQ\6!V
M&G W<$?P<CF[QH*[JF!$$=R[$=P730P1A'?W^0[9^_C7>T*=%9EG2RL07P[;
M@PP.!DDKHO=..^("2"[I$%%4[AI+[JH"!45R[TARORU(KA=!4^T1YDDBV*>$
M'( MXLE&PT72%F?F+-.AC\!8?JJI$0T#*,P:K8 %]$E$--N8)U'OXMZ@[^=9
MA$H"^&K [^N20('C2FK*.>*6"OB'*+!:O$=)V,2(4(E9M[(4\'*_T5XT:&-F
M1$&#NT6#A>A#-(1ZSQ72-6V&B1'IF!A80AR\&R5THKZ@P1- @S;F0ER"!D7J
MKRGUBZ$+)N P>TF0=PP<( 9>D(V9,=PZG$BPG'BVL56:H*RSQ+<QOZ%(_(HD
M?B'D@6T*<&0$DB'G0V?J"R>%1P$;+IS4.@KQ*"3^J>8L;'L/,QB/JF-[DJ6I
MY@T=G.N"TCN3IR>6V?#3(Z:_F&WLRV9?X3TU"DYIE>?>7^+"*P3)DR6A$:^8
MDM(9%(,VB&N.P2WR%#DL)9$2'"*M 2,[3"\R _W<GH!PN<JY.3BTC2>C@,,#
M@<-"I(11DP <&* !UX@;Z9%Q&",X#D%2D42(=>M(J0HXK"DXM(TTHX## X'#
M8D#%&# 9.!4(YS9,W%".G+<1):^-#<)['VQ&!\(66TH6=%@+=&@;NT9!AX="
MAX7@2[(JT"AH;L:8PZV.(NUD0%0S#]:#M%B$.L>3F%8;#P^8:C(>'#\0!CR/
M*8+(A*K;]X.C6(WMUUM'6IY$@+F-Z2:SS3RP7R]%P'+#?%/P^S875/FZ=[ C
M]OYZ;V405'J /4XIXE$PI*7GB%BO613>@)-=;I@?*QS<9VSEH?"@6$2W!85/
M%T&!,V%LYF#G'F/$K29($\E1,-3X2 5.)&9WB8O%(MJKVT,%#=IK'+0QWZ08
M!W>, W-Q$UB+_8,W[[EPV5'F*()5B+B*8!U8!VA@?0HX&IN8*-;!8\6#^PR?
M%.O@T:+"MXNH( VOF[8A(K0'\R Z9!FSR&JA N68L2 ?@7GP5%-5=LX")=-D
ME2>6CO*(LU&:O0/ FX:-B_6S^M#(61MOS:7&!K&HP!4*DB+M87TMC\I),(MM
M+-T8'BT(/.:TDT44*-)^TYC'*1F[E1QKRI #JP9Q9FGN4(L1]XE2@S6\Z,&H
MH8O]:5MT U2$?&U:KA1-?Q]QCND-L(@J.!,$PM($Q$G0R B?$ F$:W!R%(VQ
MJ/K'B@*/.4VDJ/I5!C"FXJZ,,$D[D.^H*8@[=\@:%5"P!K- O<5$MU[7WR!\
ML>PCY9VK?>?:)]PTQ"Z]0?\#&L?AT1-.MKG/LJ:[B)^?57+.O59O;]$RU],R
M9$GX2'BBC0P$W$C%LDT9D;-&(VTU3]K&J#W-)9VW43+ERJR]#F4;\VF^)_'%
MO5P1$BR$EKBV4CDID/52(\ZU1Z )%,+!">$<97 ^RBWZ8X6$^RQ1*E9 RV5_
M,;24,OVLI YY'AWB*=7WY!0Q+"+.G _<B^QK%BM@/46^C8DS1>17*?*+_+4V
M)L\,1E81@CB-$7YR'A''@_(12YNRY6](FV7^ ;-C'BZV\;OM#JO/MC>)U2!-
M"6LK.Q6EFM+E>#+TAW84J^-AU]\J<<8-AB$.$4SVE[QSHT&O&ZH\Q<>(B(\G
M$C*C\5X.C+FQ>4D?7!D\TB5Q$>*-(L9$!%901%QZA73$ B4*OR<6&>=^8TOI
M#EY"U7"SJ[:KB=HCNH1[JMCQP#&5@AWWBQT+D11O;? V2L2BIX@SDI##2B 3
M<=+"L>!@Y[<HZPBYZ% 5['C2V/' L9>"'?>+'8N1&"^YQ(I@Q$S.Z^.UX>$"
M4D%(;JBSC(6-+68ZS.@"'@4\6A3%*>!QS^"Q$-/1%A.G+:"%T@IQ(0 \B. H
M2.LU_ .6J-O8@K/1P>PQNRU/,J7E3Y#(:A1[O3BL!@X&4POF4TMGN0X<JL@Q
M@& (V')*F"4V)\]3B65(SM/WSS,<8H()^G&ZY.MZX??/UGVG_VS0[\=Z%']W
MQX<U"HZZ^=?]-$/0 GDKA#RV)$YC-7,\2(-$(@%QZ7(GQ<10T"$0KI@Q&N>+
MJXZAMP:\<H/58EEWS,C$O/4&'"8FK&0RP1\8%UI0X>]%UHLX7U.<%T(G$AO+
M9,#(!,/!@,$!.0\ND%*4*\QLXA(4/B>WCIL466ZO+$>K%!:1*QXH=S%:[9./
M01#&0+KU_<ART=NK%/3%.(<.@BD-7HH-NNXC*)')80]A3 BYAQBC8F.+=21;
M3#TMLKXVLDZ5C#%09X3 7%EA.3,^&4N\#)'X4&3]\<GZ8B53$(EG4@+MA )9
M5P0YQ0V*(F8Z?!U,36PM.T;=.J;9QI231Q-B>&9'A]6Q[8;+EKN)]33+] N#
M=0V#2>XC5,=[;A%V;1W]S#_N<@76!KU7%F&919Y?VI.CV!^/#@;3H/(,I./H
MC^&@8/5*L9HORWNQ@6D<"!+4:(!JH9')7>V5]DX1I[W)7'I"=(C UX3J%4C.
M:I'\,NNL@%T!N[L,,16P>QBP6X@V"6LB<\0A++U%/%@&/FB**++D.6<D8M(D
MZA2P*V#WM,!N93&X G8/ W9+^G6;:*6-$7E068@G[)$3V" X&X%9S;3A.>(F
M.DI<-^16T*Z@W6-&NY5%(0O:/1#:+<0<@_*Y8Y9%0A@"MIV+2#M&D7#:>NH)
M40%L.T)X!S]^N+LT)OG/<4[3@_^&[N>M_X5_9I\XLL,/W7X]2@72-!T:&C;R
M0S:IJ'&S_OB%></W]^SQ*/XR^^'7V==W^[44UA_Z=?H-TU6"QRV$.?/$FY=_
M_=(-X\,LMYNXD=UI,'7ZS=.7-^N7+NQ&\QJCF^"57?HRWB27OO:]Q\)*2&)N
M]-COO\9T&6P9[)T-EE[ML5>\M[C\^E)=Y8[#@R:,PU;9!J#%R3ETO^U*S%T&
M7Q7_6[Y$.W_O7)I:>IW9/J$E^[W[.5:OQW98%NYZ"[>]^[PLV0T(#LNB76_1
M#@9CV[L.[C]^LH@7HS'XE.,8JG1*&S'ZY2H'Y]H%']<]5#<N 5O[0;9_A(][
MD(6!^!&]<T6%74VXEK4\7ILSL&Z3Z_;(H])7FN+:A)V9XI(((FVRG+.D=?)1
M6R65D%BG$.IZ77*_K&OY ,(++^ M8"OD&/:ZA*,_[7[\=+)[L/?QW?,=NOO'
M+MZE;\7^\]UO>]_>L'?/_]5[]P>,[>C%R;O7%\/1?YWL'^Q\W:5[\(RW7]Y^
M^^O;NX^?X#MVV=Y!^+1[].]/[YZ'H[<'_^K]Y]M?LRR#\>[!]I?=Y]LG[ZE7
M/B4OD,=8(4Z-0L8DBS#6#B?I=7*Y+%>V/_GUVIGN!;O6%;N2HL$Y'$0*/'AG
M,!9>)"P5"<$:TA;L>@+W;/<&;/L7@2W2:*EE DG/'.(J**2%(,@$@HVU+GFO
M =@Z7*UAP5Z!MC6%M@@HIFD(PJK(%5'&<VLQ%P&KX*W2;82V]>/"OS]S[>#-
M66+H<T"V#^^MLHI&3)$&.QQQ$A-RFC!DI.31!DR\Y6O,A5^0;4V1C:1HI28)
MVZ1Y--YQ&HT1FN!$J".B+<A6$.R:".8O(A@S@7L2,Q,4E8@+JI"-P:# DQ:,
M6L6EW=B2:\B)4L!K3<%+<*]L]$%DRA\*SB?13$;+I",A&>O; E[%XUPELGVZ
MB&Q>"Z-C"+DND2(>E4&F;F/@./R7>"<PS3ZGPFT"MQ7=,S^.2XQM[V$JXU$U
MC#Z"8( LW:8'P7HS8+3R$J#IN]*\\]7I)A9P6R&XO5F\)Q#)@77.,*)1$,0M
MQIG,+J#@0[;48Y3.;VR)#EG2B*FT]UX?1&AC:+T@PCT@PD* /7GPW+"5")QU
M#,:.-\AJ;1!)7FGM/*>$;VSQ#MC$!1'6%Q%:&9$NB' ?-L*2X#2(/9?6(V)Y
MKFPC.I-\:V0]' ="+!92;VSI#C,%$]88$UH9RRV8<"^8L!#NM2)(IBU&T3K
M!&<4> Z:(VNTT5I3)478V"(,# 5>0&%]0:&5,=(""O<""HN14F6IL"0A!EB
MN(X6N40)LC)0$U+ .,:-+48Z8%NV"!2>5+[W3O\SR,9@".)2&GD\IA#I;.-.
M"HRM#L;>+L9$N>!)D>!0C#@T_= <YPY1[*Q6T0F?><))AX@V7?<4GO G$!,M
M$' G$+ 8!(V>.FP(TIP(Q 7QR#A,<BX+5B'*X$*=9<Q,:16PQA#0QB!H@8"[
ML0(6HYX\!<,(C<BP?#<JK4":&(D  &)2,AENV<:6Z@A^7:K6 @*/" 3:&/4L
M('!'(+"8U>I]I#Y9%$#I(QX=!1"@ 27N,,>4"2-K9T!I64!@?4&@C5'. @)W
M! (+8<VHI576!22BI8AK >X M0I93;T3R81$8F;V[.C;AS5+!N@MV*DJWT3^
M*UN+3TD!?4SQS7.W-O5V%F!;';#YQ4"G\S$0XCSRSGC$E73(">J1<-@8%0)V
MPN2&B)B4&]QUQH(6!CJ784$1]VN)^T)0DUMNI+(&$9NRN&N"=#0$&4$,\0:#
M%<-!W-FMHQE%V-LK[&T,:?Y(\1>F@9OK_,6P)O.66N$]<O7U9G0&&:E%#G :
MYW&T8 "NC&F@0$%[H:"-@<WB ]PU'BQ$.%V0QH?$D*119CR(R$05$?=>&IR"
M(#2W+>D8)0H:K"\:M#'"6=#@KM%@(=1)0U3"J8 <$QQQ300RR@E$<VC(!TPU
M5KD@E)%;9SZ4!,Z;"?7+X> 8AG-2V7ZH(HC/<6[\57(Y'U.L<[:'+WL6\*VA
M\ZBWL6#8M3#LPV)4TQNE@^8846XRDYH +(M4(J+ ZP%K5SBM-[:4*?>UZRSS
M+8QI?D?FBU&S.D!8B'M2HKE2GJ,D"44< RHX01V*8-WPB!6VUM3YW)(42%A?
M2&ACY+- POW8"(M14*Q=X)1%% SUB$O%D5,6,"*R"&:B<";R&A38K4O:"RBT
M%Q3:& ,MH'!/H+ 0"O5"$!*Q1Y%B<!U4H@A@(B)BHHZ88B&9RMPWA-XZ(:*
M0GM!H8VAT (*]P0*"Q'19+%WD3#D;0H([$6#=, &,1J98-P;$UPN Z&WSY(J
MN9\WS/T$T0#QZG^H>M&.8E6O3S5(:#**J$X%+9F@=Q4=[;K5 MWI7OZ9M_)5
MGM1^>C-J/EKR0E:"<Y_FHZ9L_V!7O/>2<VIL FR3%H$#!*:/Y9GR&+QD #F%
M-2U9(4\!#VX9.2UX\!CQ8/\B'@0-)K". G%C<P4\ T6JK$*28ZX8$5BQ6/#@
M">#!;<.F]XP'1>ZO9P?,14;WOGWZMO_7>X(=$5IS!-N=+8% D8F8(2N<9T%S
MC17>V"*W9[XH4M]>J;]M7+18 8\3#?P\&N",!@X3E8)$BIF<'2HQLM0KI*E2
M$I"":Z6*'? $$.&V0=%B![1;\C]=E/PH@U+>$ 3_YGYNP2--P TPPG$3%56Z
M[GK4*CO@2>6![O3'MO^AFXEM2_+G8TK^/-NXN<SV@T/;_V,P"%^ZO5ZYT[FC
M6&>3$&8$<7 "<I<C#!X.$P%93RABQBB5>(R*^(TM*CH4%V:O=<:&%B:)%FQX
MJ+CG-'M<L<@E%\A;D1#\%)&UVB L&*=2:DUL;FN@.KQ@PSIC0QNS10LV/%AL
M=%8=![9C8@XL!^EXY@7.85'#D4P %SBI)#C?V!*THPLZK#,ZM#%MM*##@\5*
M9YEBGD5#0DXBSYEB!M#!)' SDO.!6>,4C:'N?B)$FU+%"CJT+%1:T&$-T&$Q
MCU1A<#.Y1M03B[A3!#P+FCG%/5446\\5 \^"RHYI%3P\J4S2F324?-&[#J@6
MW%D][KSX4L<R+N .^*M<4O!46'*(JP"XDW,\,<$,8\.B2'ICB[(.;55/MG*!
MV])H9Q'<NQ'<!8-!<BL#<00E%1,8#!$$5RB#"&&>>J&L%')C2W8DO36519';
M]LKMJB*116[O2.&2F=*MY?;YSGL,_KY0G"(G"6A<)@.R28/T*N$H=LJY0#:V
MA.PP>NL.@D5RVRNYJXH2%LF](\EE%R576F>TQ!(%90E(+@893H8@)S"%OP?*
MG 5;F70(+;;R&DONJB)X17+O2'+%1<D5+D;M;4!!LURU8",R.<2F>)3>$]A"
MDS:V"%8==ONVO25C\38]>F#AT0KZ]#R)JX0VIB_6N[@WZ/MY=MX"8M<#L:]+
M(G7&QR1\\B@DF;,+@D-:L\Q6)Z.0+@3+ U@?LDVW ^7RL*5ANGN0^%)UM2(D
M6 S]$=AJ+W1.':"(IR# #R$)2<\8\TF:R/#*JJX*&K07#=J8AEC0X([M@L6
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
MD'G5$CW_I&ZS?C]M\UP-TC3=KK)38:FOMHXG0W]H1[$Z'G;]0C?9Z\2LKM3
M^!'!WN/Q;699QLO1+Q;NE55B(%[BZ6@L<3+6(2TL0*#Q%FF5.&+<VY1<#,3G
M]ABXP\VJ^F-<6=H>4=3["2/( _M*!4'N%T&6>$XR$D%#O@MC&'&B-+*1*62%
MQ0K^\58 A"C<P>S63+4%0M810A[8]2H0<L\0LN"(V<BQUH0CC3%!7 :"K!0)
M!8&9B=8EJ]/&EL$=P59% 7?G$/*D+I;^!*FK1K'7B\-JX& \M? ]M4NE:T">
MYKF/BW%4.,69@@-.N<+!2.F$<"R]?YXA#Q,0AQ\G%+RN%W[_;-UW^L\&_7ZL
M1_%W=WQ8(]VHFW_=3S.4++"V0E@C2WPKBYUS24AD*'&Y>4] 1F") E5:4A^U
MMGACBW7$[5VK$EENKZ@+2P)3/H&=+#G5S,;<T\DHKP*7B=LBZH].U!>=()X4
M8U''W ==(IXS@!S.9(\V, %6"\<.+!B".UP785]C8<<XA1AH)-P8'L KU@R$
M/W,8.P'@[XNP/SYA7W!7G-->TYHCR3!0[!P<%QH8(@H+!;]9KK*P\P[6;2J
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
MP/S\+V$RS-=Z1?BO)OPG%X2?:QL%%AQABTV^6Y+(<9V0$E9X$@F1!H2?G!)
M30_%UE6,TCNJKBCVQM.Q-YR.-@'<J* 5YRII8H+TE$;)I*6"UG!#9G"SF&-3
M[(T'AYR]B_:&#TH*T".(J>01C](@P[A"3B7*M!3.&KFQ942'*%;LC2=N;]P(
M (J]T1KAOVAO,"NE]IJCH'/BIH)] ]_#HP 6I!2!>>5"L3>*O?% ]@8U#BNG
M!"A[QKW0+@6BG/2&) 66\/4I18J]<=^0LW_1WJ""21^$1U%'@7A@&(&WZI&+
MT9/$""5<Y+YB'895L3>>N+UQ(P H]D9;A']W6H@]QRE$+6:1"0;B[PCBSA!D
M?- H21R2E=Q*JS:V]'<-CA712K?:/#@8VA"/[/!34X(PSK_6)[L02E]>^2.E
MC$98YZGATG'G4PI4$18<<3RZ<AW2<L387;P.">"=*$(P$MJ#N:"M1B97FD6B
MM8TZ!&I=S4&FS*T[:[285/9VZ-9:J5ZJ]&\DQD7IMT:$+P89#.RB-CCS0K.(
M.!,<.6T<(@$,.DVDYI2!"(N5!!D*2_,5E:44(F+,A E.<8NYT592B2V)U#'E
M2BR__9*V$,NGTC"PHQ5BAAG$<:+(6L^0XE'0J%ET.OO6K$.X*<IR+93EC<2X
M*,O6B/!%9:DH=5)@@U*FV^5>2&1S2VY.HS">P[8R7I3EO0>BJ;!,!^,=QMP2
MIK%T@1NCI<&::%$"T:V7M,5 M I&T>B0C-HA+JE!&H0/":5I$%)(V.Z-+=/1
MMV_96'1E*W3EC:2XZ,JV2/"2:'+D @P>RQ$QQ.>FB09<2QU0)#9Z8KBE'/]0
M6SZ%$H.]4Q+(*0'<*1'D;9K&K[?2#TQ0JKCV28-I':RE,O+DA.74>&-+=GW;
M(>.OQ7"R=\YIQ3 *U%K$E0?SFF"&N)-*,F\(,1$\Y([D8D67SX_T?GEME/Z-
MI+@H_=9(\$4'F0HPS SEB%FI$=?<(9V$0T3KJ(WP3N4^R:OQCU?8VGR]5:6A
M/JK(O=/8<1; N ;7RAC+K)&>!E>"R:T7M,7$<*$MR)E$,40*JE(H9!+XQ])X
M1D2H&WQM;*D.%K?VCXNJ;(6JO)$4%U79&@F^J"JMEM@Q;I'C(+R<.XQT" &Y
M%*2-CE'.<%&5]^U5:HTUHSB1Z,!Z818[Q;GWQ(E A-4EE-QZ05L()7,&$&G
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
M <\^>?OW+OSM#=T[J)O5?/O/MYTON]_>O.>!$Z5X0LQ)BCB)%EGN.2)&!@)
MBV52%_U+XV"MB07\EY3;P+074L&Y$T)&"L[>1?_R]9O?7K_XZ\V+O8/JQ;^;
M5AG?\RS;YLLL=W5_O CG%\TEDU->5 @$%EA@+;$06@;)6"11\XVM_7[U>W3#
MN@_"U.YFG=Q=P?;[@TG?Q]#T6QA,AI4;@)W?P-00H&0 \&,S,N;&"[;*@)F!
M#SXX@?_4_FK,6'IL3VKJ>IC$KAWZPVJ*3RPW2JCQ\7#0 _^S!M!A[O<1SMY+
MQ/2], 9;@8]:WYC<('T+8,IYY8G&7/+@E:&,BL2)"PPT@Z;O=_+7@ #3[V9M
M/9].:_2RF=7V$:S2^.P[KZ*8$7UR<O\"[WW[]%YQS(AC"@G0';GO04(6<X5B
MTLHJ1FRT:F-K24OQRM>>]&E%P6:UTS^]5ZN/*YP;> MHYZN=6]B27M-4I?HO
MG'UP7'LGK3NRQH*8!AX!$0DG%I:'ZF@C"]I1J92>'EF66?7/CNR"O5F.[,V.
M+-W[MOT>!YE8< *%H".H*@_6)#BA*) D%<D\DBQM;#&V>1D3R<63N\2H>H2*
MZ#:*I3<:7%6[3,#$'L)@LYSV83Z--3V,QQ,0-'".<GKAAZ$]:IYB>[W!E]&I
M@3SW-GCJY#C+[G7NWFP"U6JT2 9L$\\-: H##J"V'N;HA5FN,1:OW%[G0;\Z
M'<S+9LC;IW-KY/&*G4<?^@KN >10[(+J(!9;0Q-%&+P,\/T#N/TN2@3FMF,X
M<A-,3A[$^%)!G-W$U=',X;F(YKROUH1 \V&;G2TX1[ECU*@)W [CYRZX?:>O
M9O^O#L'.'*SQX7 P^7 X4P;UR>>;N5U9=33($>BYUE'6Y0!\'LYE)WO4J48Q
M5GO@5U8$!.CUG/+YO]6+_TZZXY,EF++8X^Y*+?V>7E-%=7E3Q6OXNH*<^KJW
M:,58+_O56S'^R+>>)9^C7"SZB^"SFHQN'ZR!\2\H_^6!_.^=<3RJS&8CF(O_
M/CO,H:Y:J+)X/>^.[(=A;&)?];55M>U]!DU;WZ_T9[]F6<X?^/VTRQI\U/<&
MH\E<$>IW5DT]F);=&_0O!E^N<_SX%4(MK3\.VY>?!WC"<- ;U9L+^A/L!MC1
MT56V]%[:5RZ?U8O/MC<Y#>V=G<3J%M-Y.#OP[YBMHS"I[_W@Z^.YV645%LYF
MZ.=G>'PZP^HGFUVO5-]W@G"_FO2R5K.(B)_BSU7=X+/6LB^^^AH"0+#'/W_W
MIK"!@UHSVUQ#TST^=_7X;' $:W52Q_G4KUEK=_OY/;TJ?HU^,NW.F+H^WUS6
M8YV]/M>I<?;Z"/1STXDZ7QS/C_'<3-S/FU4=N<_(5!NF9VO56?FH8*FG(>7\
M59T?7*M><9_J>'5CS^2Q@.$<^_4'ZNG,6S"G*](TO9P^^RS #1;-8#C7M#-U
MLUL-.G+BCKKC2[8\&U2-5QVS,Y['-1KE'T>3(Q"&QB& $3</C]-<ANDWCKM'
ML_OU41.42MVS\;Q^\>QTV8>P:<W4\WS TJIMN68Y1V?Y$;TNC'2Z>Y<M&'P
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
M6"[ZPU.VF5IFX!C9J3J#5;U,;]<%NO GVY3&G7_K7)5M/F+@^S83.)X,CP'
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
M2H3HV/^Z).L3I4*3ID2=9TH"'2N);T90E'6:$F]"<&<IJ[+V"IEH("I\(')
M'JK\FV"/7+('T4BU*FO 'J5J6:Y,"APC-@"7*'(!P&1ER$/'?%AE^39UE\ W
MP-H0[F:<(+/W+4)EW? 5]KA))UH>4$D$*O.*2E6NJ%5 95G3 8_QFI$ E9?4
M;<-+UN\=2TBH5'LRL*3MY;45RX*S-KH;><.)7BZYP*<B\)E3?.KP1IF4(<+5
M2GK95X]3LII-MCGYI#?H.F-*EZCY5E*WT611JJT;<&\3(-7S %)5@#2G("V3
MDJ*7%<RW*D0K\^IO?2F0&FA2/:EG6!0AA.]@2=M$&Z]JH'R=N6HZ=5U]66>X
MDIL^%JHF8"Q@',&XM- 9W@".4]<^!8Y3<:P+' L<1S@N3^+8M\&K!K)JZK*1
M0&0J(DL"D0*1$2(KJ99U_]#P "9'AM=Y 40K;QBB\V;I6G&:?2ZN\3)FYF+?
MB::AW1KLXVH9453R3)\50IX]&#B[;?/YI) "84_JS=_)YY0)MWO$*:;DW =Y
M;GM#YG3$*V>S5-NNQC@MPWRX<QT@\'U_<-KLOS_$<U_O<X=_+=IU[.'0IR*5
M4]'GS"!>^.@RH%L\_AUY_$&M)=,]9N_[8N+_9_0&?TA-9V1BDX7S2^%9[.+S
M5('&3>K@[@C^/%6R+)R%3=[9AWET<B$=X9BV RG+P<CU1@97:#EY-CNHX235
MS*%T->I2B:C&/M$^&I_\@C%G@/%'_#O7U,3S!.VXE4 ;Y=IP6T:?>OL7SUTZ
M9F>$3Q19WFC!EY@JV:>*\FRV)W&O"-R_DX=Y="IP+Z9*XE11F(GP,:\(6_\N
M'N1\.T\J3/+ZJ#")8J+J<C:\5^62P/M;G2;,-(1X%S;^S3[(.-[GVO?WA_?M
M+.:1SY]W8"UO&_?>Q+U'3K?KL&8,T2ZDL#UGH'HYL1]H7MFDPT7K!G ]CB7A
M=J78?EN5!/MMV>+8$">GW9>XE)CT[^'5.5L1ZXXL>B!]M#^AGI_G=&V^U^K0
MZ/J5*I0)&W^TIX^XCBX;)N\%7 07&F;[I?#Z7=JA?0]W19WU30=%F.$D\\_"
MUM8[3A?W7?TNG?QO9 _'^+7'N=]BJWVG,*[\MS_"T3@L#6<(#R]<R8M]_30<
M^^A$A8E9^7[PIN46;T<.7(IT:=Q1+I0+I@@GX[$Q-& &0(#V<0(89Q$PN$XM
M_( ![[ /H]5A\FEVHLQH,FY'^_"_Z+])$Q(3(O2?WCX^J@.E'#P_%._L#P_V
M\9TM*3=^]C/<,_^>LF5UW)>)'6K>XIVEWMKUJ-6SV02D7? 57*>/R.F.>2\>
MY"V7\7[A#=[U;VDW?<9[ %&L=41)>58!B6A#A&+=(QB+ 5@.8^BX8VD =BCA
M]FT+G+FV81@EHBN*81D:;2LM5=.K;6+*2MLJ6VWM/U*5/R0,6DR-LXIJJ?$Q
MU+7I,<1WUCZ&Y<0Q/ /C))%2(14:H2]PS7584^=)[):W-R4:X(FG7N'&]&MW
M1JI6GW+TIZ1CLTYQ-9SB.R-PNP4YX&0 79]]:=2:WZ].KF?F7?K-;<V 7\9B
M1T[^X &[,?>8QY,249$FB?[1^A2&E&'/D<E,-'P,,T3;\\]WQZ0*X!<Z$+):
M([ TIC'RF+RV[?G&!G^]126L0^'E;*CQZ7>F;#&%!"Z8S0_8XY()HSY\BYW0
M& T[C@MW;<W2]@Z..;B#$/\$B@I^^R:%A4ZJE(5.MZ'G#! MR!RFRPHZZ^6"
MKF332%[FM&I!6U'0>9%,=/IOKGRM>D$FV32M,\:!J6%3]>V%36>-ZV;M_/SD
M6#K\?G9^?-;X(EU>71Q_/VI>[TEGC:/$0'G*B)<X)EXKU-S H2]]T)LZ-./T
MX6RQI1E4](K25]INNW0L_2Q()Q;;V;1*?N4]I2,.QP>OFXCQK0S:(#A68NDM
M*;B/MS1?-CY7\@O-2Y=ZMA7(.!YU;-H&?Q%\1Y8:NVBW;9.ZF1-<.^7(+7*>
M,WK)D1N,+G*+TG[@";=HUWD*/. HD3\ 3QC3WA/MVZ>\;1QLN\_>-8V!8?)+
M\)N^X[L6RX?8?F9D6<]Y1[S2:K50ELNK.*4:*1"ELA;W<;7>)7/=QU*A4BZ]
MD8LEY8*2T85>?<V#A_B;(;K*HKA_P9:Y:[@T8SARZ<961=[2Z#3M85>,3-+(
M8)[@748^RP=)4[=,] SWO.6G_Z+(A2>%7@D5KO/$7RNKC]'V@IC0?]SC@\(\
M2/XR="/YG[XOR?\ 3X=Y+D<= SL&ALT_#QW<HHN[7,!3,[';'SOLXZ5K]TU[
M8'1GG=-/6V:G[8U]J/H:I"<ST)%"YF!SU0!RUP9F0?RXH[0I+,5;MQ1U&T)(
MVI6:!7C9[4X%SGDU$1%C_P"^EB*+X:<;HN(KG]%9'!P8@&G^GSE:\+_@_ZF!
M61<.!?T+^I]#_TW'LJ2K@G0:*[O),_''8H&::3JC_A N/#D8X"^:+C6\D4MG
M2#_ZNF#]55A_+M!>E_6WBL+71Z"@_#4OH+^-B<6\>\.]<X;2>4$Z8J)?KYH%
M>GL\%#KH>1V 3$2< ]*=QL5N,:\@Z5R1]+GQQ!4<:P7I;[OKP0&]=4W)-\!1
M@J0%2;-QV"0N!%4+JLZRKFKTZ5 Z*< +\\%S^KGE*$'2@J3YNN5&$"'H6=!S
M!GH^-AYMEDRKTY&W[1(P0<Z"G+>,B4W@05"SH.8,U'SEM."*I+\+TK79@8NA
M?6](;>% YW8 !$?S<=@H, 19"[)>HB@0)F6S Z=<4RWJ&V I0=."IB?J\]8,
M"4'0@J S$/0/^\'PI!_4[1FY929!S8*:V3BL'0R;8JCE% JF"#Q'FG.E=,VY
M8LNQQO"_SK#7_>O_ 5!+ P04    " !8@5964KYO5*8<   34P$ $    &EB
M<"TR,#(R,3(S,2YX<V3M75ESXSB2?N]?@?5+=T>,RE?=T=43\E7E'=OR6JZN
MF:<.2H0D;E&D&B1]S*_?3("D0($D>*F,'6IF8LJ2@,PDO@20R$PD?_O[T](E
M#Y0%CN]]VCM\=;!'J#?U;<>;?]K[>G\Q>+_W]]]_^NFW_QH,_GER=T7._&FT
MI%Y(3AFU0FJ31R=<D&\V#;Z3&?.7Y)O/OCL/UF#P.^]TZJ^>F3-?A.3HX.AX
M\U?VT3JFKX\.WDX'A].9/7A-X:\/1^]F@^ET0JW7!^\.7M/IW^8?W]-WDX-C
M^_V 4AN:V?1H\-Z:V(/CX\GK]V_?4OO#NS><Z%/P,9@NZ-(B\&!>\/$I^+2W
M",/5Q_W]Q\?'5X_'KWPVWS\Z.#C<_^?UU9@WW8O;NH[W/=/Z:<+<I/WQ/OX\
ML0*:-'<FJ[2UXP6AY;K4GD2.BX.W8KX=3</@U=1?0O>CH\.CX\.D)])U2CAQ
M:MXTY62';! ^KVB0WP=^WL>?D<_!X.!P<)3A9(=I-YG-FWWQXQZQPI YDRBD
M%SY;GM&9%;G0)?+^BBS7F3G4!IUP*:*>:2#]'%IL3L,;:TF#E36E=8?E]Y\(
M0>2<Y<IG(?$4.C,KF'"Y Q;R;GM$H'SE3ZV0JRZV#))'5-KO4S<,\-, /[UZ
M"NR]_>I<HV PMZQ5+<YR'\$]_J:.!)+*'G[X\&'_"74P7X)<1>+M!_CGX/!H
M<'Q8@VV11E;G#9\&2;\N9%C/OWHR)/U:RI [RXIT0=>3?PXJBI$_:RL.0M(!
MG_Y-'88!G;Z:^P_[-G6J*/YF<_PC1]4MS_-#WA^_B;];K1QOYHLOX"L$[&."
MVAV=)6N9LC[G3 W^ST>+39GO:N;1/BQ&*\I"AP;RVLX)+!B=?=J#%7Z0+%)_
MNM;D%0B2M%#H9S4/?]Z'+M2]6C](TA?!_[07P/B[5 R-P<^]8K3N<T.7 '8+
M#O/_]\>?6F[=QX<NT\C]CWAZF\[J/CUT<3RGP<-C[WOXG3CVI[U3'XS26VL.
MPN'W7^\N*QH57(9U[X1%PF0MW>\'_#^'9+ V:@>$]R38];?]S0X;I** VB/O
M=_[WIL;'G>,F)1TW=*5RO^PHYW:+OTR&M62PAY'MA)>P!+,EEZ31F"M$M$-_
ME!UZ3H!(%'J$P.GH9CRZNCP;WI^?G0ROAC>GY^,OY^?WXV;J7TA-B\DQ #&&
M4:3)?)!(D9@6$<1V\-R/;RT&3[6@H0-R=HM5EK06N-?5@2._9&C_VE,@Q_?P
M_]?G-_?CT<7H]OQN>'\)OPYOSDY'U[=WYU_.;\:7?YQ?WL#'\];0UF*F!?M-
M&=AK5F1T0=;,"' C&79$\-OAKX6DVWG>G+-6,]YVJAF[E4+!:WP_.OW'E]'5
MV?G=^/Q_OE[>_ZM3=<@AK\7\777,9?(_$\%@!VK.J&]OPNMX:>%^WP[NW9Q6
M(#D=CK]<7(V^M;>V\ZEJ(?U0'5*D2CC9'7#K(=[>="U@H8/T\* )I#V>FR,V
MMSSGW\W]#QD"6GBXV\<)IJX?1(S"![E[CX9][,P]9P;*YH7#Z=2/O! &]]9W
MG:E#@T8XE%/4 G.T"8Q$CZP)DH1BC["ZHP_4B^@=G?IS0;010#EDM*@<;Z(2
M$R$2E1XA<<JH[817?A TG"09 MK1?[TY^J([$?W[-.Y6L+ \&_\Y_RMR'BP7
MGJ4A OFDM%B\4;  "@0HB3\D6CW"Y58$E9YA&'  5FCS-$(EEY 6D[>;F"1D
M."XIH1X!\MGW[4?'=>'Y+^$AO+DS<1LN506DM*"\VP0E(<1!D4CU")8KWYO?
M4\RAFC2;'QD"6@C>;T* W0?8GR"!/@T\M9INU7%7[6!_4 :;=^S1(%]8#OO#
M<B-Z#4\.8[!LO#GG4])!<'2P"0'2(9P0D2GU"!,IG.Y[8SIOCDD^)2TFRD%;
MHD/@?PFE'F%R1AG8B*'S0 /8"K]0>PX#/IS"%T[8]-2MHZG%23EW2Q3YCAW3
M)&NB/8)L'/K3[PO?M2D+T)X,GYOY1E0R6F"4H[=,Y&<BR/0(BO/ERO6?*3VA
M'I!MN)@I1+0P*&?PA 1):/0(@TL/1I+>6T\-5RNYOW;DE1.WZ$UX]QX-^AUU
M\<;-K04'VWMF>8$U1<K-$"@DIH5#.6S'I BG161B/0+GU%\NG9!;,NA5\KF3
MFGJ-O>AE]+00*4=OB9IP5<GT>H32210X'@T"&(^)XUG-IT\N(2TNRGD\(4-D
M.CW"0ZSDMY2A@L*I8F&Q9@G?N82T>"A']GAG 3I$$"*<4H\0&4>3@/X5P0.<
M/S0^*BI$=$@<*R?W-0DB:/0)@[((ZO9BLY5CM,?*F5X3HR6_)'_U*:.A=+#O
MK<8.^2ITM1#6#;.37P3E/@&H!LI;H%9(3 M5E=A['^&18^@M@,DAHX6D/"#?
M1S#R K<M0"DAIP5'\1?D1X/[B%)^++<%3J4$M4@IKH2B$'$?L9)#O2T0RB&C
MQ47Q'V3CQKU$@P=SV^ @$] BH$;N>?<^CGQN++@%$&7TM+@H'H.""',?@<H-
M$+< JHR>#JC7BD.A(.S<1Z TL>(6D%6CK 5/\2_H8]%]Q%&-)K?Q*A01TZ*E
MNA)R M1]Q&<SR-P"G0)26FP4WX$2M>XC,%+XN=7^M$E%"X?B-Y!#V7U$HB@,
MW<K15DI2BY'B/BB.;_<1L9+ =!LGG):J%C?%F5 :].XC='E!ZQ:8E9#3@J5X
M&'(CX7T$2;Z'.K1M3M9RI=/+&0TMI]D=YZJTM? I[@F9,I;R2HEGSEV_"/I]
M@K,T6-<"RBITM3 JW@QM$+!_ *IQNW&T7%KLV9_%/P4PA-9\SN@<S83)\[EG
M7UOL.XR49]\*X%H W25_G4*\4;PF>:%&3,[@$A!_EC0(2$8(,GDF( 81<O#=
M-Y9DIT(9"(=!0+G)<^58$\?EKHS8W@S]KW@X6+D4/J#MPL#JY-91%(1P:&!G
M=.4'<(+;CG)U*)E6[11_CU;MA'1<L23Y4E,]](DD(DEE%'9@+"5)Q-SI)$=^
MNJ!VY%)_=NICT6[[/ B=)0[GN<4\4)_ ]_)P[U;]V@FAU33%5U6@:;$8J&HH
MB(@<)Z*01!9T).?KV4ZC,F#>T/"K9U,V>J#LQ'%='+PMZ4T)*ZUV5,JTR6H'
ML".<'_D%.?Y*$IX[%=C&":8>!RW@BC\N'_#=<:81PG\>;A_C/P]W*'>.LIP2
M5S+V[?/M2HEK<55+L62R\'2(]LJM)(^Z9&0M+&]. \<;NJ[_B"]J@5&2FW8%
M= .66OA5A^\&_!DK3K ECD=2Q@0X;V9N]E$U<BLA=;USU^>B50#UFEM1*:;=
MZJY)U5W/S[Q?VZP"S;EI\5>\T 6)OMF5H"@;N(<SOQR;,PI/-W6XC-!BN/19
M&+OXSY]6U NH[^51F#R+J'9:_?04_IW[['E[:K0U4;4ZJ+C0*^F@+"]O*$M,
M8I'1NY!/[6_H7XU3!]8U9A/9>ZG*^8GHJ3=3;/^.=VHQ]HPY:4N,;?BSI%L;
MU>R(M4[5WBK.^<)L^8RK5/!'PR>1@ @1\,>4Q$YGDM'KVO"IST6K"8J_O$03
M=G:/9HE(-Y'/#,X V5F*>\ET&BTC'E:0%^DM+!CM!-$JC>+Z+EL^I+V*2Z.L
M'7S36DN4W<!VBXD*:AH]&"91TJ'G19;[HY2J#G^M+BF.\HJZM ZAI%(0(<9.
M@?".51A?U)(MVTF;[ $M42W4BO.4WP4+T[M@FX;MI)<A?OF6W7J<KZTP8CPR
M[<_D%BT!K<U("[+B2=VX\)<%><T-/V%3(MT-["?XR23KVGJL2EL+L>(M5>;Q
MSE+,7O9<3Z]QM%JY_)!MN2>6B[[C\8)2^6VG<>;)O2_ZMMG)N^.N50KUHJ^X
M9IJ=[[( )): <!% 4<A:4Y+LFWL_O:[:QWV</SK_?TP=N7 \'"^PBT8KRBS,
MI^Q*1:KST"I"T7WC^ ^1!!.SX39>RF@'=?Y,Q1#$A>L_JK,TW/(:49VS5BT*
M:IJ7K0\\](+L,YN(E)C7>WV)IQ'_,)JXSEQ<=E!FK_1;&P.B)4^=CKQ3W)*I
MCB3KA5A")-)Y*TCF]][:'(UQ:IAKTY[K3C]^C'[DEJU8;P#ISW "%./J6&Y>
M#G>+I:1C$;2:H[BYBXIM9+>C=2M^/DU%*4H:[ZDR/> (+64D-R-6*:"8C1W?
MG0SAK\"Q^=1L=;#M6 2M,BGN;ZXF7 *RW%"FO."9I'L\*3P1AF2DZ:LR_5&,
M9!PX$!,2XQA!X&/HF]H_=,W:MG!:!51\YI)&E2A@$G>)%S0>=TF%W*UU58H]
MY)01:G/V*B6H58.<$A %A8EZ>$!:U_G)*Q\$%J%WZ844'C$</UJKY+I-/%W:
M8-H)8RWVBIM]S;:HK-$ [6"/)-P)LD_O&:4+Q4Y7-B&[@763_[@]K5!8:/%7
M?/!5\$_9[%!6($BFQ1ULAC@SMKX2:!AJ-4!QN%?1@'3R(U>Q O1YXJN5RI+3
MPG!T>MD&^VJ4M2 KSO3<@F@#Z7"!Y'=8\G'I_+Y1319:=-6B&?GH[BX?E: L
MY:+ .F=3SP8+>NI:C-K=8EV!D0[Q]^K+2?(1SR3")-Q(PJZ7R&_6+>PZ/:(.
M?2W.BK]1+9:XRY(HQC;UJGSSV7>8&:?^$N\Q<"G_X?F/WJEK.4OTGER>W-S=
MP:.SAU:^G4X%T&J'XD#,TP[)<Q,+\3.1Q2!<#B($$<F2( I)9-FID1Q0N/1@
MI#%"=$>G%*SDB<OOBO*QZU)MZC#4JDF%BJO9G2)E2M9<Q<U4H20[E0BXO\.9
M1#SX%_K7D0LG(]&&W<+4BH.57ZCEAGC)]!MU9[#EQMUO7<MKY?#;HCA:==*_
M=I97NI0$PAR+C$@DD2D^8:)4_,]8KH02X9+MS!1Y)Q&VW8D%=(>/%K,#F)A)
MXZUL7548:I5&\3-JMBK!=,"Y$L&6KT IX]TB)$'$7PG)QTK>V>-+F[P64+B@
M1P>'KT=+#R9E< EKNX<>'IQ?7:Y#W4JDU2K%>ZG1*BY5K%09&RBYWRKJ)H%H
M!&4CL7 DE8XO2+OU*(,TGCQS0-[&4J3AI=47Q=>ITQ?DEZ\IN^4G^.HQ4:WH
MW]0NG>]2D48X483)/M+EPM.5+%H54CRI>2HD2Z-?=#(E(H50R9;7QY5&>HG!
M+?,?'#048>N7OFZQM%0FKE6$HC<UBQ<G\*H+@CRW6[)O5>C?VB$-,)8X\Z:.
M*VI-@'TYFU&,+>&O&$[RO1N\28+ML002' LN*"8SN5A7(@I]]APW[$8-NA9'
MIS@?<MX#E5&<K$#<&$Y$PC8BY 8_W/#++KSK+RC9K_P$%0M'4NG6??JM=KCT
M^A[FL?"*G&=T1AFC-OS&$Y-\EB0E/7>C5[7Y:15'<09O*,Z:8U(&-&'*=8"S
M); 6I8Q[KA%=>_XKDM;BK+AU-W#>^?MSP.0U(62["[Z-+;)N(-4ST *K.&(W
M@!5U+3+&(T[<Q!G60X"+WIRT=I 7M6A5T;<E4ZTBY)1_+7RA4]8U7_;FIYUZ
M)&/1?8WG^GRT2E#GK5Z[1;_2Z[[6,W0XG;*(VI]AZ62(3AI%:QWB[9"]5D5J
MOD LNU3$,I!8B$Q4K[^QW4KP;2G,VQ5OK=ZH96AKZ,TN^JLH3=Y[Y;K>8^KR
MT"J!XJG,?Z'=;FLIQSD-/B0_#J=_14[@M+4RF_+2XJXX)HMPEP(=:1.9X4X#
M-E!):\5)=T#%K38^;(S:V7MX\%NT3+(ZNU>2=N)H].CP0/%35M"C=36][.74
M^.Y?(I=R"3 6;:=Q8E"380S0DA1#MJY@*,:R8Z6JSE&K-XJ;LDAO4I["6HU5
M8\TVT9J=4O 1NV7^!6[.8+U'+GJ5XW(4W6]#>DY:)5!\F$5* +P(9T9B;J@,
M:WY]!%]X!6\I0ZO=]WC\>#N^ZNH\M( 7^3:!!1$\1"!\9V_*MU"B24#_BN !
MSA_:W@$OHJ5%3G%&KBD10>H_/0WAM_VGX*.U6CF@C?B-^.QYOI"=?P7?4%%1
MC"/G3%9_7F"ZFN]XX1A?WL4_48:)8M:<CJGG^.S&A]WM+*+WC_[]PH_PU'__
M" V>SYWY(KRFRPEE>\2:!/SN]*>]D$5TCWC6DG[:ZXJZAQ6883=-J#]-F.M\
MA 76\6T<@D][=B06VST2 /*A$_*LW<_,CU:?]D1S)Z3+/1**YB$;X%_!1]M?
M6HYW";\AH;W]HH'*EFPJ?^S\M@8\A%R1ZOR)3GEP'8L0!O*CS"PWD" L[J)_
M(C[GO3#Y:2*J7(+H=.*$%1]3? .++\Q?]EP!J7!!F70&U&!5T-H M(;79^6R
M2PT,$/>.KN"\-/3L.[KT;>J6RU[4VH '2=X.@WFRX3#S"J7U^V7P=6=3_E?\
M@A@X MZCX/?T*3R!W[X73JG.Z&]QK,*$2P4U/1EKU'3=P !TL2SS)2Q++,*O
M;QGHX;,H7Q32U9G_Z*VWJ!$FO6#E34!L2JE=O$JV([K%45D)OOIA2;,$N)(5
M0;G9J@/)[?#CXAG%C";T4EGV00C81RLHH?V_$2:=\O0#&%F\$90.>2%LFEXF
MX*(81O"%[. LGWI5>QLP+Y/PS6B69"/'L63)QU9Q@6U"RHRUM*!D*$R["'/@
M*EEIN?WJ/-Z&K3;EK_+<DK$&$K*XQO$=??#=!YCMXMVA%]:4)_B5*WCU_@:H
M>)+*.)K!OR@HFM&WONM,G_5*7:VS&6J<?WMAR!A69L&6)\_K)K=BJ^2W!6XB
M!&N$]_5XR@$Z#/@^>N&S/VB 9ZJ1N$$C+A<4+P$_3H+.AUQ\8X,EN 01M(/-
M%0'-R"1N<6XQ#\0,1MY7W*Y7+@VIG10WJ[J&MJ1JAAYNUI4:>33-0__OR'T^
M.H#_'NI6F#HT#%AEOE%TG5![^$ 9F#%POH)NB3,"WR@SFJ4."GG?"(;Q\Q>-
M1 >$MS17JEJ)?]"%,W6I?.;B#JAR#=#U,@#S^"XZOVI^"S.7T= 1^R)(S5T<
MFY?-2LW\QN2,.0^D]P/ GN?N>5!&OM9+2W<YZG4H&* !PXDK[)[AG%'^D^90
M7MC>@(=1BDJ!VMU:CJU9JK7=#'BTG%CE79HJ?VGC%>V98Z4!ZR2D/,S+@AA.
MI_C6R #L%]XCGING:/-[H=2^<)=_(6F:.XZW>ABY@K$8S;+'!WPJ9@.7"XKO
M9Z/\P '+P)6S=,+"<6U R= QD5PCYT]3-\+ 7<9/*;U@$B"'G\ PY!.H8&B:
M$S3U#(NFSY5O:0(-FZT,6(LV##H,H.(,1DNW(QNQ'LD7M@[O,$@9T0OF+Y-S
MS3<G7)Q&0>@O*8M/B8AC\8):B\:V3HYQITJ1#HS Q\=<2Q\M*^E@@#Y+WDY8
M.2[\B(64>GG562I[32O2,>#A\Z_U!<DN(S*3<.Z!:EY9JP#FXW"U<ITIRBUN
M6L-7?#,2SL-"'=\")U.7]DW;O\K!H;R/ 9IR B*@)^?2@PT8C#\P5.",E^_7
M*;8<:Q$QU+C!C!102*;/8I%;&0#AIE,*5JS4*06''R[H\6%]YY:>C@$/?R6L
M9OWI1FUHJ![F5%:-"^L4/EM9EQ:KZ383<R[@Z+AB/EC^WASW50<US\>4M;EN
M FH[FJ*6\3E98R7G-GUAZ[=+5T":)A#[ GZ(_T%E:NALC].5JSHB"YL;H/-*
M?D&+U 1#\Q)N?!%$]\+-[40WRZOT?.%)GW-1%^;6I6=3..S,')& QN?>17)_
MEY>7O(A<]YEWIK:(01=.\2Y9F)EPFH2,K^*$/;")T\L?A<-2WJG&@]9X) >L
MO3EE%5-HXU>F54B?W6AIP*2M.U6-G: 7SA,<I!86F]-3/XZ[(K>23*"B#EMZ
MDA6ZLBOM>?'E_>%&V8#UO0WTFB.IH&PKK$/EA<&K)&YI(+8.!6-BK]EDV&OK
MR5E&RP9IM+D]#3W;%(4>CYI%+(\,6DN3P$7%P')A<P,>9<S-,1OW7<6J/GE.
MZ[(79Y55[6^J/S-.90GD7)9*R2^Y/0Q -,F*3 ]_TB9^0S7/5K&S 8\Y7OB/
ME)WY/@O&"\JS7 &0:X<Q^*;\(2MU-> 1Y9B@SAVDMC3A 9(*%M?KUTYC[.^K
MYT^P5A6*=^FMHG"C7"]\@F4%8#FQ B=(TXX^ U,LB3OR"E[17FP"_G!!#-V4
M<XZ>XH!9,0>V<G\SLET++R&57#XZJG^EJ9R:"7=F[B@J)^BJY=[01]15D&6J
MCV[K^QFPS-3/S=0>JUJ1?/&DC759R^R]:\V^6*&C 6BC#Q$FV/K%Q2 VO^0S
MV_"@C6:2_S1^-IS"Q0ZH]I1-M7(Q$IUW=8'[%4</E"7!:UB^2B] 5"=BIF=R
M_(@Z#7,5#V0Z.S&WK0%38+.&4YHUF"15<9U$%^K"66D>LADM P9AL_0^F"!/
MR7?I6V%$15106EXV%909+Y$_HIJ5N5S:$C93];_!G&5)T+A<*7*;&H YNAC
MY %K1!\@S+8S0/CA?,[H'$;VU%KEY"JDIXOBN]F5"1@:YOUL\0Q87WM"SVEH
M (!Q\KY8%JMGB&J[&?!H_,AB.?:%SX9+?F?ATL-] #U!TIEY-*L;1NJ \ N;
MTVT*630X2U:C:L*9,HG78I9<\6ZZT>J%P[A-CO"=^@/,@&X(%EZ([T=+Z_3I
MYG%9CQ>>H/$M*VC+DR(<;I:E-?I3>;5G_OIT7CQ5)772:QXMK^5+A_$CO/%U
M[7@8T(PO@8B3Y T6> )CA$NWX8= I^TE%@.TW!%3KUM+N=<CC_Z+6EA.*\,)
M3"<'-F#>(^%:&F\V3TYCHMKQW$CMSM0Y#(O=G%E+C8U7L;<)UE%MF\]P<^^;
MX]G^XXD+_V@L\;R6!CR DJ6_8)1VD^]?@9(! Y $H=-94RUFK30WX%'X^4BR
M_*N6_]'V,R,&Q<4\B0O\QK<%-9.NM(L!B.76?_@*VUW->V!J/P,>;FNQ8G27
M^U&H]_/\0 F,#5-G%V6\<)J_)K^IM[I7(&2 "E8\B93:K?5H&&-3*H !3MT@
MKR=D /*\QEA2H[#F_=-*?<T,360]*9BE[5F8[<J^H_>$GX3B^A=HG@4+WRTN
M_-B(E@E.&?FL4.FF04D' U19N+U!!1E=8#;% UV_;AT]8A>N__B%VE@U;>I:
M09!&UR]\-J9A*,B=X&ORT'-1;@9VR<?0/?&,>DX ]/ 9TG1%739G21<#5"0G
MFRR]\83^$8KV+QB)*\2RO+Q0$U)FKH7X)%5<#&H[ Q#%Q3=.B!$YJ7%9UM+5
M.K^#F>A<6P'8%362_TLZ&(!7E[>-LR[0.ZQZ-)I]C6]U_Y#[SAH)S-0HOG_5
M+CNDZV6 ;JUKCL?O+%9>F%R[>'E50F9X?J2:!N4%.9(V9BIH3KWC*]^;8QQ#
M?RBIUMG,!Q]3UZ4L4SP>9/8HSW]&AXR4!3I*7^Y:K,8-R9F:4WKCL^]^J'$\
M;S0R8%E*(O%8BPO5,-YT1K,SD.+!"OD!(CD^%J-9EXRAIXJ"RF4W-,2LYZ1\
M"!RAW5"XD!*_BJX:3WO"AHY881GX=4PWSH-NXK]I1=C0933=OM-]&P]AR=Y]
M@5DEO*:%M#36M@R:DS;#5L!D JDR2K6B29I.IJ2GQ#,Z7@+61CIWT##V//-9
M^:LK&E R=/&((<H<7JY@:E-:4>.K$S!#KY6:1B./MJB(5-#;!+-B([8):Q#,
MDVG8/#I:1L& !Q9O*QUCS!$VH3J%]JOT-. !TU4'9ECE!+M,VUV*7<)5.X!F
MROK"  HG3^U[G-IN!DRNTV8%Y+3=7GK*=9NZ@?XN7NI?=]K:.E]#[:D[4+;/
M40@G1]W=9K6A ;. OSUK-A/!:;YBI1'JDE<;:GJ9>0J\_*8)9WTS")=3BF=J
M=^A&2\>+-(G,!8T->(POU')Q@XR/QKI%I*BYH7/_E+(0AB&M,:5#*;_U#X7I
MMWUXCF"Z $OE]Y_^#U!+ P04    " !8@596XC\'K*8R   0#0( %    &EB
M<"TR,#(R,3(S,5]C86PN>&UL[7U;<ULYDN9[_PIO[>NB"_=+QW1/V++=[1B7
M[;!=4[-/C 20L+E-D1Z2\F5^_28.)9FZ4.(%ASKV3$253%$2SP?DA[PAD?B7
M?_UZ.GGT&>>+\6SZUU_$G_DOCW":9GD\_?#77WY__YSY7_[U;W_ZT[_\+\;^
MX\G;EX^>SM+9*4Z7CT[F"$O,C[Z,EQ\?_9%Q\<]'93X[??3';/[/\6=@[&_=
M'YW,/GV;CS]\7#Z27*KK/YW_!11JR6UB(I7,--*K(%UA*44$S1W7F/[/A[]X
M=)&K[!EBIE_+*)F'F)E247MK,0=GN@^=C*?__$O]$F&!CVAPTT7W[5]_^;A<
M?OK+K[]^^?+ESU_C?/+GV?S#KY)S]>O%;_]R_NM?;_S^%]7]M@@A_-K]]/)7
M%^/;?I$^5OSZ'[^]?)<^XBFP\72QA&FJ#UB,_[+HWGPY2[#LYOQ>7(\V_D;]
MCEW\&JMO,2&9$G_^NLB__.U/CQZMIF,^F^!;+(_JO[^_?7'YR [79((YGHTG
M5>*?YK-\EI:+/Z?9Z:_UMW\]>?WJW>N7+YX^?O_LZ9/'+Q^_.GGV[A_/GKU_
M1V/I/GOY[1/^]9?%^/33!"_>^SC'\M=?QO$309)2R!6@_[WYLW[]CC7!))U-
MNJEY2=^??V+%T@-L_+K$:<;57%T@F,S2E5^:5$G-YA=_.8&(D^[=T=F"?0#X
M-'HYACB>C)=C7(QD B-0(0,4CFG'.?/&&B;!EY"UR]Y<FZ<ZJ@4-JQ-M@47L
MY'O^V;_6&?P5)\O%Q3O=G';S><OC5S.Y_TA>?\(YS?WTPTLD1EU\\+=7LVDZ
MF\]IV8]RDNB,#T0TP6E\B"R:7)B6()+C BT7C<=W+ZBKHUYCT.-Y>C2;9YR3
M9OOET1>L>NA<R:T0PCQ=H=;-)7;^&[\NSDY/N\]DXR6>7OQ]U7AMN+"<]2F)
ME?QI+ <39/D1YVMC7,-C#/UZBH4)[2/3BI0X>*CP5$S&8$;G6C-C(YIM*"%_
M-$JTF?MF7'@^GE:KMI&@"GCBGFQV(BQ,6Q<8\$BCYI"MB4Z@AL:$N ?2-JQ0
M/Q@K6DJA&376!G=RC@,<=RZ 8LX92T_7B@4'F87@4 AE0) =[LTPGFQ/ /V#
M$># N6XG\]GTPWN<GS[%N%SC'XW*NIC)P0=%QJGDP'P6@D$VQNB2H@^^M=QO
M1;*-[,V/)OO#Y[R9_)]B07I\?D'AXRF^AZ_KI@J7HX19Q5@TPU*(E HB R<=
MR_1*:0KC.#>-B7 /I&T887\P1K240A_FX/$TOUO.TC\_SB8TOXMG_WE&YFID
M2#WY$&V-_7-56(%>67)G>.#2%<<E;^TJW(?IT#'?,LKLD(?(-7-&5R^M( M6
M D/E/ @N-,36H[QO7(,)E@[GQ?65<*  ^B#_B+2P]L(+EAPYZSH&<L84>&:X
M A4A%.#-C>&F[,!@@J+VHM]WRIO)_&1V>CI>UCQI'=W);%HC>9RF"@B4E$9%
MP10$&I@PF0"1F;81$K%1A(BMM< =< 8:$K7G1"N1-./(X\4"EXN1"EXKE4+-
M;).Q-U8QB &9*3Z"]:A,CHWIL'IR@_"?Q/ER_+DZ&TN8?AC'":X^NCH:)6D>
MM#,L>B^93N2-!B,*4^23<I=* &G;1_]W(!J2X=M#]K?$_:VFOQFE_SZ;Y2_C
MR6240BPJ",6XM8+I@(Y!<)*9I-!X)U0ILK'P+YX])"/70,Q[36EC'7695A 9
MN(F:2:,I=LA"LB!\8+)(S$5Z;G+K%,X5 $.R50U$N__DMDWGGRN-[^D#B(8L
M8N%,A+JS$)-F8&6A+\5EP9TTL?7JO17(D+)U#>1]^&2WD_N5W:6W=?Y>E]\7
M*_LQ2A0(29DC$\J0RYQ58%Z0KU6*2)BEHA^U]E#O!#2DS%T+'C2;_&9\>#.?
M$:CEMS<3F"[)/:[^]J?J*]/K]0V&:V ?ER4Q.J6STRH0S$_QTQS3>"6;:7Y\
M.ILOQ__5?3NRP1D:476JZ[@T<!8YS9@52=@DG<RAM5+I?U1#RB V8.; :-",
MWK>$DE[GC#0E+*%6%/(EP;Q/A7%.KZ/+5HATY%S<?FF&V;3[W'^'R1F.$$CH
MQ0LF0R G42+9$>TXDVB,Y%HGH5J/ZCJ&(859!\K]MA3"WM/=SB?/>5S'#I,W
M,*;8[P0^C9<P60-'/D7F,OG,!->D [*K6S^8&:^>I%0VYJ!:.^KWHAI28-:8
M&(U%THPJ;W$)XRGF9S"?DK^QN**CRSB-ER,7DPB.2Z8<)J8M)WVLBV).!6U3
M+D;$UFF:^U$-*=!K3)7&(FE&E?=S,NQG\V_=<%?$7>DXX;P4J"@NS4(S[10P
MKT1B"F,@5(DB4]V8()NP[!@/LA^)%TWFOYV-^<[*+FHE0.32?<3I8OP95UO+
M+V>+FFA\7=[#UY$SW'N=D/'BR*OC)K%@E:EV$572.7G9>F]_1XA#BB%;6Y\>
MA=4PPCPO3%ASGTK20G&=F2M%,EV295W*6@=K>0K):]TZGW@+C"'%<(V9<>BD
M]UD/6+0W2FI/D9\GO<:=8S%:SE(*&(",7' ]EGS<FE$^O!SZ8G N6? R 0O@
MR8330F/!E,!"LE([!UK[YAFTVZ$,*1P[D 7WU4/O,_G-&/[L]--D]@WQ+7:*
M^+:B3"&01QN8@^29]I&3VC6!P@!%(:32M!1;:[M[00TI)FO,CK8":>E9S<ZF
MR\4;^ 9Q@I><Q5"(G()1(,B9-C(SG^@+2*%HR-:DW/KPQ.U(AA1Z-69$@ZGO
MI5CZ HCRGIZ%D8 DTELQ1@8AQWK&T81,;GZTS2WB31A#VG1K3(!#)[W?DS,7
MB'Q4 D7QS*1 #IK*R+R)B@D1R3./$K@H[0MG-N(94N#4F _-Q-#3ONP-3-DD
M'A *(\U$9/4\,A\UKV,7)H(3P;0.L^]&-*38J;5WV4X4/97CI"R#YH$H6<AK
MT8%">*AN+X^FV P(N7DAZ1WE.+N/YL7T,WW*;/ZMUJO1@@K*223%"Q2,1E7/
M/""P&(#;J*P$W3H/O?[\(85)^TOY.H?WGN'F[NY;3#C^7-TN@G(Y-*<T%&$9
MN5^T/'4N+!IZ93B&"#)PSYMO4]V!9TC!4#L.-)- N^)X6'RL)=CT3\UQ?89)
M5Y2]/('Y_!LIW%6>BH:47'3 =!&*:4D.>N"67J$ #3P5D*W)L16P(05([5C2
M7B8M,\>?8)R???V$TP42R+4ZNLNA"]3<@&->9QHZD,<6)=EESLE,>Y?!-:]8
MVP+6D$*I=E1I+8]K1/F77Z_/UDOZOGDSFW?OZ>MOSUZ]?_?Z^>LWS]X^?O^"
M?OKXU=.3U[^]>?OL'\]>O7OQ[\]>O*)OGUU%NG.OFYT>U6LKG/T'W:A3SBU;
M4Y?;4A@*$K,SX\3 E4<-I6BFL";DE,O9MMYHO@/.H5J+/N?[UMN(@A!KA- L
M9Q%I/6C-O*2Q99Z+"V@%-C_W=P7 D-S;5ARXKI?VG_&VY?0;ME^K:7T^F7WY
M!^8/^'<83^N;7>4D>6836"S&99PN2B:[N0 =D@^9J2SK7)3,0BZ&5*KTHJ")
MPK>.B%KB'Y(WW1?E'DS>S1A[=='(@L6@SBR1R6;:.,4 HF""FVBDU#F6ULV]
M[E!3^V04+C[I.7%@=<;SC*SB>2YG-ET\P3*;XV5S!%P\^[J< ]%Q/(7YMQ?$
MHNYL!OTE$8P>\^'%E"2&B^7(<1&2,9I%4*100K L9@]5O\A";@W]W[JQ6X_#
M&9)!V)^#-_,=PY!_L^5Y"?3<VWZ"4RSCY4A:[@"*)Z55&_R$D%C %"AN#X4'
MT!%]:U]I Y0=U7R_-7FMF738Q+<[5CNGX;R9SRH +"+YPBF4<H1"2QI/R,1*
MC1 H#$#GH'5:9.WQAQ<D?\;I&5ZLSCFDY1_CY<>3L\62IGO^[&N:G-4PID:3
M]%]G%[4/Q=1*#H[U)'.A*8\:!9,"G)=)6-2M1[P'S"$IU'WY<K-6N5]I-6RW
ML2!OKAZ5[AI'X/SS..'BW6R21R!!!2]HF79* !,Y5-( ,R8'0QZ7=*%U>X7-
M: :E+%NQI-'DM]]#73,%F'GP$8 Y")QI;@7S)G$RWK8 JIC1MW;>;H'1T@XD
MY2V4VC<[6E?;.@(9-R](@-Y:52";U+I@:*,=>%AM=ZB\;W1<V'.6VYU6Q,[S
M//<\1B'HS&WRS*.LC0%H0!%\9)@(F<PI><<;2_HJ@D%IK=;2/F"RV_EWY%S.
M85*/RN;3\72\6-8A?L8+4#JX4O]G6)6G3I%"C^@B<^339BA$TO8^W]V0=MP$
M^[$HT5(<[3;2UPY1OR[7._[0>"78))%Y,K"U:P"G5TXSXJZS46B35/-:D#L1
M#>JL5FN&-!1&,X(\.5N,I^2&G\Q.XWC:0;ML<K:D5XMQ/D^"/)[/"2]VK=!.
M/M:7+Z8THK,IN7$;_N2R_$F,C-$ 6!M+&:-J8RG-HO.9*=!.!^YER:W+$X\T
MM!TK'7\LR@Z1'HW39/WD_430UB10C!>DT,A&<@%SCHRKY'Q, K,-/VK>MTUP
M)7SV,2"R9#2%C 8L\SQS9K/V)09KO&W==.+>X.IA0Y*A\'%C3>N>TFNX8%>C
MN7"IC"\2'%?,(D0"H2+S66;RL*(#CTF#:[_(KD 85) S5/X<(K:VF^PTN-E5
M,E]@DID7)61DLD1D6F-BH8AN?,3S%*5N7R-_)Z(A%0P.E5@-9?KPY60GC]_]
MX_G+UW\<>D?:[9]YM *Q#<-H5 E6BY!A\?'-?/:9W,C\Y-OOB]K(ME:L+RH!
M'B<*N5<=O+D18&RPS-KJ]AKA*9)"\GTQ^P+>1A=ZJ$K8$MW!U:WPK?.TW\\>
MI_\\&\_QPE''5<.&KC!W]9,\PLB%KA<@9E307?3% B1D69#9IK7 0VR="-H%
MWXXN6.][P7T0[$8U;%_R:U<_?1WA:@JZ]T9*6Z6")KOMZG:=D)QY6R++(7-5
M2"\)V[P%QQUX!N6%/12#]I5/<\8\G\UI\ DQ=^Y"9Z1O&SUR()!.,6>10@A9
M&\J8$)DRR*T'IT7S$ZL[0AQ4OOK(O.I#BBT;SUXB>P<3?%TV]B =\2R<XXDS
M)T2]U4S6])<5K C@M9$#M]C<^FT/;TB'/8[%L)Z$UY_INP-?0F=22"P97@N[
M(K$?7&(%C.,4Y4+[&PNV1S>HS/1#F<4VLNM1<[W[.)LO:W^)=0,NI=&Q),^*
MJ57=03GFI5(L&Q"2AJ]-\U,MVR$;TM']!]-7!XNL92'^;5.P:E%Q=0H$=RXY
M*1D$P*I*Z57QB0QUR,&"4[+Y1<O;HSN\0O33^<)_77[#/#X[K>)Y-5O2P!,O
M049?6$!>VRU+K%=D9!:19L,$X,ZT7DMWP/D1HMU#Z7.S(K2-=)I;^->E-O5Y
ML5B<U8XNM221 -4+C@LA\**V7/:U=M]"9CQ)C,I$S+IUZ><=<'Z$T+8U75I)
MYV"ZC..GT;ON;#+-<]W&OFS,_?@+S//BR;>+=G%D8;A+J=Z0#3:1-U&B85$H
MSD)$+] 4B^6:>KV1Q=WA<3]"9-J*%GU)H9>^7&_F8QKSI]K2?47B$0;G*0HV
MS&(BQG8%/MS4<FF+P@3A0O-VM7<"&E2)U9$T2CL)]1((=);PO+_@""0F$R*0
M6#VYJA22L)@P,R%D%#I*&9K??+X)RY":N!W+]K002\.;&+X[3JN^M6N]"$?*
M<!4I3&7$WT*0B+)@T3 RCY",3 92:T_E3D [QH8_A69I)Z$^G-MQ'?LT+T8U
M,H42"CE+GH;HZ957*C%,4L4@K4Z^=:7,+3"V(8C[R0ARJ#3ZV)XATI[-TT<R
MAE?<J5%.#IRNY[GJCI&&TF7$)".GRF,"+R3TN".S =4VI/$_*6D:R:H'U?(;
MSC_4GA1=E^PN-+MM#C@(;G)MHL*!W/%4;U'W!4G_ 9C:2P6:WU*](\1MV!5^
M4G;U(<5>_..+%,#-[)&O9T(5Z4\'4K&N-UG,(K/$$8V5B*7TN;FW$=A663[^
M\[K.;236M'?DM2:%;W&QG(]3Y?VJB>'5-]9^\PW.QS.:KU3O6L*GN/J7OE\=
M8W_V-77''=[2&GI6"J;ER%GE,S?(A*Y=I%+B+ :*+[7 ('21&IH?JSKN"'O:
MMKAUYR8$&T75.]+6:\T",% TJYBS,4I'*YLWT-FWC.^!&Z0-E^.W]%SK0_P/
ML:L6O-7.<,,L! (9)3GUWM9N7$$4(8TWN;4!VG=7[8&;J?WP]#Q4_'W3\_*8
MSAH^6:Q)Z T#JX$&3P%"Y"XR0^8VDHFW!HZTZ7L+NB$=<?CQZ7FH^!^"GKHH
M;EP!5E(F=],A,!^*8RD5)4G%9RY;)QSVI>?N\W#UN/>E]NC"+&+3T_%BU6)]
M1#XUE"B!J7IIJT;K632U[;&/&&/T/)O6L[ MMB$Y.#WQZNY3^HW$UJ[IQWE+
MT-=3 O)IMABO8)ZW$.":>P<$A-1(W;\JM/+1(DLZ! 1+%DFU3O/>">A'J%YH
MS9]V$CI6%Q K2DCU8)PSEHR1BYGY6B'G$_V#N5!DWKJ(]? N(,=R#!Y$ZQPD
MHG8=I3["')^0)Y-KLV*<+CITH\A#0E=DO4NV=AQVA4(R%'7W0I,_ 0),:[K<
MCN0'J)UO39,&(FE&CZ?GMP2OG?I=]:0^H3?'1%JA! 0@T@:H%;$1"97QB94(
M3FGI52FM*U_NP_0#5#2TIDQ3,;7LO7(M6+IYX]"H^!RZ@X^)1])Z%%$SCZ9N
MGYN"145I?>M2F&UP_0AU#JU9U%Q>/3*IJ\/X/@$K"YHE.AYX(FYGR30%Q.=%
M7H!0=+!%N1YZ7V^![$<HBNB?30?+K*%9^S3'-(;S.Q;6';.1M1&XSXJ5$ER]
M^,RL6FEY4"X67C3'UCV+[H"S8V7$ST"<5L+IZ>K5MW6F7Q<:>\?@=7@734F<
M3URBE,P(\M*(TY$ >LE"R#R#K'1OW99B5XP[UD3\#+SJ58Q'<)HNJE1+UB&1
M8F2!8[U@+Y+NM"$S 9)49DH:FY^IOQ?4CU +<3QW:1])-2/0'W.:G=>EU),U
MJZC@^@F;D9:B*,\E\ZF&DCP&YBT(ICP!CH',;_/&A?>CVHI"/UD>NK&LFC=2
M2S0'5_MMI2!XSA:8X/6>3V7K/9\\L.Q"C.B3S;&O'FHWP&S%F)\M]=Q&-#V:
MJXN;I>M '03''7*6"ZD][4)@4:)FG/PTX<$F<P13M09H*\8\])FZ_NW4OB+J
ME367F:L16<QZEA^9-(8@Z5J5ZI1@UBL$'^CU$<+X-4!;L>8G2T*WDU#+:N$R
M7JXZTZ*AQX%C6+L2:="9^1@DL\)E9Y1 R9O7G%\^?2LZ_&0)YCWG_F@)P(LV
MXUTYH5 ^%@!6;UP@CZEF*+.D5TE8P*P]#ZU=E!W@;<6>!^ZN<NQ4X+[2:ZE:
M/H\7-%_/9_.GL[.X+&>3BV!N%(*(4GC+K*H]A)0(#%3DS OG<@A<H.OA_,%&
M/%L1R/U<!&HFGQ_N3HT2,?KH,Y.1U_[&*;+HNO9&N?B<T&K1NKAS0'=JB)\L
MM3U$UC3IH+)^+JB> SH?7,UKS,>?8=G=?[U8SL]6W1B$"T45@<RG*$FU8[U+
M*P!SWO+D(I=974N0W]I(9;>G;D6XGR3GW;-,CM=)_?RBT;>89A^F79G=N_01
M\]D$9Z7FQV":GRV6X]-ZN/$9S*?T(8O9]/<:JWR:8'?B<74]Z>(I+F$\N3J"
MK1JO-X?0O$][OY/4J*W[]QJ"Q47_A,O'OJY]:#_,X70QBJIDXS/%DIC)ZY-D
MS<F& P4:O!ITC G;-[S8!MDAZK$K+"8ON'8XRJ]OG?F1E,D8"XJ!B()T=J@;
M3;&6CAH0MD#!I+?0B5L\:D@%WSVP8ET'MI[X)L;RQEI\/;TQ]A& L2E'9*Y3
MQUADO:+<,$%ZF#2RA"CB%G38YEE#.D+6,Q^:3_TP+"%Y$[]WG=,^X_S)N+M\
MI1][=\>#CFK5MAWP@;;K0H4\OL6 WG@^81HY$5UWCS7XRL8H-0/.-?.E%*$!
MG"A^2R6^[3,/MDNW/>C%]-G71('*ZW+^I VZ,VI?;(F9Q>2JTV@3\XJ&G[CP
M4G)/OF3:UF@=@&,(%JU7KMRP:<<26A.#=S'J[P"[F^%O1^=YS$6H1.H6(RGT
M'%F(TC%G8JR*G6,)6U!JEV<.X@C3T?C3FS2.9PLO&K[#6J_W[\;AMI^NC,-B
M#W.X_[.:6\1&PVX4T&WLND^OUYMQ7J^T*TN</T[I[/2L:TET5[DGK[UJ7/1,
M>1Z8=CXPT,(Q9:)*.EO%FP>#_8^JP6;%/@A7U_=M.?'D]$8@8\"4335M:#/S
MO!XVRE%KG1P*T;H(^@C#&H*;,-#5<\N.RZ!(UG*K;Z]YWW)(/ACAHF*V%!J2
M)4OIZV7<&G4J/M&;O'D/SCX'- C/Z.=>,CTPZWB.V-]GL_R%_$GR.;Z?9UZ\
MJP*=?YN5U<[5>'H"\_FWNJO1[6#-RL6?[>^5-7IP<Q>MCPEIY*]=/&/$LXR1
M4]17TYZD=R-G$)5AD7N!5F?OFM_L>/'L@UMCG'_.W^==*5**C@<?F;&)5FLV
MGH(351B]KXP2WJ9H>QI(!V!(_L1>TKW1UV+OZ6W7_.0<PHO33U!O1EU3CZNW
MJD;M"M&"\LX$E6MO%LUTR+(VWJ9(-=$$1$Q)I-9= [<&-RB[V90:;>7RX);J
M,GKN*']5+=.OKHURW1HWMUN'P3B6%6LX68UL&OE5Q/V7X\^8K_=3J2DRP]%R
M#HD!AKHY)"T+)AE6'$!VH>30O)+\;D0-KJ'9].DKG:UI3#H[9#:'R+2VED5$
M"JQ22B8*:\&V;DM['Z8A6<F&?+GE_IEVHFEY;]$F5!N6ZTCJI)WT@A6=%=.B
M;H4;3U$Z)_N!L7"G6B?==D<Y* /[,*QJ(;_CV=^ZS;X\OS/ENR&IW^V]47WO
M1S:WB[L-HI&-NWK;C"\JJ"X-X"N7:I5><H[Y8K+37"K>?'%NOO[GL+'40XS=
ME6_+4<"L2FU$[UP]3Y1=H5$)8-(%0&EBRKFUG;X=R9!LU=YROZY#&DQZ,WNT
MCN7D'$AQ*@F9,@.*#)A.JK84<H0+M [>A<2A=3[B%AA#JH+J1?3[3/<1[4--
MC:Z%&._./I$%J$$E3)[ I&9/WWU$7+Z8EME\-8GG=YJ\GZW^=O^@K-VSVUN<
M?J:E05U4]^D7'4]3LAQD9%PY4:]9URP&'ED0"GTM(-#76Y#?6K.Q]I&]]NP9
M%:.Y" #,"$^N.$<D%TE8^C8F\ I10>O$X9V AF!V#I'I3JUV=IK]7BYPO0[(
M@;4Z$()L'6E8B[):PD#C-=8$Z5VT/:0)-L$9@B%J2896,]^D%*U#L7[>5-.C
M1.1D3F-WFW!&BLHYTD ]RB2]YB%OJ[HV'O,]5']='NU:<]]XDE!XH57DC63:
M8&*>4V@IM;/"%)D,MMYJOA?4H/38OE*^6YD=*HI>%-IMH+QS%F0AISY[&C(M
M4!;(763"*Y^T0+2Y=6/5>R -2K&U8D=+,?34L? 2UD4$P+5VINI:$Z'K-.Y8
M+&!80HC2 2B4K>W=W8B&T S^6'IC'R'TJS0N$ F1"ZJ"K+9W8=IS"A%#T2P$
M35A*,$FU]HKOPC.$UN_'41?[".#8D7GWM1:*GX\ IODJP0^.O[=_0D]1]IY#
M;)7FO7CZ*"<I"_K 7&WRK[TO#(I4S$5RM4-"[J\?_3L\'W;Q\+:6IQM.4J*X
M M7DU8[A17H:CE-,"8M)&%Y4\YK(FRB&X)D>)NF[S<O.,WV,P/K*MA1I,+!%
M"29E=9(Y!^:ME$PH#Q"@%&S>LVM+:$/P2]MRHP^9]$*8%],ESG&QO.AA:5P4
M$C-GWG%52\+KW<1&L^PB.E00@^Z3)-?@#,$M[8\8A\S]L;V/==ROXV3\H7O(
MXH:%7OO9_MO*!SZQ)^^DT12T*[RZZ<=>7#K_] Q'Q!8!3@,S)8EZ"9I@8$UA
M 6M^%VU2JO6FWGV8>@F>UC[__R+,GX\_T]BM4 4\9^!]O=!8U9N\4F)(ZR@E
M#BDU=^"VQ38D/Z@IA[8*M X55K]Q^#5T[XD:. J@$V15F,)Z^S"ON[49R$[7
MQD\:3/:E=3?+K<$-R7%Z<#+M+JZCL:D[ 75)>%UR]-869D!DIH75-=\@6%0H
MO==60FC=E'LG@$/RNAZ45?N+[6C,>D7NQ/LO./F,O\VFRX^+4;+6."<Y2\G4
M"W,!:3X$5FVJM+9 P4;K@\.[8AQ"7G$0_#I(>$<UA<]G9_.140%4IJFP$0(C
M7>H89&.9"867*()+N?6=I-MB&]*5DP]N"'<6UG&]JB^SD;=9@+"1&><]N7RY
M,-]=\BU33A"-$OS82NH<VH[73O[<1-I55'UOGXZ<]#Q)Y1BWBIP[3YH2E ,6
MHK7TMLW<M3YQN %*_^4E(0HI<S',2H>K>T&\=!0@D<PUSU$5V]I+_"'*2UIR
M9/=*DUVD<JQJ ELX1AYJ 7&J]PZ9R$#:S$+VW FO4(5^BRGWV3@^5EAZ1)KL
M(X]V=?VX6"!N0+9N-'*],<233R!R( ;[Y!EH^E9F*6(H'E0/FYO;83O6'%PZ
M2?7*)2@):34;6L,"+(L\!U9H+I1T$FWSFR5VQ3@DE=L+QVZ<F.A3B$=?;M\3
M4]*ZR'VP3"1/SIIUDH$QY$CI:,F+BQQ\ZSMI=P8Y),4].++M+L:CL^UJPLH'
MA;JHR'*L-WN[1*Y[B9+).B<N^1Q<\V-=^P =4KYQ4*S;7YP/H^<H7.0ANR)=
MH7"QMJRI;=R]+D!,H741;$ E6]<:[0AQ2-G'0;%M'Q$^",^ZU1"LU-([RZ0!
MK+?@%1:%5HQ+,-D4I8)K75V_*\8A)24'Q[2=A7ATJMW(SHM0LO5&,9]KNTS!
M(XLV(X6,F@NE$H5\K7>"]\4ZI#3FH*AWD%#[S9./G",?$J5B)DI>6WU["F2
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
MQ&JRP@I$;=&-[:_7WA'D$+?,CL2E5J+K-_!,(N<DN6/2%4+BZM&,4N^,%X:
MZ* 4[Y%$&P+/!F.[[?A3*BF9H$G9%\UT"H+%@I)!5$DZG8IQ?76\._!<V]$N
M1#V8(O<&W ?*I<?:K&YSJE@'P4K%HO"<L/C$@M&**>0UH/$N]9:<NZLZ=1@1
M0G^LV'WRCU=2?C([/1VO A:8YBL'V]ZECYC/)C@KG6^)^>\X774%79S-*[</
MOOJIX<.;%YSW-3&-ZL_/GWSYR%NO3P'GR9\C8R]]O;@W:6#>AMHKRXL2T#D7
M6I^GV@;7H=IMPS-&(CGK(VHFC$.FP04640IF-$H.,<G<_$JG#5"&E$%KSI3K
M^JZ%.)I9ONM@UB\30H@:+6<EURKIB+6WDHK,:2\2YS($WKH&>3.:(5G HS-D
M3Z$,S"JNJ?N$X\]  5"9S5?W__5K$K=X\L/8PUVGI%GOWO/'OL/E<H(=R.\(
MUMB62D@856:6UU[6G"+3P+EF"JRRRFF#/70PVP[;(27(MTQ[%Y=G/)V.RSBM
M%$OU19]?2.-W^N'\^=ED\JW[8\QO9I-Q^C;BI?:#R8DE7^_8"PI8#/7NM:)*
MD DL^G(/A=LB&I(I[85GZX7*#R3()G7PMV"_!/GL:T*L>N7=<O:I%L6^'),R
M&0E9=[2]8)F'VNTP%!8S6I:)3)R[Q"'L2;9[GCPDZ_L0I&HIF.-9Y2=GB_$4
M%_4 <!Q/5\?$+^_CO?CAX_2?9^/%N/OAWE9XWR<UM[I-AMS(RMZ"A=R Q3B?
M']E_3R1;K%(?8L2-A!*M8A$XN8L<2/V@T0R#YN38*8C-J]UVP7>(HGN')+/Y
MZS@9?U@)Y$5]SK0V')A-ZXWU:_)X?2FD41!H@N6&!6=X/9@4673",8#"?:&5
M3#_<0MGM]_0A6='>>+2N](X@I&8QZQOXUFG]][,.U!POX.!YZK#&7B52Q,4]
MD.:/F8*DDB-%TM$2/P)$:%U;?!^F(5G0W@G5BZ &8C>?+99CFF7,SV$\K_L7
M-:W9I:W/QY@IW%O;^*.?G9UB[L>T'@;FN-:WX<3U9Z!K?YL/T_%_87Z1B;D4
M0\#E/NT%S+6MW)MPNQ+28K/6-K* %IA.0C-/RI I(WP"0%N@=0%'3T,YQ.SO
M">E6*-\/""(L\&W5D:_+[XO5G]:;@35W*C*E-&D1$14+I@BFA%>*<T'SOHVG
M<#3  W<NCKX&UOV08;*FF>O2='BU/.E[O'M>3.)$<<FJ>M^0-$P[86NY4F".
M:Q]C41J;UR7V/JB!.T\/MF"&R:I!+I;-A>H63<W](2M<I9KXXRQZKICGD0-*
M6TQN7?-TE($-J>KW9U\T;=@UR(7SO6N6TM(YXR63-+>U/I]T@.7U>%0$@UP8
M-*W+!7H9R) JFG_VA;$?>P:Y$$[6#>+WK8'%*'F3065!,^PTTUC/2]>+T<#Y
M&++!4$SK.HECC&M(Q=H_^S)IPJU!KIKOGN2-@Q4I)NV5X\PHEVO' ?(NC2FL
M1+*9$CQ &/*ZV3RR'=LW]5O$_;,OG48$:[9X+B9N%+@44EK#H.;,M3::@4Z9
M!0F:AT1!4_/N/A?/'E+?IR'R;R\9#5*]7C$<*]:#<)('&DF01C'MH39+2X'E
M4%*B*9,R#CF>O3FB;=CL_QNS>4!\&N0:V= YQ K@J)-A,6&NG04-\]D#L]Z#
M"3X56UK?3-'_J+99*^%_7(_!$&N0"^;Z =5.#[S_"--+NZE]R0*58P*%9=I*
M8*0F H4E4)0W28%K[=L<=8!;[=#Q_[$Y Z3;(%?4"2P^GJ>%/\.DZW:B@W<A
MTR!,C><UB, \MYH9$[5*R26I6I\M[7=$6ZV9_X[;V@,D5),"]I;CN6A'_P:^
MG1?Q=UK@Y$9D/Q+(#9#OR9Q1LE;G(P/0@G$GLTC"BBROA3>]%WML#7ZK)7*T
MCGI#6B,_!I\&MVPNFY><CW,DC<[>Y\(PFL(TIU=UIY'5SEI*1%=K<H^\.JYC
MW&H1J/]9! _,CBW+;<_?KU\B+/!O?_K_4$L#!!0    ( %B!5E:;$GD+FZ4
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
M-KFS;M<8&YUDW).9>173:GC)%JAZ2@.O1_0PV=[N&KN' AW$?3@R.,.=P5C
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
MB(*1-\_K#6A=VZZ;( 3*K&+S8IZ= !X#7_K7S&T:^5YH-"!/+#/G$MB<:N]
MGB"8Q"$HD1A&9)(?Y-0X>EKL).DU8;9^XK8O+B83.L &T7ITO@XZ=YELY.C(
M1D:G03,=;6:8'+:N[KT+S]&S81^YKR%%/\'7W\:CM,2G$%G)S@)ZAZ"DH-U+
MU_LE6HH2:BM_?Y#8_7=(1T^-/:6_AAV=HZS7,V:WUYY\%,$8!K1Y>5":-C>7
MM0(O,VUR/FC5/.UX#Z2_$H^=$H\M%=Y+=6$MM=T \JX4%SKIA1,DCE3H1<JY
M=D@.&EBR,@86I:TU&XUK#_?#>OC]K:G2UQ;"]ZRQ_Y^]+VURZT:R_449@7WY
M*,NR1R_<ED)2=\?[Q,!J<;I$ZI$LV^I?_Q)<:F&15?>2P"6+53$S'LF2ZQYD
M'@"9B5Q.R+2;Y["(UIM"\2B7! B\U?$6*'V-!-=!,Q\DKS[\KQ_$E\FK0_33
MI#JR!]SE(YDFV3)E-03OR\1R75(0LP-%/7$:_04>:U^MO4&^8$KUUE&#A\P^
M@)</:-%+6EHIXB%*.0AJ!'CC,R2FHXLFH$U9OVE#/XPOEU*]-=3@B;,7WO(F
MXF56.C#$F\JLMR@I.!8E:&=UTCD%2MJTN.F.\04SJJ^&FI6=/HWW_E.;C:)<
MR 0X09=7:"9+]4,$':7ADG)AZX]2/@3HR^36X;IJ\"S:%?1($*VLX@ZD924+
M()'2&3:!#,P*+Y-WO':@NRNVETFC7AIITJ?U$9Q['W&H,)KS%(#;\HCCW7+R
M/ <E8^0<G56;ZK=P/@#H"^)4%5TU>+?= W>D'>?1:PN:EM&,WO#"^PS&&L.B
MR.6!>9BHZ661I(:\&[R[[H&U>0&B>$^&I W0TF%$H # 9B'!Z60#9\*3ZGUU
M'D?T(DAQB/1;/,KN@7?G#0BIJXH1CQ8[S2"<36!%Z? EJ4#F(OY<^\)Y$M2+
MH,B!.JCY2GMF;TRKGB8J&$D([A$I/0J#4@]&E8)TXD.R.F:7MH8LGWN1YB!M
MA\YLS<>]%Y[98OH3\]2-E9;SSY*[>C=?E(G=D_@FA.MOUU?XF_AS^CY+8;PL
M]+[34>A#_CB;HC#QU"L]0R1Q/&1J@81HRZ1" <YY M[2I#);=HWH<B\\-9;Q
M&)!#MV1Z_K2<GH(>M8>'=@#^N_N6;A&OVVYTP5QS9.R!.$\P7W8X*O0D8#4]
MG@L'?7#46AJ 4IY D)S!4B_ :!$\,Y%G/]2Q.ASW'AN-^[RHUT=]E5M>?4I+
MB!\=HMFZ73;C2;5VBF4!#/V1$HBP8%W$ZX!X'I1T/#O1P7)^\D,#CW$=1%?3
M5H*NW#/KP^)KFCT"S5#I32CFM0@EX! HV-)L05A),\V)*&DZ<.")SUPX VH*
M^01-MWYQX]F_W-5U^@>"1A-R:2Q^#E]3O+Y*TWSSQW/\]3)#&*W29=?_TA)J
M$Y\8;\;8W%](IQY<E0'4;LG54CY;';J,#S(R&Y6.7,3 /$FY=,Q/@A/%K!M5
MQG)DMO[F:ZLOO+GWA37 ^&'R*97 %8H6_P(Z/;/-;W]R\_$=QU][RJ4S#I04
MY?U-*[!9":!"4<X8\[9Z.E#5!1P;>UUAN('T\WA>/']$<!-5=$0P%8.!I0TC
M7(IXCI2Q\(HPZ34WP=3.0W@2U GJ'T[&NNU(;5V-->B-]=;-O^+RR_\KX^C^
M=%?EN-@!>(377N:Z%(L(ZQ%H*":*LQ!X*B-1LTJT=G.1SN"&IUAEQ4Z'T$J#
MK/.?TPS1+<9_KK?:B#I'5 G+9F;1D+7&@^=< "$H@(#;2)O:CS_;&"Z-#$?)
MN$%J^!:>S\6,+D;&AUM[XN-TOA3YNV*[S,?^*KV;7'];&K[3R<BI6,8\D=)<
M-J^&%919UX"VKN3,:R4";\N1WI@OG%-M==@@DWRO=$8A>A&MDZ!9R>Z308&+
M+ -5-E(K'-6ZMHVX%\RKY7.LAEH42MT*Y-'=E? &I;BGJ%4!!(T.K%84HG91
M49>EJ3Y5J!NRETRJ!KIK<$'^=#W'U<[G;Z??/)ZF13FE:SN* D]8_-5\'-?'
MZ&W*ET%AV.@TLB)Q$)&$$@#"?Q!BE%/2U)])>0#,$_2\;Z#QZ;#J:FIVWY'/
MR,48 \( :\K\+V\BVH61EEZ5+#HF2YY8,[OJ#I"+9,GQ(F]JBM]0L[\IE[U0
M3/( .69?>ON@*:>(P4LY2$%9T#;5ONEJX'XA+&NLT!95GH^*:12LM(IP EYG
MAMYK*IO'1F#*BAR423E7KQ-^%-&K055%5RT:'U>0TRJE*2F+7BF>SCP05XH*
M-5[5N#%3DC+C^4VM2Y5)5PW\4.,ESX>5I]'[J3,L'ZS^IQ\WO_R?,1[NL_#U
MQV_ISW2US%1)1N=0*AAE%@J$#J7+DG;X6X5R-C&:W.PQ[%%DIQIK>2+6[.-N
M/>VU&&&QZY'X(=YUUD,7L(VF9/8">IK!F2TTOH]4S=1U>HXQ:8@@'#)!O +O
M"'#.*B N9*>,H;IZ8X8SX-83\S?/CUH]M-224N\GWZ\7\Z4$Z#J%2NGE_',!
M)@I>1B#*556(]X[E0-'SH;4[ICT"YX1.17U%[J/,D5IH,>IK!S2VAD9H%#X:
M!9G*TLZVQ.R2II"M<"(+F2.K/G)N/YR71I!#M##0"<+7T$+FZ+50#MHA("&$
M 6^3A6"$Y)Q:KG3U>5W[X;PT@ARBA;TAU0%28;_=3:^\_O;-S7Y,\ULWF_W
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
M^-%'] UX\1;/T _YL[M*\TU[H*PT1S[B^1@=B$1C>1U2(*.U/)ODA:D=SWX
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
MZ"Z9+'54\I \1\]S?H#TU^DT_C6^*AF6[R<+=*#'_BJM_FC$T&_QI462ER5
M:TNR"LT2_56J"#JN-IG:B4Q]\%TR@6JIY2&%9'4*?4"JNY+#_=MT/G_K9K,?
M>35_?3X2RDMM4@ M7$"')"7PBFE0B5@J4E VU,X"Z@'OD@E422D/^:/J\Z=,
M2"\YW,;F,AD$$8%0)9N[]&4A6D::4B)*U"[WW(WDHEG16]0/":#KWT$SY.@H
M<Y)-HAJ8*P5FT:&-G66 &(CTF1$M4NW$D]U(+ID _47]D "F.@'^Y:ZN5S'\
MC1,V2MISFY(O)1T1!%/(4<8S1%PU(4KB)=?\YG@(ZY*I<:02'O+$MHC]CE2@
M)#(=H=1JH/>%]YCA(D .R%MIF&#M[PG$<<E,Z"OF'6&ZH]/5[X#:/'R,T_QF
MO=G@?X+V+]Y>OM24H2'L2UTRL<8%H86FO'8CN\<174KL_UAAMPW9WD'W=$1O
MQ'F9=FPH:,N6N"G@:<8 _YUTC) 02>V:_D.QGO0X.5KGG>A466&#$>VQ6 Y/
M(J+G[:0I_86=!F/0JN+,R9 M54XW#/QW@?@":%5'/6V#]G?@/A;8<<)KYU X
M:'4A8+S%P6O!@&G+\5"7.IC:E2*]0;X 1M524=O8_QW [Y<U5\O$)_3ME>!X
MY0/U#,V D#5X9@1HJ9D5#&V!ZC-"GP3U CASJ K:AOCO %Q%?JQ5'L]$#2F*
M,H@W$' Z>- J:T:H94H.PX[31]J&X45_L3>,V-_Q&FX CHB5B1)+0*:2E.B(
MP!/-$%2DT3X0325M]<BS"\]%<N)HP;<-P]]%Y9WB3N6,=YM"OS\YBWZ_U> <
M#RP)0EC+9)9+)\(1PAXB$'\'6XD!"8FKC,H#.E]X;#&TH@T1&J(D+%N?B3"U
M&QP] >E227&T^"M&Z>_%EU85K4)2%PW:NC))M'HM4>"%D\!D*$TM6(YFJ^;M
M\>S@06K+*\;)CA3)N11Z_^2N2EC_\]>4[O=V)$A4Y9%?5EJD,A(:7$ ^6Z<S
MR9DI8VH_O>W#,G3Y][&JG380<8/0UBY<Z\*7+L@:%63O1W6:LNHZVNM B2-$
M/RPY\!:S*0<+5F?<"XY'\!R/S$!20J/%>1+",R?%$S7+0W.BC\0;<&'IL/X^
MG81K-$TFBY5A<C/V;MDDW(#W"@T2GS1Z+&B]QD!*VJ+ELOKTJ$?@#&\+UM+:
MM(W(&Q7>[')>T3S==&H5Q$6'V)(-$01A'G<!=>"B"D9*3=! [E%=\^C'GKW&
MVXAU[RDP2*GHFQB7/]M=O9\L"V&7,JI0%?K8#VY8 -IY/5NUGEX1$J5W!'U
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
M($7Q)B4+@-=! I58)E1'F]D ;P;G48O90OU/AP)ZJZ%A@/0NK-5!F];OI%T
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
M;2<K3=42=Y9F_'\/C*>OQ-1*SX=*,0U14F6@]DH+*2:,$5R3I&RISFXE"58
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
M?Q<1[N!.M",QJPY5#DRSW6Y?55#._ZV1'15G7"M1>CL^(636MI$/RIP?7VH
M&53T&X><#%^PI[3.DFYNV?;,MZQ&_OGTC0$(BY 8 ]['OMB@C? K2!N2W,K=
M C:_59L.Z-*^=J?+4N8DSO2XXRW@*8JSK:N8C^"J0E1,*<@S<6J$!&],O$W[
M%GKR-\+S[.-1B>G-)*,0:Y=V7>6A6X-EP5%MR.D#DCLY?\D&R6R)Q]#?823E
M4U]J5_Z8)O.O?,$DKSEX.K:>TT\;)@T5X%U]LV0'3S>L%3MX2([TPC:B5,6:
MVZQ"XAV^%S=]3L:7QQ_*#+KFI'OY> 4>>V1[+ZGSXML$H[\JW[6/2[ZYO+]C
M=FUS$&5VW5?(7!_P_U<(_S]YX<#DW]/% >&HA<$8!P 9FIL5C!-Y=XUV<=3Y
M1=K$!=X(?_UU_.87I-MA)@Y)%18Q8/H0LC["&1%U$'I^5 :A-$6Y'S8NZSEG
MST69]%DU 3HZ;(';;RX'*Y,TE,PW9/,@I5EI/0<[6KPK,3L*;T#XZM%GI-AQ
MKV&Y[17W0*2-_:R=C5W3TE*;GI"1K;'3R^)8C20P('@B',[$S#=Q]$$,#WQ6
MO7TJDXRR3#QOYU+.RXW!VP.3@5M>DL.-GM,D)UH=PMT]8BQ4A[SN==(EZ8K?
M2#G=(E?+XT=T\1N-YQ:H_=+!>*  "/N9"3CBEF""#NKK.E2(?L4MD]FT)ZOD
M+Y1L3.Q>Z?&H?!?H7Q@4(P7 "N3_Z@S1/Q<5^2KC<]VF7J<U X!\H"-,ETLL
M"+;)799S;GR4U77H+_K$!7T8#,4AYK_5DY;KG382XQ"U@WC$60:@K6DHLW5.
MY(-QR&U1L0%^$7_W6MKB)W'X>PZ-,OB0#VX[2N.@(Q,=!JR0?:.,<-V.31W&
MC^\KJN$W&_GF8[AN)M\?;6?UU>T]/N^WJ_9CZZ3:!-J.W@6M15*%NHRH^DRX
MDB2.HKE#A>^UF8(G5^:[ONL/?.6S,O-ZD,AA_X[CS;D+9R1[_*Z3"EH3PQB
MXR!G:%0-B%N' ZX^K"4_/WOSJFO>:HTIFPFLMV8HS;_+YF^J8Z] 8-E5>R\(
MJ^[\SOK+K\"E? :@=HS,!('V'G0C24(P[$I=QH9@^FBV3,&NU23B#;)=>$G)
MZPX\C'(3T2K2J(W 9:DOI%&%G+O]$2)4YP)T5@[L-N:>'9@#]FA QU3Q"KOQ
MW\>L6NMW,ZW2U>.[MUS^,X]=^Q<>*^8  'P!_DPF8XGKPE6,W=SX74M6OA-"
M O+H<9G=_FC!I"S(Y3IS?2& N3X<3X'3,2!".X80PP!T%C( $4BZ **6 >@+
MV(0^IZA/,@!K$0T'@4Q/L> ,)ZXYB1HX9B]?:<$^&;0.^%$/^?$JZ'=>:7(0
MNJ.;/SH_,F]]S#^6 7B[Z@^J5L<G$P)(>LQ3JM)/#Y20$&0SN(W7US6*/9]L
M'^7 PCGOJI-ZK=?5$/=Q^<-^YB[-H,_196C-="W=A;A^3HJ(WI]K\P4NMA?=
M9-8N'-::J:=7L%Y+Q+@<6EP=F$%6H9\Q.TAYN3H'SL=4)1@@52BQ0^?"']^_
M>Y19!_ 96H;9K3MJ><N2;BO>MQH2%M)X80.<@X1-XHQQY_4=>P5'N0_UB>CC
M13<:C"^;F*A,/-RI]?,O3QRO:VA_9\C[4H93.R/YXWYIF>RO@FU+#VD_IZT!
MBG%>Z'=S?>&94.M_H"H0C;>D2%./T:J:^:%P 5I.,W!J8TIZ99 +D81KPQX3
M6)YZLMNJLC@_NB=]SRH=W!TJ3LM!N$')DC5H)T(N:77"#Q&#J9SM'+:%Z2WT
M^9?I%,T[/><1SD:+'1LV4!'V'!6 #>#:;J#UY-*B&V_.;Y]Q$6D6)CZ/="YV
M#4HIF783\__Z(EG7CZ<(DF T(^S[V$A.E^V<&+X=1_NLG6+5;[:'7Q$9HO,5
M.VO;GMM9":]J.-@)F5CZXQP)A\PCQ&%N[5VAW$3A!%2>6VJ1W[?U#(]AL)<?
MS^O?4J\NR*WKLEV1XK<5/L3C4)-1I*_,Y;E#3F4 %M2I@M.W1ILO4GD:ZH,'
MQ>B#@H^J:NM/+RLJ;D<MPFO/5=J>VUH\T?FQ<Q^SF4YYS 2>&DR;)C0>6%F;
M,#_N6Y39TU3S9&G.->V\$][S"^B:H+*?%O];BQZKF.BVX!O!MN",S(VQ0&-?
M1/CJ7PM4OY)QB6DMXMH1JK=H3>PM\DF)C7&!6^J5F>F^AN=O<.=7-U8?$ S'
M&_5PM53!6I('.65YSC7[7%J[^G:2DB\G?W?V9&18HD2/$&6B?LC6:;+9]:,5
MZ9/<,+,=ZZ? 8R_HKI]_IH)3G(6:LM7>N2EO2TWM!:.2#3L"@!6#^!+*]8&C
M@LTUXJ/].+:G#,#D'_OC-I2E,F=%'F3N:2VL%0/ @V@UU;E$O3YFV8:H6FDU
M+0F.P)F6R =4U4V!XGYE+B7K%/=HRV].]1/!X8VR"_&7]T"BY.?M5I6()O?"
M*:G?2/L;YX&AU?LE\5=^YBP-7KE?S@"L+"("+,?J5FD*'W;XWEP-M%S^Y3WR
M!;TR@PXT'3*P1=G5O&0 N!'N@Y/;"\ TCWE@=(TWQOCUM::[M-2%@ .K9RU,
M+53W$)(/Z4<(H[&?@,?@KLL8\K$C2EM:8E*19]?RA,ZWRR?G]R#WM>7[0?.6
MB%9]A!-T#JY!9(K./W@Z/J7JV_ZQDW$D5S0,:>2S7T!'O:SQ+K=,(/D@=K;J
MET)C<PZ@2=6=] JB@]DWK]>D]]"=W9.':27?:$O+VUZ2^"/Y17 4DO  KS%,
MH?.C$S$\7E5VJYE.G>.I[WKB,7"!^076R<\4R!"2MUF;>H[<Z2G#5*U\9J.+
M\C_+)#.=VOBL(XD7$U_5H3C5YAW._Q914XKXB$@/'F( 6G+]#B:1NA^]G?F<
M$].XHN.0.VA_!)FW=&_'3#Q$R!RJ%7+J7Z'M?R7@3+1G7XGK4$,0C)'QV<J$
MM YE09C7@S]:(MIT9"$,"JT;^;;+G[P4J#AIL^"D4":J>>;F+ZW'K!M'\K^U
M?!;0<0@^]%--%)#*1W;U7D"<76, 3B[4$6K?7OP9JS9V'?A#^8.@UD!LX3,Y
M^U1.EQ?/L, H!#:AG72'*(LW+%ESN%1!RVD4H9C (+>2*)T(OF8MV/3]-/R?
MF0_GCCI3:K/' TYIO;L%^WB\K^Z!U24CSC6\\*$I(:HK^P:M!H%-00,1V.):
M";6Q/08@!C05JD(4:>T/FC;_8-=FZ_]Z5RF]8/J\E^+Y]W]KIY(]E9I'U#^+
MFQ33W]([T<!I4BGM?;,(?430M6+2; $#6-/8'_LH];$F8WWX9EZ,3])MS1_A
MJU4L:U7__M2:<!SQ[#UB0AG6# (FA^" FV6O3&7IO]%7#,_'OE3)3-5WDC/B
M?L7'MO!9C+HTBO8:G#8T'/6\%F^)RVWU<]=L]V%KEAAI-[R85)H7@GQS7)*
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
M]::#EO(@3'!=OR.75L6H3$W@4U")1?";)GFE6H;XR$\VX9:E@ZJ/"8 IE[D
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
M_<KIO9.3\HGX_G7R94L9BQ24FV[77'.Z2<_W\)XE?U&=:18K5<D0IZOFUOB
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
M\CI/>'X8^7IX>>?;-KT]67>U)(VS0O93T&^P\[<P'1AQF,('61)*V&KR^K8
MB^U2DV !/N%4IELD*2KCBEY/1K7U"Q$;0^G/I_"!W#]VSI+O!!WPZ.MTK$J^
MJ'J1=<M^KLWMN-ULZWM=WI,)UR9DO[T*8XAG)O?0_W:NZ[^\6O98^*]-OU2.
M;7WX/W1[05AAD&W5+TNWWT*[P(0%>?&9>K[<[X3ITVI,<HG )]\X]E"Y H#!
MLD_R$#$]'EJ.D"YD34IM-&>*__D.@8+7'#_12\<"9EH2^RZX\,#)5Q%!P^"\
M@ ?C,06ONQ]9P#_6YMGM)*_Y)B=Y[3I1!NN\CK(,8G%;9[O71(+<K'(=X<<_
M/]\A/;"NLHAYD^0T-.B7FS*^LF";Q4!*%H;U"\CP3 &"1#%V.SH+O#]HW_D<
M8X^A7"=N1Z@<JHA#VZ9]H^&]7GGVW]^\-A\5U ,A_H";:Y*,H:0L:@%R*2OY
M)F&.QKI&J.S ];3[RLZY,G*52V33E3KPX[@OA:H+&I:S"_6@86Y9@_O:TY<[
M]LRS)ZH7M&S&U\940YB]2Q6R7;V]O!]SG1DM/_<^Y15[+B^S-K?':-N3HD<R
MM^)0EVY>!+_8U;V09)9::GLA:=+6$TX*M&H)22B.[U)9GX2/PRL,C;=6A/.$
M0N<,M#9":N'[^;2>K/("O-Q2+#B:#F)>KJ@?K2E&0HR)3*_W!TG3S"'Y(MBE
MW]Q"9U]S20JL+?ZC4T;Z;,V8#G#<^*U?Y[6\'G=<H#Z+CJ+%EH"CP02C809
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
M5M:ER^]-\TF0?Z!]\LXE[;LM$!&(YI93?YV]\B^?R?L_L[=<-901&,U(;%7
MMB-2YG>,L*TH'*]/K:^^SO1G>KA[=$6;'=SS,U;L[!%5 :<%Z='K$>[)Q>./
M@6TE+"GT# (X'7H2HXQIA379PCJ@\6U7WDW KZPH!8O8%TJZ#L2_/.5:,9MY
M0C*S^,>^_LNO+>]P4C#D8F(UAMZZ=2W10NP5 D1VY^WT82#;Q>1G%$6CK1Y?
MV^U;A_8]8J/L&YW[A:^N<N8PEQ#%J<60\Z#5]?2RP]CTVJ^U,$&4[= UKA18
M1GY2Y//FVX$WMRZ'MQ;LL>6,/888AFJ>^?X+77M<[H66&V*@GJ?M<F=^CW@A
M?7*GQIY7["9FTU=C#IO\LDPH)/ /;T[2$N3NJ"QS1YGPP*XB\BQ835DZD],
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
M K2189V,(>=")4-"= M_ZN-A-]72-7-9'[MV"C;'E'B=8X7QZ%D1N,9M@6U
MGE= (F]BV=)]S!=C(<_'=(GD;+BT>D)DCDU)^N]3#6\_[/FC%"OFELM5MF.Y
M8$8T"9L[A+MM0!@IZT\H$>PL^,X-R)30Z ;D1,G5H<V#7581,^W<#"N&PP9D
MR^0&Y/ZY#8B8.J<<_DUZ<\8[H(<!.V,2K2"HJ+]>A_[E9N>I\+/_M]#_Y4+/
M;4[0<.84KJ#<(\C1"%!] ](1:.RNZ/)#O^;7N/B@])EK;WH^^SGR>.6%OU;H
MKPT(9 /2>]0"LP&YK)&] 2E2:![YWS+]_#<JE)J&^5NF!?TOC!JEA7%W8!@*
M(XLN#2;K(7)NA:J?>N6NV[3&+8:$I8S]I<QF^"9*9$X#<&[W>\ROQV5S_R=]
M^7_)0O4V5^_ F \!9.(/]CDJKXEV=SQ1%-9LZBOKF[-535'G_C2(N[OB5(XA
MOT#4FA3Y[7SNQZ/ K\#GNH8=55:Z$:\OCB<<%?SP6?SVY#ON)YXV">#RQ.);
MGNK^&NPYV;;R1P.]F_=;II2;? KRQ_^OK1Q.^4RL3>2HI%)QW*WX#8@\_NW7
M9V+8OUPN^NNMK)TI$/#G?TB1ZV+,(+"5AD^'BEJG<?>R128ME8,TN.X8T+KI
MZ)[@M.3ZD&DAHHXO#4LQ_OIOT9\ALXIG2_LPBSE%Q"O(5&)U3C90Q6IC@!>H
MF.Y0:*NR'O;<2 GNG('G\8AK_4A87N6)1CVAW<.-4$/M"\@]T(OGO*Q8SH&D
M.KG4Y1I, JE*+@UE3'[2[^@QB$>=9, 3W5VQ5K$2\C:AOWX7\%T/,^_+#E23
ML%:2DA7I,K:$\ZJXE_.2&(Q-@LIQS="=&Y"Z#\"7:AKR[NT?:4(\YMQF%CPU
M!3ZQ'P\I6!UQJO._OK5714);)W3;"8@2\IH8/@#_J!:?A*C#=\LW(<66JZDD
ML8"Z29+$590I!2\#%AV3F_!2&@U_M[6N!*WG$^E+:,QR<F]TH43E[,E9TMJC
M8PW+1?>1Z@7I@8 J+;%[9=J?*Z2.CXSN2@,0E$Y\A]X^*B:VR2R\M3S@0,EP
MIDZ9E&XR,AP;J'G16KNW=#0,$C-WUKKD6T:09-!PX)#>I\I[.=^\SZF^_%I2
MF2E8@HZ)7.$*[6:=94ML0&+1J,W##)M0QQA7L2\CQ3KH%+H/=5^[>ZB"<>)1
M8*+>0L*]S^>6@47N!"ZDUG#78RHN9-:GOI>^OD1;Z\#)!VQ Q"T5>8H.^;KV
M32F5*'7X2Z6%['"_FL*V_!T-S=<R=?2G_4R<MM[YA)LY^J!,^RWDM[;.3QRS
MBU>U9#R"AXBQ-7B>"*7N2^,J+)%V=J?41#LHHOA'FQ1UW1+B7P29 BZ=S%!_
M^IG)249/V!:"=[KD0N_SLUNCB1TK,[E4>*<8J.D+!\ZLW+6$8=L%VTDBV#2"
M"CB@9Z+85^97L.P6N!Y:'I80KY9QK[I/+7F/Q,FD% 5/QIV8XU:H!=86[B3W
M$*?,4@%U LA-7?X5#4_&;>>J+BGS,\+<W3_DQ<QQLOB1+]LEPE3</[GW"7#/
MW;B89[.6_V3 FBT9QWP)_F0YL[<PB.GP@,?A.CC)2'\:- 6E4]\VXS/C^LBH
M;S14/N607T;7+:G<#&Q_WUG!L8?.7Q;I@30Q$ 9K@=V=W\LI?H,)Q-YUN[+T
M5158:0^P5)Q#> KW'ULWMS>U9@4V6N5=R?LR_^FCZHQ+#B2=6$C853=9SCY4
M.@V67DA8NY#2I3:&U".O%A5<NV.K\N),YY4>X:P[U_,@S?^T06U[;7S\A4>:
M^&PJ:2_WP]4X^7OOS"/B/[^Y_C0L_2'?89E5GMPH8I: :RQ'E#%8488>SBV
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
M<*&;*S'JU=7=,7.US'<M)[.VVCQ)_YQX\CGW@ -[(+1H)A-MP"E#FT^A3A#
MK0RQ8T.Z"V"\:4*3.CYX78C46N3RK3+FR7F"NV.DU^K";YL5O<Q#&BX9>]*]
M;M6<OQ,C:H7B20R!&;"?%1!92C7MAD[W,;LFC&!R'FQ51DE"+F4#DN*E,+0S
M-Y3J C.:0LYHZ:%Z)'6>^!7(/%25V>;G=2K''V6\"3%T!Z[03QIQBDC=NA9/
M:EF'M]K#NRQW8:U'2E(8ON_'KU3K_ UC'KH3+&K3KM&T;>:.0,]U_T]9GH.7
M.X-'JZSOAR.3X*($"=3!<;=)1X9S\OQ/USS%@"\YHH)G[GV:?V<KDQM2Q4EI
M>:N8Q;(Y('/3":K$G2+51+!EEIA0P"F;A6&?8!#;/:,I4PPG;" ->>=V1)Q?
MZMFAFOZ37&%Y0G\YY]7,.O>0_B7GCP9M'N\=M2'/Q(93=!96DDFUL Y,"A0X
M^P%#SB=M02&@"6*)A%U01905XZE;B&FN4]_AJ9K17[,NBZ)"MJH[_'-L)8^H
MI$E(&S72%C>G*!DR2SFOT?R1BY3ZMCG5MMN8KL%$C-Q-6,*\P>1-G5VXXZ/%
MU1H(^N]JJ1TE"<''A3N#O\0QDR=,'IS$JD-BDJU05BQ5]#"N/K$-"6HF-/-J
MZCOG71.& DLVR47LF*6*Q1*T0)^VTF,9H85CJI7O*PE54OU*(6K9;J;6JD%/
MJV4[4!=Q;.E!9MKF8GI6)Q1PP4,\I^R R6.,W9SYNT#3UZ]05^ 6[K5Q_/CR
M9 CJ:ZV6I.*3=W495U,J3S!L[.R/0 L=G9!Q3>Z\0(""QT\Q2/=^RS2-U#:;
M"',.T/F$#S<-EV>\&[Q<+D9S<_RGHX]G@XH<S?P^#(N^:UZ%+B=\-4BRBZN/
M]#JUN*O[X#>$ 0^)M>%!""RFUKH=D3)33]\51?GS>X4?%<-PCO7&"'\[[SK]
MQ%.?:A[NFV[KE_5E[R<> QV\3^;C1<TPXBGQ7TO:6+!_A+#=.6R9 H9QA78Q
M+G"%'K,.3!UGN:)4P$2RO4^[B3)\^)<+=PLLMCAO ^(UNE+K8O1UYK [W9P[
M_X5R1:)86/I(MB7RH1<2R8/*7'8(2&(9H]LPTI@ [/0J1K0TV4*87&&'B.-*
MYIL%E_FGC\S8S@E<ZY/0;]U?3!B*TFZ/Y:/7W_9ZC+&0,YT)E[(-UF %:L2[
M%H;XW,BTO)!.+7VSCQG(("99:G 'O"!@!K6'EGN1(18;7F%W(5,S5O63@[]T
ME<RYMMB!:X*G !NV-PN-'H6+7IJ 7W%((2@ GM@TMEU%T&T$EFU+49M0&4(=
M0AK=RO-P<M(RKI]5)]H,/%]TT'+)C)(3?7018EE92-CQKV-L]HN<^@U((&EZ
MB3*X_(UU#CU:H#+\6TP4%<4XF?HLLKVMX59Z'0-467*OBZKIT=,W_.(@?2")
M?C6M-6QO[@"VQW'_6\$Y:><.7#T/(\AXM"00T0&=*6.&@O5 =QM! 43Z8UX&
MD(10#N3DF\(X69<IU::?GM^#;^%\ CO.UT@<E]L^]">SS#")X\L=(TH3-M=?
M&^K"0Q&Q\[M'C,0D@TF"EQAO'A>##3/!C>Y:ZB.=0'WVWDRYAUM.1,>5"F(.
MSARQC"UL0G!W]#&ZNWG4=UD*B& F@$6'RPFJ#'Q[_CZW2;6J.O&V26?9RKZ]
M)W9--3XBWY*A__TX/:J,#)_)8J8W\N*B#6QD:C'F-C$T![HEU ))^? K3=ME
MQ<D][8K[[OH+MCK)KD[3'U9'C#D_ME]N3!(<=W3NVX#4EMXCDE\3I9HNX&U9
M\FPD& 7TV0#--3Y':QD1L5!W7%=NE\#CCE'A1Y/VU2)+5W>IYEQFG%X47HCS
M84KR'AL+HV_RFS: Q);6H2'BLMI..@A^=ZM/_=5W?G!W66#5I_9;P _U^V="
MU3+WNZ9W'W'%?CQB^:B0X,J8C.7%P$ON89"/4@/&L$Y%JE)*4^@H1=E7U#3_
M#O1VK(MIWJ?7JSVE(:Z74GJ[2$E-G"S[/7O?)F@8_AGE>?RBY0$0RMV^""PQ
M%\ RP-_A+5C-4)FU'FXR)K^__W;::VD]GS2M6]*J<:(V8WNSUCMBUL.=[J)'
MH&$(%Y?O.9F!Z_D/G657WTQ?*MC_E3;TBIR"^@O=0NBZHD<V(/+P*]C9:DKN
MLA_K!.IX'>,%CH%O<^M<C&6?S5,RB^E\T5QL+=/)2;7:L=I?G%.]XYG>8Y_]
M-E@UUGC6ZW^<KCW@)WW%QZ/_]91-1/9?Q=8T!>>-G'OG5<$2%H([AQ-$\3%4
MN3M6&)AVJ'"3%@VZQ05\[0"-K&\E @\\>R>3":('YC]XM"HA%<H4DTNNS'BI
MI\GG:O5PVS8@=?[T<985MQ<AC3*GB244[,REX=MPJ;<3V]W[3PX-0A.-S1MO
MU7355D?DZ8T(5UH\T!$,XU=Y]#'E)1^S0@; M\&Q&. <=CJ:*W28#)O",P?
M,O)@:H$4V$_QC' $(M)0,/(MX/>/>$QQL92GVR>WBOZVPY7I5'5;X5S]I<S]
M1UFO_^VF%(")7.%#%@:12TP#URL7]5B!D8B *UT8JFNYV)<C;*N89@]L!W*:
M%^7PKMUGVMUXZ.+09JG5-#)E\CB""A>=(=D%'+^Z32//Q.!!U!^;Q3S(P@8D
M&#$K1IY<CB8_@8JS'1@YB3ZO(V-9+/,VLY/5^-EO[1<)VN[>!;=VB&@2+:I-
MG-0$*(]>F]Y#*7,*,7XK=S8@V]#:D40RB2Y%1J:2Y']'EC(BTA: 6_5;5[_?
M_OTAMOUTI<;<9]D'NRP[2Z?;=1(-3NST]<L[M>[.D^N#+%-V4&8;\CZN>BW6
MPFW=<9NH'MN>8F?^TU^BZ[RJ1>C"JY8/'CL%2YP!Q'()"X8RJ7H_BE9"#R@+
M +^;%SAI],\*8O="ED>H7WJ1E@.! @8O(V(OJ:6EGT;^U!<SXFM?(DD1!#&M
M!S"^8B(N;!\PU5^&D%@Z_34GPBR>TUS1G6R<Z[&[PKP8'=,Q'S+PHT]A6Z;K
M;E7KFV2X+]V?:0164+%)RKLF>$(L@5>2%CMP5)T YA9%ZG2*!PV[?1TZ4G?M
M6QGSEIY,?(WI%@G=0KAE]..%&>RA-'0R#R"$R0[= ;H5!%.V#)![OVC4Z^1H
M$0.10+\I4^LOI-2EKQH3'_OF%,W\Y&VA(H#&=.<\)NP<Q-P$$ID1@.F]+^-Z
MHF]*3!-0^_POK9V5PFF?C#72?[P8^*$?@K[$G<  #K"D"VP= ,X6CR/+T;VI
M>$40YL:PS,=08P3/#X<H./"!0A,@8O_836GLQXR\@,L)7;!//5K6 C5GZ^#'
M"1("(([ESCX)-NX1?0&J](ZVH!7V9;O&6K_\/MIAK>B;&6,YW1UHE+.[;+1I
M*T"DE+95F-%L0&]@Y1@P5S(WZNDY\]7LM,GU07.(@K-+]O%#+7W*9P2-?<X
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
MNVMKJWSS*SOEA>+4GD($C?B*_OYDU0XXX-I#2>U&5*;T'7B%G+5K8QTW,=R
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
M<B'7]/_HHWX'!1+8Z;9L<Q1S!Q?R:IL+R6NLX$(^-@#]UBAG'OG:39'XS87
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
M9P=Q"BST@1X$G.J :E\ZP( ]"',H:JNDQD>KTUSL5-X%=US)D);2\#O,A5P
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
M8L><UH3990H<L-2+$M&&25Z-14I&^D:.4^*;^,;],@6_SF^DY4<W';"Z9_*
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
MF/Y[PTG;*BN'<2VG(YJWTFQ-ZJR_G#Q>KE2K -IG\$T*3QA::81UD\"</:U
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
MO_@7_^)?_(M_\=\$;&?F?P!02P,$%     @ 6(%65JDQ\B(CE@$ $YL0 !0
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
M*4T1(R+E-(Z<$L=L!YX;5ZG7+_5P1GP*XBN.C:\$[IE.DF] O094@(^DX#=
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
M>*CVN#E*" PX21!.<(YCI^UMSUAS(^%&U)O..MH3=QBO]L%LQY>>P!N9!Z_
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
MCE#&/%3S/C7V[+CU5#GNG1%_ UH%@-+ BX/DY(1<Y<>X%N8)W0V7$!XAYW
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
M"4,<IXC(W*GL@=VP<_OT3]4MO+X,Y2F\[7C!/XHC\\4I )^4+AB%+]Q@&J_
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
MWM=[\16%+L[TDWI)JJ]OENL__UWP._&SXAC]QT^"+4E5;7/\U"9D$41)CN.
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
M9Z%U"TR\%5OO&VOB@NL6:A\77;>YZ?KX+^U?TC%G'^0O@A>;>SW$^W4MJD6
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
M-SLMG D"12QR0RZ40VI;/4L6)XE6F5#:J97ET9.G1B&U<&Z4<8Q3-S%<I?W
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
M<RVA(+:_+,L$)(HBJ)205"19EBJO(_)+ TZ-8%ZMZXZ$;Q;&\C0OD^>A^$6
MW0R:D+ -S%*EJ&71GEI8B]Y.W(#UQ'RQ"62I7!QN5./$5?E#>\3YONN"<_=%
M?&PL>!+I+$UC#F.4)Q#G2D)F_YF0! M$,<7<Z6"\<Y2I,<@N_'2SD[)?=.YS
M+-UXXVJ$AC9I&G#:I;^8-O-RO@!8^+#=D^@$CMI]/L:+!.V>5/-<S.[IB_M&
MXFW,H[:+[^KCVAJ';'ES7P:$I9Q0Q#.S/4F0MIG,.:28*9B)/,89)3%.G+K7
M7QIH:IS02&>=ZT8\NT+*G>BVVG8=J>0=@7<&9S>R"('>P'RQ%]%V_*I!K*0,
M&677C4.PX+HSPXP<4]>M['$HW87K^YX3UG6\RDHY95F&>9QDN=*,0JZ0A#BR
M75Y$GD%.,\)TDB"9*K>651VC^+S<X[2MV@D)2BG_!/X]^F.$P /;@.]6XO\&
MZ2R*(OL_P!ZWW]:;,MK4GM%$3>D#&\=;_ZY5!0&P+7AC>-T:>/_Q;RB+_I2@
M&; O9GFE^<'\T]S^8'8Z9H*7Y[-9G>?0]93NJGD9_&SMV83,FN(R[TN00YZ%
MG44AV G6\0@CGSN=5?'XM.C\I?TXYLNNWW7YR'H#GJ),99+F,$VC"&+.!214
MY##/L(RYX!Q1IU+FG:-,S0#9"UF]TWX?^FD@W3[UJ^$9^&,_1&8 AT4G!(&^
M]--CC/JM=ZIY^+5W7QPX]NC#KN-9GG,BA(XA29($8JJXL2YH#+46@L>10IG;
M(8G[D%-C@H/ D8.XD?Y-YAS =[4-0D(ZN*EP-9KA0FB. !HZ#N;#RW2F<P?
M.2+E^,YK>S?8%*2R6MR^:U!FJQHE*8&9%K9Y79Q EK 4HDB01%",-?$BGZ[!
MID8[C:SET8J1MF]CA1.PNM%**+ &)I1#G.JRE6"8_DL.F 1O=7!BJ!=J9G!>
MZ?/M"CKNZ<D89C^_O56;^_+)YAEOUO=LL9JG&-.,B AR+0G$$4:0*H4@XD1*
ME+($H\R++$Z/,SF>L&)",])]^?K/@!45_%X)Z]N.Y0RTCH1Q/6!#<T6)U:TO
M5OXTT8U$*(8X,\JXY-"MZA$O7+B\9W%$M5(;MK0!K_)^L5K8BHO6/U?WDJRW
MWP2K6$H>08J8-%L9D4,JC5V1)SG'&BN;E>Q#$$ZC3HTNGHOJ61#1"68WL@@.
MWL#44<M;!?H_D[CICCN '\0+I%"5#IW&'+?BH0\,1Y4/O6[VXQ^I%O.WJ^UB
M^_0WM5S^SVK]8_55L6*]4K)T?6_FL8HD)KF&N8H$Q#G%D"B"8:I9&JN,Y!&*
M73CGXDA3XYE*6&"EA7^WXH)&WNI4P+%AY&6$N^DF*&X#4TQ_R)R)Q1F.$V12
M*/''N_7W_S+/J'C$_+"GC\M/'H4RG!5L:,+]AA UEJK.$W&,5)PR#!EG&F(5
M:<@IYC WVY>,*\%8ROI759ID2Y#V+OW#>G6WW["TB@/U;")Y"F(W(^1*X$;T
M;)28W?;"[,H:2D,TW#@UP@O62>IL@M%U:<_>:;:&6Y7(5WQ>+Q?B:>^:TR)"
MD1 QS*C*(69*0LH4@3'E&1(I39/,R5YP&&MJ%%$)Z=G]K -*-PH(!-# 5%!)
M.:LRD\TG7TDZC(_3 9%0?<TZ1AJWE=EEE8^ZESG<<F7#LO>KA\=M\4%]5\ND
MWEMG@J4D(P@F4DBSG<@-/22"02DB+A-%*/<[$.D8:WKT8&2K8[)ZM@P[ :@;
M202":6"2:+?UJ@2UA&%$!<D O@D'3$*WYSHQTLLTW#JO\MD66AVW]$P@:?5\
M?K-^Y%O]N#P.39^31*(,IQD49G<!,4\,8V2,P@Q%:13A)$>$S!_49K&67[=L
MLW7C#;?!?;Z-0Q&&^TQ>J;O%:F6#/3E;6AT\DTW<<!<IUHG$%"*9(H-[G$,:
M:00E%C'%B3W!YC7N;U>.I7>&0KT18$C7AAP:<#<F#P_AP*1^,O]GC,P?+Z!"
MI0*Y#3IN;I 7$$?)0GYW]UL*/MEK/VT^;];R4=B4@U=,_'VYOJMM'$3SB"/#
M0CFR430\BR"1<0)CE&4ZM=XFZ74PWCW<U.S&6C@_SKF J!O7A,-I8(XI!35O
M'-B+"FI9!S <W6 )Q"@7!AN52=P4/V00Q[OZ,4?34N#U^IXO5F5=BF+7LA-C
MB1/%-41YFD"L10293%*8BR22.D]X++VZJ'8--CG6J&4%;6%=FG7ZP^Q&)J'
M&YA*>N/F32,N@ 0BD<ZA1J40%Z4/"<3I'O\Z2G];;_YN/D3S5'N.7CZV/E*?
M:VQSE",!A;3=2)52D.>"0DEBCJDB1G&GDBC=PTR-,FI)_Q.(EJQ 5<*Z5R/J
MP+6;*<*A-3!'U$*"MI1-$$T0G-S+.(7!:ZRZ3LME\SH5@!7%VM9Y5!+\6&R_
M@4J3_SQ ]?VJ>-R4&T5>E3$IP&)EV[/;.K:/MDD[V'Y3H'(#!.H[<!G3CC)2
M'3>/5E?JL@+M0E,.5_N3Z_N582Q5;+^8"?[Z@SV\LP%+6E=9QTV"<H(,?&ES
M,D"P5CG-8*[2%&*&C+$6)1PF"6(BCVF:<*>"F[U&GQH5-PH JP&P*H!W946$
MG1:[+&]0)WBG[LSC/SF7B7M0R ?F\SYH]RC3YP^[^SHP*/PC+0]!7WHOQN^-
M7L="X/_,T=:'WNJVEXW^#PD2AZ8V]W.>II*H2$)CD)LE(\$8DBPE$,N(<L1E
M',=>?L'C(::V+I0!5,LU6P'-Q&)IHRWOV=;80>:'R@8JJS0_*;;Q+=)\ E^W
MC?UUJ U,[4?=^ZQ\@T6:M70?)M#,#O"2<68M!2^$F;6OO#ZQMBH3<LM^EN7B
MBYN5_+!@W'X "U4<)(>*7*:($00CG5.(4YE"DDH,#1\0'D<HH]*K!&%/.:9&
M'1^5K0Q45[DQ&E0=(:S3O%'!LQ90W_EQ8Y414!^8>I[G]1X"7Y2)."T]1DO[
M[8'F !G!/E*\6+)P#ZBZ\HC[/*X?=[Y]W*SE>KEDFR9U,,NXP+F"4:JXK<68
M08Y2 :64(E5I1AE-?4CQ<("IL=U>/C]2.P+.C:VN@6-@&MJ+-L!1Z#F] Q'&
MT>-'98)SRAU^XF>OZUO#K&R$\YEMMD^W&[8J6'EJ6KQZ:O_EYN>BF-,\3G64
M(TBPCB#&*89,(PI5JC.JB1:1('Z%S5R'GMKW7LL'2@'![U9$SR-.#]C=.&$8
M, =F"R\<>Y1%\X4D6*TTYX%'+J#F"\AQ537O)_0L4;!>RQ^+Y?*+8;IWZ\T/
MMI'S*&,Q97$.4[/#LH%9J,X(I#AEDB49ROP*$AR/,36B:40$OULA02VE)]><
MPM*-5*Y$:&#V\ 7'OY[ >?5#50\X,<*XM0+.JWA4&:#CTIZ9?6936AN^FA(L
M,8H@RFS\=\1S2#5BD"&&!<MM256O3)W]HZ?V25O)/+/V]C"Y?;;]E!_X:[5"
M#; G.-8U5+;=_L'C)M<=*7242W=\1;_O[_U*;%1YU+9\O;Z_7Z^J[G$WV^UF
MP1^WI8M@7?[N%2OLVOY4-M?<F(7_KKROF&,I52K,FHPQ)Q"CE$+"L@Q2'JE8
MT(1*Y96 >[U(4_O>WRR6C^5IHBJ/JZQ_KEU!?;,O#UR4Y8&9)=:B?_O+ )/J
MQC+C3M7 [-12!E3:- TRV_J [1KLYO/M;C[+*V&I):C5!&T]P[%=.,P#L60
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
MA=70MS+!:)/N2'13FLCQ>\BUE6YW<@#\Z72S!ZOZ#-3V5#NJM^I<O37Z@QJ
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
MG[ZN/1+_M_\!\_@_FOB%I+I<_Z#_J:][K/>XED\WU$'I3EJ<HP*R1'-\%@N
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
M=^5V@*49<'(=CYU?9L+&/[7NZ%GGJ'<U;<ZT3\JI[[6-*G5G^Q2PIUG443G
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
MN^2Q  1E&&091U#PA*G$RA+M'65J'%0+";:F650EIAOAG$?2CEYNQB<PF9Q
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
M@FK#,56XR%+. %,L RB7#!2(0L!93A/,!%%VX5+#AI^:G760/MJ+OU]<L_K
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
M(CLV+K<&W(X'@\ 8F/<J! W+53]TQ)Y%1O"ZXU6'[SQV.7=%RU?/<^MQQ^V
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
M<M"GH=2XFP+3T/G21L2TI!MF$?R7+$T,97-H3W(,::J_R1@7^L-<I!E@6:X
M(C%AA6D+SYP"&I\]?6K?QT:X@;$/SX&S^R -AB/P=\$:"6<J/JNQ)T9\_NQ1
MB>FL6L?\</ZBVPHO?:$_ZTS[BC+FBE.9" 9!3A'3GG1! "F$!# O("60(9@[
M)52='V9J"[<2:E@QI2/\;#<%;T4E^'9?4R#)5$*J19Q%_2@-KH)T'@3/]8Z.
M!GF1RD;G%;U4P^C"U>YU,#[*C5IO'HS'5AD.U7'''ZO%MFQV@R N("M4#&*)
M8Q..E(&B,$WO.!09PIP4T*J_E,U@4UOY'7D;]^23)MG-@F^KZF F+J>2WKZ0
MPU6X^RG"-XB!B:(C:E3CUP%M0!F,J^C9%\'PB>)()3#LT/R+GPH8MOCTU+^X
M^HC1JE_8*M.M?6%]SS +Z]U"/TK^MOAN6H(]KVK4"3GIEC^:9UF<HBS.@9*"
M (0T'5->0! 3B6)H2%H4+M:7NPA3X^=N<,[PJG(#IL+.D L+<&#NKH4'E?2G
M!=%FD3/VSB;@</@\F8<#!!C5=!P.T+%9><.3AA1&-UFTBY7\;4U7[9<[3:"B
M,F,@+4Q@2TXD**2$@))<X"S+\H1:;05=&F!JU%7)&!DAHTI*ESK>9^"[;C;>
M"DKHLX(C/(8423L'C$M=\]L &JV<^7.@/-E[?=KW5BT_<]N(Q<HO"_V\1GG/
M=?[MMPY--MF%A](8&9$$)52"+$4"((@X*+)8^]0B+6)&--453MD] ^68&AVZ
M5R49.@&WFVZ>8'U)^VU691/S8]LM3)V2&[$<P9CKDV(R%IT%5"YFG<WC!E)C
M>U;XVZ$3^^]5=I44]ZM/IIKD1O.Q]JH7Y1^K-2OEYKL)9'^_>MQM]9\U5/JN
M2K)#/"V6F2()C$%*2 :0++3S2Y,$$*6RA'%>9"EVXLT 0DZ-5 ^U(P]A#U5[
MS6\R>KU>F=,B$VJA?RP70FZ&N,XAIMJ2H5]X D/3]W[&#C6E3/!TJV)D,L-;
M):-*RUG4U3.J%(V>:QJT_&7(&?'U$0@AXKA?B( @GWP^0HXUL #@>O75-!DR
M+=Y^I]NFG]LG^=B4X;I7'[5(?/%H.GN8#]H[_?&;TYAF&<L0$*DT*?4I!4PE
M#*0"8B;U6L3*Z@SK)BFF]G70BP,[%@(<!+X=G0>'-#!?&_F!4:#JA3F+&AV>
M&I/:2.NQ\M\M8/FJ_C=(AG$K -X"TTD5P)L>-HSM/NZ?_6;Q79MH*U'.&898
MPEP $J<<H)QC4*A$ E[$&>)9ID3*!^0)GQG*:G6-GRB\ER]ZI O'O.MS@-*D
MB*&DA?X:) 5 ,<P!R0@&D'">9CA5)'<JJ#84R3$S)3U#:$?Q-P(3.E:AD<XX
M2'OY_%%VC_*>"/G<"*/2;8^*QV3:=^DPJOPD33M?*=[2C:E]L=_^EXJE,(9
M")$")!($*,PR@ B#A!4I3I%3ZL_Y8::VOELIHU9,MR5^ 4N[57X[0H$7^@DX
M 6HK]8/@:<%?&&34-=^OZ/&ROW+UT/JH7PV7:$O,[&BNOKY?57$[QNLT1S[O
MM_*AG),\ESFD"!2,:@]0Q@10%"< *Q)3G!4%DTZ1RS:#3HT5&IFCO=!11^KH
MS^I(L1+<,37!:@+LR,,WK*$/K6]'=$#55GN(O-5RM1ARY JO]B"<UGUUN'=@
M^D1KU+Q>/SRL5U7HX&M:?IO+@G&&M=]&)%( P20&12H@T"Y=PA.8$6V@#'#>
M+HTW>0_NC>1+:G:S?_F?R5]@/CA/^"+@*I<,%CD" DD$D#;[-/0) QG/BSS-
M8(IRITZ[-R$];H]=TR.LQ=<3FG8D[@.CP,2]%W$6U4+6H=3Z7UI.CTDL5Y#P
ME<9R:9AQ$UFN*'N2RG+M^@&1A;O-1C]1;NY5YZ%5$FSYZNGMP^-R_21E.6?*
M]&XUK05I$0.4IE2S0EP E" A$8E5EJ4M#??S@L.H \@XM$'8"F[V/'B]#JI2
MG1&MA#>Y^;(5WR$.SW(6^MG$-[(C681[2._5,VJI"QJ4T:NGZ&TX2!VB'?U#
M.U8 I,M;ZRLZT@VMOH!)RR>-%T/IIMJSL$K'6X?V?*.E?+TNMW.E$I6E4($D
M+;0Q1[,,$*$]>=/D,2,Y5GFN7,HG[Y_L9+V-5C5Y:<33;WAIFV!XBICEV>L0
M'$*?I];MU(Q4/CNF'2GJK1-:^]R1.YP=J7/:N>SX@J'=3?:KN]D++E@NXQ0*
M0&,I <),@:) I@JW3*!D*%$\<^MI<C3"U!RJ[K?<M6O),7AVJ_(F2 *OSF>6
MC?_M\XNJ>VM&<OS\D5N07%#OM/'(I0N'K>/?UROY]#O=_%UNW^VTYW6W;9N*
MUW7.LBR)"=/>$"_,JDX0U>M;8, )29.\H&GJUBSURGB36^/:^ZR*UG+S@RE!
M_ITNS3&EVX*_AK+=\O>(76 RJ"2-:E&C2M:9*8^_[U?ON=R:)3">J.+::*,2
MAZ7JQS1B>]LP4OFP,\QTK^H-=1/_V>RPEW.(9*((2P"JK 2%&"!QQH'(N<0X
MR5.8.]7WNCS4U*BDEM1XJ)N]K%%9"^O&)CWPVA&)'] "<\@!KX.842NG/^ZX
MCH4GVN@9:%3&N*[P,5E8W'&C'U^E('1;&F1*0:CY(94%0!P30*C^'XAS)!64
M&1%.1_,7QID:0WSFWZ38+:N$G$KDRM<M([4VT<*KJLJ+L46..HP/W0HX MUQ
M8V XE.-M$P3-;;F"A.]]A*-17F97X;RJ%_<8+EP^<N7PEKZJOY9WW^EB:>1Z
MM]Y4M4SG2G)-*BD&E&.D*0=R0 M2 "F(PBP1,$^=4D%""3HUNGK=W6BOCNC+
MB+9"5Z2U*,M=Q5JFZ'=]Q5C5OJ]-NAW;36$J0Q]/W5Z1^V"IU>I&=\_>@DKC
M"=36MIR3EZZ6?4W,?XWZUY9@>ZMH;3O>L&_/JUVY6,G2Q"4P;8@9F0[9TL^2
MI=N\R*<YXU00S@D06"B I(Q!H7@.$($H%QG-,'+JRS5 ANE],?89YGQXAOF0
MR;"C^\ 0!V;R5OJH(_[L8E;_(8?\<D]%9VZ^ 4!/M#M$@E$9]0:(CLGRED>Y
M1U+=<6X""/73/ZZ7"[Z0IFW77^5*#[$\&]^M8I@C/3^:]N)4V]54 ":I]N(I
MYFFFF,"95:#ED,&GQGP'^:-6@<J5;U2X,>Q^T/3T4V)HT -SX03QM@_$"HG[
M2!%9WO%WBLT:"F!/D);S(T>+UAJJ;#=L:_ S!F[EZ->OLN:K#:(Y3"&#$A:
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
MB'-;ION^1Z)MV9I7\@<;^BM8[C6PSV:P0[Y_88^"Y\@+?M?SMA;XN/6M%GI
M:J4=G/9IE]YAG2@ETP9>/WDC3@CU9(_8O6>R'!(GM;J9)&X/NEM(;YHOT->"
MKNK[BCOYN"XV"QQR06.< 8XS B#!": IB@&EF=2_5RB*K;)$^P:9&R&W<@9[
M08-:4GL3ZBR@EZTI'S"-S;/N"#G96)<@&&1NG7WI9);7);6Z1MC%S[HO\@\:
M\^7G[^N5;%(M,BP413$!2.,$()4I8&'&M/VE8FU])2RD5AZ:4R^?VZ*NY LJ
M 2_E-%P&[O(BO@:.D1>O Q).B_:<RH,6Z]'+)ENDY]3H+LZSGQE0R.7^OJCJ
M9+^FCW]?%__02Z&;"+&[6ELP$L=I B%(J2GS+0@')"0)D%DJ!>,FKLPZE]MV
MT+DMXIW< :>/YC8]7Y7;H@H5-]67S6_XDN8/#D<E:_POGY;&0'5L#\D.4"US
MT C]OY]GEUV.2Q@.JD.IFA' G:J2S;-O+6^C'W_0Y5::KVRGT7%5%_.QKO%6
MFA3/39,5L5DWWVSC&]A6AS#]) U^UE#HKW]GQE;4- KW5%?3%?B^ZCJVKYJN
M^(ZC<L]J\[@^>V5,1'WV,W=%"T*A3(F*@"24 J@2#+#B'/ $990I2&&J%IOU
MAB[MKM9.C.%$_;N1IKALS@?<DYT"T>Y&[$IH1N;O/2J-2Z:^2QSAVOU8?=^7
M[9T17N:*_5C%LQ?K)SXZL/INX]CY2G_5X<+O5S_TCK0NGA8RB5)$$PYHA%(
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
MLQ!I(<K@VZ,PW6#-)-8*F5"I9]/7J!3\\=5TS1DGKW <S'W%3_D5;MK0J5&
M/8J:&F<4=X?*9Y/DO5Z9C,KR\UK;W'*3%W7H[DI\VGR7Q=N'Q^7Z2;;WT)WV
M9TBP!$E*0"IP4F<389$2@%26JC!-DQ!:W=)<*<?<^+Y1I<HYKGH!=;6I>*/2
M)V@5"EJ-!K2ONW8*+SMC)IJ8D9G\7VE.[!TU$\W-1 Z;=HX>ZSEZ/)ZC=35'
MLITCUBCEJ0:^!S1['#?7O'TR!XX'"+J.'!^O<[\4?,]5<;L5N9[IV\U&EO7W
M]MV2WB^DXH)CB0"C4A]7XC0&3,D$A#0D)".$J(39W@J>'V9N&]+[U^_N@D;4
MH"-K8(2UOQ?LP?7RQ: ?M$;>)88!Y70U>!F'07>#/:^=['+PLFK=VT&+3P_S
M=9A$@SM]0FLB7&28)@PA"&A(]9*7&044$0X(#]-8L8CIE[CX*IZ_?FY+W4@7
M&/'<W 8'F-D=^X<C,?(RWH$P0M3/::4]G9L/7C[IN?>T8H?GUC.?&IBH0XOB
MJ>HP_+@NC"_TP1QQ3S2L:+Z6<4IB14(",%$80+V6 48X T3HW[,$)UPX%0=S
M'']N:[T5OZX%X[;@7:&W8X01 1V9,EJ)F[HZ?Y74B%GGCWOGD($P^<K#<AQ]
MVB2M8= <97 -?,W$V>FF?MGF:7_5759GHJ_?Z>ID<N3!G5'UCV\T&>_T6I D
M2K,D)@"B2-3&#N$D!B1+)8IE$J=V'KG9:38W[NUFPE]3XVPV (^=1O^27XB1
M]PX/R?<U.IUHI;+Q1VXT0'VI^4>! M5' @-5IR7;#'+WQYK_E\[X]Z[7OT:=
M@+&FTUMU@=$$O#8 8_?&.J'J=B4ZS?H:NU-\6MU)OBT*;<)HS?*RNDC>7\OK
M?3R3J6 @C%-3>30) 8'ZKUS(1$HE(HR<$L6]2C>WK;I5KBJ2OJ/$\GG-]*:5
MA;ED^#"T^Z??.78-O9AXYL;>4T].VLV9>6K/:R+0N^Y.PZ!2<:(H#(_P>P_"
M\"';"\5@>(3U? B&ST&&;0^[JHI?Y'VU6[5YL$QF*(4<A-Q4!,&< QJ&(8@%
MDRR57(2Q<"'Z,^/,C;+WI43+1DXW)CX'IQVG>@!I9';<X].*.(*7Z@(,GECJ
MW"B3\LT%50^9X]+'AWJ1UL7FJRP>JLJJK]?E9@$Q261"M9V'% 10Q1)0A 1
M.,,8X43$V*G"_/$0<UOYE81 C_00+(V, =="NMIAQT#:.C>N@6=T+X-!QDC7
MUE<V OH\V9]3WML1^VB B<^ZYQ0\/G2>_:2/AA)U</_M=J.'R?]'BD46IS$.
M808H28C>Y6,.L!+F<BO)$HD$$] IFZA_N+DM^:,&$G4&44!W$@_/*[H O!TM
M^(-S9(HX:AG1Y KMA1VK3<0Y4$9I#W$TV NVA3BG>'\[B+-/#3P]&-?6Q_5J
MU^JZJ1RVH!1&42@1$"F3 ,(0 A;#!*1$1E1(H3+N=&%^;J"Y44KM.^\*VI;!
M<SQ'G /6\B#A :ZQ3Q+N2+D?)"[ X.LD<6Z8:8\2%Y0].DM<^OSUY?X.F[J^
MRU?Y1E8E[1:9X$R%B@,:(6UZ$*H90E(!5$@P3C)$8N04'6<Y[MP(H]/4N"KR
M%^0[/8:7^^O#W8Y 1D!S9#YY7COQJ%?T35"+75<"'*?JGP50(]3]ZQOUQ2K_
M64#15_O/YO'!_4#%EF]>&Y56F[HM[5U>_J,-]*-Q2#F* 1%A"*" #) HH_I
MA.)01"(3+'/L MHSW-S(J)$V>"9N8.1U[O_9![+MX<<7=*,??LZA-H)OU X5
M?[T\^P:;NH.GA>(G^G;:/.6>O7IP;7\G'ZCFJ*8YE?'@?%([9VVW#_*^,P#7
MYZ,010D0C"0 JA0#%L4QD#"%)$XA%&&ZT&]G:YLLUJOE<5E07:G&6U>M2H V
M$49%JU3CH37.6OO$R.MGK)^W)I^%D6GM*,!KITWM!@XJC_ GU6F_]ZQSO%6S
MB!%FR3Z)==+9FBB5]4X^ZM=5%W,_VPGL6S_&6-Z?P%4S@<MZ FFCIZ<T5V]X
M]R2[7C_&9"FOWN#H)K[Z>^G S)KUPT.^V1616%>%(^2*Y[+<Q[[O8XV@P"))
M%08D22F .,P CD(!B DM$Q$*&76Z@' ;?F[V=T?ZNLI+5W['-!NW>; SR<=#
M=^2]K!?88"][\,<HP5K#</.5=>,V^+1)-X. .<JY&?:6803W^WHM?N;+9>VN
MT$3+];Z^79H&VWL/ANG@M A3D62)R?]%! +(,@D(IP2@D"N),FW[0[Y8R7OS
MZ%=[BK,6P&K]D7K]'8DQWEKLR-MQ=@9ZEDI7DK.?"SM^\POM--36RGP3M%+?
M!%V(.W[1#UZ;*3J#Y8G/[,>=E,J<X3AD,?<7#+?0UJO.;7!=!W 1(05CE40@
M@;$I5Z#M,9;&!$1"9 C",)-1XFJ*G1AGCC;7>G40 9+7I1$'1W^<PQ@J)>*,
M92!*4@X@BB7 "4E JJ$G"1(RH>GBL<H+^;*AQ68RI _'' _O5[<?;C^^?MN&
MB/C!-86IH%*F@.AM%4 A8X!# [.(A6"<P!1G#:YO5V)B5-L1_\4PM3\27(G2
M!+:_7N#/ I-NFN*G?DW\'AP\VO*G1IG<:.]1]91UWO?Q*R*/3&9>(;^;6E\_
M9-V]T&R0KVGY_=UR_?._I+B7O]-\535457HWN9-\2<LR5SFOJ[C37YJ3$X0P
M%P 1(0'DU!CL@@#):):P1$(5AP/,=&\"SM2,_[8JI*F&K[=)8[J;_">NU0J4
MUBOX;A2["5:RNHS?T%]MQ;P!45!>)MF.S*:=LRGCK)XIU39I_<VH\*>;P*@6
M&-V"_ZKGS:BW^U=J= P.E;PQ+5X]1VKY1-YG:)<7N::/!?,)Y\G@,:\#N%_!
MOMYJH_U!%B;5FBZ7U1O;, Z2<!YBI*WK2-O96&6 2(Y FF54)B2%*E.V]8'/
M#S.WH\Q'3;>%_"%7)E^U*Z[]]5L/II=O/_T@-;8YV CY#*#+@1HN2-G?0/I!
M;**KQ9/(^;D9O(Q#SY5?S\.3W>5=5J![26?QZ:%U[:H>154DK\@W6V-MKTSN
ML!2OMIN/Z\U_RXWI@[E0/(ST69D#E<%('YAC B@7%$@2T90J21'#;@7M[ :>
M&V5^6SV:1K>/^GW?JRMO;:X^%N9"?/-4W13)?V[SQ\I[FJ_X<BN,TWH5T+HF
M?AD\TB>3C>U: L]REBR/X"-@/S8)-[UQNS('K= !VVX"+7;PI/<S([C/^G=N
M4'DK?&<Y[,05[]S ."YUY_B\NXGW]>?ZZ_?UMM0K\>M/O0B?/JWD+==+LJR:
M^K;9]6$<<D5QJHF,$@ I2P".8@Q(!EE(LI2E]GTV[8:<&X_IKUP4=,6T-V0L
M,;YL_OE';F06NB3P *O0$DQ["]$_J!-9BY<$]V,XNL'38T1:OF@R@])-L:YQ
MZ?CDP%+GVS)?27W67S^P?%671MN/<2>K:TN3OUXN6!PF(4,0Q-KH!#!3*6"0
M2:!"QE0D%2+(J9*,_=!S(^F.F*"HY1Q29<(!>SL#<AQ$1R;O5NB@(_5-=PL,
M&L&K:A4>XQ[<T?)5H]U^X&GKMSL#<E3;W?T-0\_'>]=DOKIO&S40A#%C&6 )
M%0"&- 4TS0C@D(HX4332MJ7;8?C$*',CH^=.?RVFZQGV%)*V!]8K\1G]='H
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
MS6RN]Y^I&#0ZWM2.8U"I&32Q>\%M4>@Q9%W?\T4N_(?-QX3W_XX"SBX<8!C
M0Z(#!H[D?OYH(L5,&'U;?/#O^>9[VWN^^7)_E<5#N<"**L$A!C01"8!418!$
M4H 0TBRA@E-,K<)%'<>=&Z>W"WYCA*OOY.A3:7D-YXKYY2/$2$B.3,%MS*@1
M>U>]-#""!ZWD-SMJK80?!U_[L\)(.$]T2/"(M]-I80!J/<<$E[=-=CX8H&+W
M8##D\?%.!"8:31H/NY[5Y>YSIC='&)*(* JB2%O\$$D&,*,,B(0D6&#$$I[Z
MMOW/"3.W':&2LRG_:,)W3:;SJJYIV$;Q,KF2*G<LC'_5A/FS\WU,PVPL^GJN
MJEM*HT[G\V;67L1NOX3OA!;Z65%F9XM? FV(U7WQG>,DE9I,OJ\_UPN5)BJ2
M) $BXZ&VKXD$E&41B"#*B+:Y*8JESUS29MRYL:G^XD*_*:0MP':4. )LH]]>
M6B>,:L&G2Q@]0&JB/-%VU%FEAQY X9H5>OCX,"*J^KI]4K><FTB[?'7_>;W,
M^5/]W_W]"<YHFE!MY:E$<M.B,P0L@BE($B:%@#24&7?A(;MAYT9#=6]%;<)]
MUF]M#VANO&2)MQTM^4=Q9%;: ;@761M8E;C!'\V?HX2#N2'EB94L!YV4E-R
M..0DQZ?=?8^[2M;[9B?U-?W!?2[,4LG2E(!,F/0EHC"@QN^HH$Q"ADD6$^N
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
M!44J 1:8 A7A+"(B)6GH5&K$;MBY$7)'ZF O=M#*[9AM9X>\'=/ZQW-D'KT
M9?"'$3JHI/99W,X))E^I<7:#3IL(YP3$4=J;V]/#F.EMD]#Z118_<E-&]%0V
MW<?UZH<L-4-6'0G**CNL^^^OU^7FXWKSWW+3"?K&D2)1Q 1@1,0 <L@ 204&
MB8PQ#\.,4;<@_-$DG1O_/2M/\*P12G.S%N@?OS5ZUIU/'$EQO$FWX]%93.78
MU'LI6WFG7]N\QBBD?[L)GN2FDRA079YO?:8=C@Z_)TH?3\Y)=X'1X3[<.,8?
M<-A>\[DPX3B;I\]+LZ6MJM8VCV8Q[*O\[2TRJ%@B.99 A8(#F"48X$B& (<D
M3E66QJEP<E^X##ZW':&5O2J>N1/<C?.=P+>C\;$@'9F96[%O@DKPYZ!V"I&.
M9!T/0<T3H3H-/2E'#@'ED/8&O<,SDWW5[WNS-LZ&A<ABT_21 9Z)#$"<Z,-\
M2$,@0AY)\S^*G$( +,:<*V^=7&DW@1$\^*,6W3$?Q&8"KB2Q8;".S%U57Z[Z
M1OOKL_OLRSCZ(ZIC9,;FI\Z(\Z"E8PBLV>C$H^[7W&T$>MOQHWR_:N(SS85D
M1F(59T233I88TXD#HF0"6"HS!*$4@EEW\^X;:&YTLT^(6+;2!IOOLBI03%=/
M33"X2X'-7I@O7Y#[ F]D4FEP,W4,=[B]-^U2&U$]X65_:^X+MXDNSP?CYW29
M;@-*SYUZ[^.37:W;*-&]8;?Z_-#6'&RSKS[_8=>E 4&$1:;/G"3A)JTFB0%!
MC !*,(H3*E"8.<64GQEG;N1IQ.PT:KBJ2<9I8.WL,0]PC4R7@Y :T*ZB%P=O
MC2A.CS)QBXE>58^;1_1_?&"^"7W,-W1IW%QMQ0_C GNO38>\J 8R-3A3K1]6
M2H"8< J@D)HF0F3Z(4/*$D$A-?V0'1).;$:=&U7LI0M,EP=9F@N)0G*9_S"E
M;NL>+[PMBC,D MQN,NP(Q3O$(]-+1]Y@5UG(2'P3=( W0GO,.''!R%?*B=68
MT^:<N,!PE'3B]+#[D:_J#G'+]3&RK&+2FEA4DJ0H%%D,8L8A@$IF@. LU025
ML5@*PI.$VQ[V3@\Q-_JII+0_DYS!C<><,6XJ*TESOY!0 G"41H JF)!$<()C
M99<][0>Y:?*C_6!W^>1[/1XCLVS=3Z<CX8#@\#/HV)]SKT=IHA/N +2<SK;]
M0/2<:L\\.-EYME_P[DGVPB<G:P&PB$6<)B8N/ M#O6%@I$U8G,8@Y%D*PX1Q
M*<.1J__/;4>I8S58%:O!NP$W>:66*?PO<FW@ZB_PM(7_QZOY/R,J'EKNGRK]
MW9A+M7_/QO$0">9>X_^<X7S-JP9>W]9?I_*3JGP)3=L/8ZV7"YP)C$(< TIE
MJD_XF3(%MS"@,LR2!%/!>+18R7O3L,WRXO;\:%:KD-2KL#OFR,ZMO&V$PHV0
MCC>S/=A:WLA>B==$422-E.:ZJ?8(MJ"][@7-_1KV,AR^KE][1IKVVO6RRD?7
MK1:/^*C+M:O\NU"4(J72%"!!,@ A2@%+J3Y*1CC#6(@D%$YE",Z,XV0K35!_
MX+-^F=F*?YCR ^;+K[9F\PT>\E7^L'UHZFP]-M-Q37&M/=1VO.$!P+$/G8>E
MLG9"CE4+ZPB%44I>[4=YP<I61ZKV%[ Z_KB[2ZZ335:9*'4H;>N88UQDG)K;
MPP1I5HBY/F'HGZ3($DB25"118NN8ZQMH;H>ICJR-]5X9>$Z)"A?!O>R!\@79
MV&9$)ZVU1JL6=( [JA<P>Z>4+^ F<DUU :Q/\'6WOC_[\4S9H-'CG^I]?#(O
ME8T275^5U><'>JQ.GN<^/9K_WJ[$>SWD:I/_D"9LKJR2W9X6:11CB;BVM#C4
M1[(4,T"P4"#"G)-,219QJS;35\@P-Y+M.D>Z2CAZI 9,AJ5':ER(I_!(G7<]
M!7_4$@?C9,\.A\Z7\VF !-,ZGX9#=.1\NN)5[@;C^Y4F!UEN[NA&?OE)'S^M
MY%NE)#<C_'_;Y9.>BC".FBU;X3A3J>* QJD$D#)3W)2F@&0\2P13)!+,_H;2
M9>CYW5NVT@=&_,#('V@%;H*="H'1(8C#F\"H86\T.<W(9:MS+)1')CQ'> <8
MITXXVQNK8^$]D?'JZVOM9-(.P:S'Q'5ZW60F[Q ENR;PH.<'EY(UEO9SKT3K
MSWRSE0O)!8HCF $:FBK7&&* :1("(5.6X2C*JF*R3@5/>P><F\NQ[D;LP\%X
M$6H[Z]8G@",S>R/JD</QQEQJ,UDU0O5:!=4*&']U4/N'F[H2JI7R)VJAVCWG
M;F_^79HR_?H KZTT>B]-(JPI)6%([9/:^4.[ I2WK*QB%Q>*1YI>. .4Q0F
M3$I B4 @"GD4$10IH;B]^7F%)/.S1EME *VU"42C3F#RR^R-HFNFY[(M.A'D
M(Q-8JT70J!&\Z6)MDJ[VMRK/R,ZT3&O4<;!3KYD2>[-UHJF9R(J]DX_UI6 9
M_&QGZ^3*>-Z11S6SM:QGBS8*>G+<>H"XQ^B]YNV3V< >(.B:Q#Y>Y]%"_BO=
M; O]YU>3<[(O74+TKJ723 "D+70 4X@ C3D' J=9''(:98(X=EZP'7MV3F+^
M78KMLEIVWU;M2C0>8],RYMUR_;-\3IF=PJH^#.LS,W2%C7T][B]F;K_3\.M3
MS']+6@2M&L$?E2+C^)$' #BF67YFY)>WT/LAL3+6+[QB&.F]K^ISU8< R=H2
M$ING+Y*;P?*.X1&)2,4LU)Q'0I.RC#F@F$N@H*0T(9G@J5/=6/NAYT9Y'<EO
MZK"\MN:,Z:&]$]_9-!PP*78T-P[4H[N+O:'L3&ON@'EB-8>!)R4U=T ..6W
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
M3.HTZE?TT'=TX=,#O;_RL9 \KYMAKL3MP[K8Y/]3&\X$I2*#*@*"RQ# 4!'
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
ME#' L+9[6,(3'&LJ(\0I)JAWM+E1UU[8:O%LS%^KS[OQ5#_"=LSD#;>1N>@
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
MDFVGI-\>!^W!TT#> T#-K7ZEERPHS[UW41'P3>VH4'O:<&- 1>3"\Y*B;QU
M;B&CW\8#[?%RK*0' )8]YGU?,L:B2?5J(!E+[<EV<@O>1@%.DUNHO!"H6_<?
MV)NX?J^/=["+=:*5'N&VF"]'+]<LU:9(]11L^0'GXUD^+2=Y=KY258TR<A;%
M1G10&*?E(U4DJ8D(KK9]3)BB*WN=;],+-Q!&_[I!U[ZT]#WIZN@ OA.A#QQ$
MEXO/RVB$%1:D5&1[A>(0 P8RRDPK+;1!N9>Q.A)&?4;UW6C_$= Z0!4#!]=)
M_N^+Q;(NRDOK*TUMN1 $:)=K+I:BTF D!Q%EUD'P(,M>@T".M59WZ!HNX [!
MQ&.LV3$*&H W=FWTWU$8LKJ:/G(JD-L0R-*3A5_7)WG+"@A+NWN]Z)2:WZN\
M3T7?D_K:Y[(/$_  (/+0<!P>D+S+G"JT&2C++#A3)*TPX0GL%+4V;Z-RS$RB
M[I/8!VIXSUE$CQ'WP:@Y7YDWXFB^;&1>[IXJCH*TGBO:_&D9:>+#,'#9"\!8
M"LNE)&Y;C[*Z3\5 /.TVB#E2R(,!R\-C;S1#H4I*8#,W];IM@I@$^8_:A6(5
M6N=:7_HY;N)0]SM3&^BT$?FQ=44?N@?2:K[DJ#CBAD?RRR1Y:*H>*WI%)M5P
MLJGT_Y)3ZUKVAVCI>W)LUS!ZO,"'AJ+;#528P1@MUGMTTA$GY ,Z[PMPK0IY
M]=8(T7I\WN,;U'0X"[8I7@X7[2!:%ZU@OG;+7EW,Q],OE]!;6<ZK*[>8:PX5
MIXN5DE83148JAZ0+IT B15H.)N<:2' HL2CM@]#"M:[Z.)36OB?%MO>0NE;8
M $*U!_A<V>)=;!K%C>6!@<_)@A)2$IO$J_+9(/,Z&]UZ-,R!I/8]?O8I8-E4
M7<-%Y:[5]V8V+SBN5\^M5H(;"F*"K4?A@B*9R"('DP(7+'N6L'6CFF/H[7NL
M;=]F\S#%#:*IZ^-7XPVSPD==ZN6/8NLT5E]O85# #4Q)66K?3J=;-Q X@MR^
MA^;V;$0/4]L@,'ISW+#X/'N@\FS%=+S+]$?\GXOQ@KB^G'FXEM)'3+,OT]53
MU@&;X:$6C"@0=720LA$A%.X!5<RBSBZVOGVU8+<\]=Q<K#'<!X6 Y^E<C+1/
M7 DM00J-H#)7$) SX+E8VIZB#;GUR<4!9/;<TJQ_7^)1>AHN%'?L1"-F1&1"
M(MA2#W6\D."+M&"-,:XHJWEN/EWQT53VW'JH=W_A45H:+@[72^TC+I;S<:K=
M0NK'3OX(\[QJ3'GI%5W4Y+_47#C+)(BB<[W:[,!K&0!]DDQ+P="USI,?373/
M_3>>TEPVU^%P0;M:EGOQ:[E,FLL,Q=?K^)@X>"1I<Q=%L+&D4EHGZ(^E>3_(
M/I=#H"?5X  0>]T29Z-BH_9N&&F;%1>EML"IG3:#JYD/)L Y^M*C=ZSYW<Z'
M:-D/8<_EV*B)Q%LWP6AT3+VV[">)8K3:52EK&8VLO<71DLL1$P,G?8!B,[=:
MJIR;%^'M(&<_&#V7TZ!6<A]$1N@6,RM;>\7+R]EB^3LNO\[R*-8"5Q2F>JQD
M65VH78!%K7XM*HAD68J=UL\\0-=^L'HNISG--3$(?#4=H!"#R%YY#1GK$I.6
M BE96Q6'A$$X@ZQY\^:G'Y7Q7$YW>M/L 'RW;263C,6H,H/@$M9&6K7+#>T!
M ;GGRG++=.O6"@?6I?)G=31SN)2/+$Q]/6UC 1\JR%8A!57(08B>D:L@G"93
M7N=!!\DSQ=XYB-;74X^I?Q?/Y82CA;P' IV'RVM%2,XD6@)2>D/.IB>V2F2
M5C)G,A:36U?!'U?1+)[+04,;F;<I1NT01^O#.J]UD4E[**)P8JEDB,E2'.RT
MQ.19T*KUI,VC"IK%<SDE:"+Q+D TC)Z;7?4Z_MF;^NS&V7T_X_W:,2:9O>-1
M@K9&@S*UV6OTF:P:)R=<H6"Y?:W1$[3FW*O;N!.Y>&,X6.;JA0)&_J/-%';4
M$7R1,Z5MAT[7D<W?.[=]S7!S4"?XQ^AF*#'@(RL2K/#,19ZA6-I-ULWN6=&
MNF"A/44:\41U?D=7CG2_$W>&QJXU-UQP[JI2B"KJJ&HQHZQ]H+3F$#17X+U+
MQN2L N^_!G4@MR>?&IJM]/:L!VB\//GTUS?O3O_^J:'#>//,IW,-'^"CO1-X
ME85=W,P.2MH$K+.FG"1H.B\@")=!L=JRU,622_LDY</T-+AB69_Y83ZK/D5^
M\>-OM#C>3D_/<4[*FWXY24OR-I9CO)% $BRZZ"V$1"9<Q21KYS%%ZR;G++55
MRK=.G#R>RL&X@\<A:,NUS2[5-8!MEU@KX^7J5FIFI@BEJGAX(7I- !*. 59D
MD#86$4OK(N&;M_<+H*[U/&LB] ' Y58Q?JVDGZ;Q!&_=;OX\>ZPH;4#-- F0
M:4LK5 0-%#P9R"5YSDIR4;4NONR"CWZ#D">&<.] &,!B>(7TYC2^.A4^.9O-
ME^-_KGW<$HJ0Y%,#R=*2;&O'OVAKI5\*.?GB-&N]:^\@IU_KVC]6[I;5-5+<
M('HS7 OI'5*D];&.RSPM)+^3Q0*7FZR]_EY#,*P5.9%I5GN2H 'EF8. /H)P
MRGHFF.:Z=;7F8VGLUY0.#J^=JG@0(-YDXK2\)65/OXSC9,WA8J0-;568)4CM
MZCAV^B-X9X%QA\$(Q5-J74:UFZ)^LSJ# VA#]0T0CF_&TT 2GGZI98T+VC!>
MC1=I=D'2'SDE-;<8P"9;!V"3#Q^4%(#2&\5)D-*VOH.Q+VW]]ML:.$0;J70
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
MEVU4.THFK45@N;:B4LJ#YRP URYD5YM<-9_5_#.:CK]?OOWYV]9$](Y6F7+
M/%N-!*B7EXV G)-@-MC@8_LKYGN3U_<M\X;8N7^]O!LE/0O#56?<CM?7O.I-
MR]FJ&0A.#^S<L^MI'5P/W9?V=D'?U?M.[KQOR^8IE+*TNPE@6,MAO"S@G12U
M5621H5AO[PYH;A'K[$]@@\#OYR_;6#F,%@M%)X!*4R!A*(9PY 6 ETB13!3:
MEM;'J(^CL/?@KR-L;0G_NM+;L[!X6]JB'V+JMCZFO8W[.;6-C-NV%]V<<Z.R
M7 9W><[-C02?6 &D\#\:IX.UK6W9+GHZF':P#?HV1X'U.#^8DD EM(3Z0(LN
M%6.X-TZJUD<'^U'6KZEJAI0]!A8<JY9G89'6H?('G%?3/)M^^DIJ.#@W=><Q
M726I=E';ZB OS*=$01WBO7K)3;U?D&B,4I 8(XPQ90EMR0!/,?-@R F7K1/J
M#]%RK"6Z^]R-JOF49<VN@@V!@[*526,91(Z8F#9!&MDQDP.Q-TUP<-?6M!'\
MLS OGR[B O_G@I[[^MN!Y9[W'M%!=<!.*EL5>=YYR4T]"F<JA:* "4UQO<@)
M?$0/6>F4;*C]@UMGOQ^BY?@AU;>?NU%-&$JT.=%F;(2J=WPEK9?HZU?<ZLP+
M-C^(?)"8O@<)-\#!_2'4+03_/$S*KA:R775^[JL#=%^=H',IT3NFP&FU*OXU
M$(5@@,@MQ^ *YM;A1W>=H%^$Q7A1QRO>>L&/]9\;!T-1<A9<K 7/M/YJ:M6Y
MFM9UO*0438FN]920_2@;;"?HQZ#D7L#57BD#N,!YJTG_75X",J*_6!"Y3@+0
M.D&L%PJ]99E"QT*VN?6DPEWT]'N!LR-8-5/  ,#T83Z>S2E(&,_R1TR3L%A<
M#XL]R?]]L>Z0]PH7:3X^7PW4$8E)':.&&(2OX4.FR($YD$4Y+9+STK:^(?Q8
M&ON=S=H1Z#I5U " ^+<ZKOCU8CD^"TM<C)3F:% Q"+S&OL9KH,!4@TE9*$N^
M*IGFQC"[34&_$U0[ M$10AX 1%9SONZUR[UK@&6.FC.603.L3%%$$NLL'&MU
M*-HIAMC:0.U%6+_#3[O:"INK9  X^TD__KO<)31:R)+!,Y%(?I:#2T9!CDI9
M*T.D==6\L.4Q%.Z%///,D->AD@8 P8T[F+_C\NLLWPIC+F^";7QH9(2)23 /
M%,G4#E@DSQ!<@!BS2%)9[[!U[NNQ-.X%0_O,8-BIH@8 Q&V'H>NU-7+1*YNE
MA<*8 25]@I!JM3ZY#NBTB8:UMGL/4[,7N-PS U<CX0\ 1A2R("V!VM/V7O9%
MRH(*#20G!'%B. F(DZA\T%E*IV5I[:\]3,U>,/+/#$:-A#\ &-%.G[!N]E4C
M'\>+?ZQ'F]2O1F1.I8UUXJ1!1@R@!U\R!Z%C\EXFG6UK<[2#G/WRJ>R9(:F5
M_ < I3K_84H?N9<-MCXK'BU"TC5OHE0&5W( LJLA:)7J^FA^>V8[+?N!Z+EE
MY9M(?@ (>K#%_KW8@P5->S-MTRS7V$,Z")@S2,859AX%^O8IT_UHVP]ASRU!
MWXEF!H"X'3W/KWYTZ1[J&*VCX*+VD%3$713@I0P@>"X^4=!;6.N[1GL3MQ_F
MGEM^OAO=# !T;\_.PWA>5\_I_-5X<3Y;A,EIJ0VSWU% F]<LOIVFR46M/;C+
M^_83UU L"\ID\#Z0VYF3)D%GDD,R/+-D2VI>J=,!&_L!^;F=$?2M[QXA/X[G
MH]/E5YR_&X<XGJR:+-UCA:,UN8YW=2J JLTS?:B<U>)OSS02GS^I MKC-?M!
MZ[F<%K26ZP"LXDG^1A[&>$$B>CE;W#_RB)YKY40 ID7MK.K)W$OZIU ^,2UC
M'5;7NKAI-TG[0>JY'0.TU$//EN?5Y2M/"_W]$#^A8(@4)H%9702.R8!G3H,E
M]HP3/*6[;2RVFI]]WK4?8)Y+PKX3"0_ $*T[RZ];RM]EQ?GH:7,U@,XC*.(
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
MBRWRQ<5B/,7%@L0<Q]-PG.._XV'M-\5]*6^T&VY[W37L4C)9)N%!8[V E[B
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
MV4K:78V!\PPYX[Z4#XVB5GKH %+O+Q>SZ45M$CK+[Z=_U:]N.%'6!ZZ!DYM
M-H&2Y!R8 ":)*+1ER=C6;PA/4S-NDO70@&JDA0[P]'I=5[VFGC,G[*K<@-6B
M%B\9.%>0)!,\\95X;CYNYBX%XV9-#XV; Z3= 5;^<1D6)!>\U:5ZDWM4Y?.I
M7/^%E>%HO>?2E=J,(3(25+'@70K@D%Q9QG+>TN?? 4N[4;@5UFQKK!W5UQM0
M92<%R$TF@K5:.1_!AH"@!&W@F(HF<U(9M,4P'EOGD>U*X[CV_)!XV1N:>RBO
M W#^:[[X-WW8[4&RUXQNPKG%"QEJO\JD$BCC-;A2&!1G5"K*2FR>UO@R5:<"
MP'U0,1]412//6UC?'YO^P3^O62&KYNLB7(>2:<_&)"1A0PM06G@(2;GJ0Z><
M4G AWXN[/MJF9;O5QO4KCP*F@40_,I@V@9?[^R&(I$N*!G2L';:$XA XRR!*
MM4-,UICY%NAYXN/']1J/!I<6PNW@AGN+\8)8N%A<5A?I*EBL!<N>7)@25'WM
MP@2QD(!015:,D0EUZQC$0RJV0I$[:;O^0-%W!YY;E<C1,1^2XV"9,:!*4A#J
M+(>4HQ*H4;C4NO734[2,:PH=JN-G(;.GP$>^E;[@;#I??,%T2>N^H?]/+ZY[
M9VP*[&R,P1H!6&,TRNH(7AL+&&24+DM'-]$6%]3+*_4$CGVU.1],M&/GF>%R
MTQWT:N,HKU(L"2096F3+UXTCHX7D;);,.)6WNY=>RC6[N^Q6$/$G>1$=*N1^
M\+'>-UPY98JPD NQKI 7"(S3#DHV.FL<(;Q%AM*#A4=,3SM$?8_#8 ]9]@.$
M5_F_+Y<7M\X[YH(R+%L@T[N:XTZ"#Y$#2SKS;!1/3;(5GR&A"W#LH]0G3HE#
M)#PZ4'Y,EZL&U+\MZ*+\#>G7_!E3[:.S:C]\-4SB'H/D'$K&D$.N3\S*(H/(
M&8*A [9.J@EEN[G9+T)H#^)&S(]L"*ZAM3*RQ;OE1?YQ.L,/)-'EQ!HKZ",2
M\::Q3@<KE3<RUTBRGCP&EUG#+LS7ZVYW4K&3M'4&UT,'[O@C Y2NI]->U(;\
MT[P>]_%JL:CIS:L<FC??ZI<?9J_.JW ^E2?^R75<E$^$=5'DXD!Z<B24+P'H
M&Q(DLUGG)((HK0?7'(FU[IM"[XG-)P9B]024#O;/F[#\]O[MAS>KD"[F*SXG
M6AA4.@@0@650 0MX9 &2#UY8)8.TK9/\'B6D^_YP;;!YN!)&ONU?Z.KS6_BY
M2D;"!0D*HPE>F@ ZBIIHQLE=\S)#(<LY9R]RX'Z+BWZ');MO?7,8BH940 <G
MU,.69+_BQ202 X(S1OO":U":[*%HB@>GO40AI"C-&P0\2DCW+2?:G%"'*Z$#
M)-4K^V)QU>IULTOFBQN6/M>A.[/P%2?9^)14U(!>U\XO%HDGLK8+8R79'*/7
MK6=2;TU<]^7AC>[$0935!PKO]D8@Y[]^@UCA$Z?H_.7& '-U%KRQ)+'B!#!R
M^TL0R239VLUXCI[NJPJ;8:V-2CJ UY.IX'\LL5R>?9P6G,28>&!.@558915J
M52XW((5"DP)MGMRZB]P69'6?UMP&;*T5M#?F?N BS@>?372+*YV<TT4*T)PY
M4)@X^$),YA2M* :++0..O'^2KN[3;MK@KKF*.CCL/IQ_#]-%W3QUQ._LZXJ[
MJUY[_PO/\OOY@GB;J"!,%'S5R-_5P:L9?"@%6)*2H0J*L]93B+8BK/MG]C;
M:Z^D#I#W2 KV=1#PS;KGXRS?-("<I$PG.)*OK2/68=."@4N!7"=#_^5%D)G:
M.CUL5QK[?PMI \A!=3?VN]O7KPO\&B[P3?C^')\3J9(S/&@P)9/O[D2=#1PY
M6$DP0AN9#=N$X;9=;SMLG>XSPV"R[^"L>Y7)5+R8+DF"[_ZJ[."$)2=%E ZB
M-+0C%+<0'#I@13 C,2:%K:_4AU1LAZG3?QXX4/X=(.CM>MFK&>CX9KZ\6-8
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
M.K)"4> (N>"\Q5@L4]RU'L4WXC/]]>/=707]!_.D%(O:60/6>=K(.B5P;G6
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
M\.&SA&V%.G/ZJ&NOI0[LAB?36 1MH>0MU&8OH)AS$-%DJ*/E2LG"BM@\:_B
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
M./D%\_3R_'>2RFTF8M16D6L 1=06!A95'2UIP$<=3$!9;&A=-? H(>.^6 R
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
MMGE(:]]<P.-!9A\%;Y,.N(NTNT ,.<YOYK-59?-E.*LB6NTF%%(;9C,(6X>
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
M*6NZ!BL0K4D@HT\2%1/!M<Z<>4C%V-=/0R4_&V/<6>(=8.::\!LW,6=KO-=
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
M90'!1(3(3>;9>I]$ZQQ/VR+CASF&Q<W\ZTJT[S_1"5^\2/2%^CQ0H<\L283
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
M/=IZ:1<L^R'"#XV!:!^(V6  $9PD0*2E>4$"%1%C22)8$095U'H9K9=V4NK
MUDN[(-QGX,2[;^49/2HMR+.BS==61]L2/@27-LIXAE8JU;J2] MJO=0X+&<_
MM71$L1:%.G\.J\_TQAOZR!_A;%/;UDNRV50IX$MU_[DG*\X5#H86^<QUELD?
MJJC6823J+L1C3^8=L%[K2!J\M$EQN:R:O?HD_0H2*/3-U<R8$B-Y1^!K#P,5
M"!."*8%&'2-Z,H>PZZGQ@%S=76%V.$%:4.*%39-?SO^@SR^67V>%99XJ"+62
M""AK>*TSJ,%X7D**+.<T0;;2>$&Z.[[M;R+LI_07QOSO5H/-B=A,2&E%T:$V
MOZO]S)%!3/4.32GI>+'9FF>S-6PDZCAEM9>Y,)(&+VQ2G"X7%[A<?ST]"X3)
ME3%Y41WY&9.8E/<>6+$:%(8(SB@++'BG$KT5TP2]$=L+UG%F:R]3I TICGQ[
MU!*0DXM-D8?S3^\PK/#]_-/G]4GY;77UU9D*A:LD/&2/KI9IKFKS&61&(8KW
M28LA5Y&3#;B[PGGC9D"_RGYA>\73_6%"D#K%6&H*@@#E,D(T->ZP*"98[;M^
M-ZZ_JSVC31.A([5FZV3O:$N2UDV$QO=]FTF6I5>F ..Y!O*7VN_0!! BL1RY
M=8FWMHMVHM^1NK>-H-]>T/9:MFO_;:=.E%\7Y^FV?S(+PG,>:V*'X!E4M)8@
MD0C.!IE\YI)CSX<T]PK5<RNV3E;1\61X0=;W=3?'U6GXNOG&^14\UX[\K<_/
MBL&H5'"@LW*U/G9M<. EL"P,[2N:L30D9O0H@Q]VX<6>S;1X'BP8:V!TMXV\
MOA;B8_CO;4R"(S6AT.2GU'Q!VFG!97+AK9)2Q!*\%A/4XVLLU; I\]>^)&[
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
M['TX$W0IKE+4O4O8A-E7O=/<62_Q4ZE&9NT=]TI6RAY9#%3]384?V1*P*8O
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
MG4H5!ZS(L!; M9N22*F*&/ J[Z\JL.\+XPO@4:=;.MDDMC0S3Z/N0SKYOZA
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
MXH5_]8$Z8HW \2"^H"9L52#UOTT@?49-.*SO[=,R+,-XXR2Z@N;-T^_&H,9
M&$E!6.569YQJ#[>(<V*_!&#<Y4[!A/"6O"^5=!-B(>NFI=#RN/.0"E&QU'6!
M/?L2=U\:E!<F1TA;SYKB6!OA%? \>@ 9DB&%R,86R"EDJ ON$0)Z,;1D[BO*
M\\!OO#7XG54"&'%5^&1%WH4D02(K1^@7NX:0SCC/!LDW/*[GJ!ZO.! 3IPU,
MN*\+][@&FY0'/NL-1/.33^_,6'^Z@? A6*X$ZN/A1A,\ \B)K8'<+&4&9ZZ"
M@HX'2B[I6]8B[PF)DJJYCN/"D.L72N<:J:FV#M_362K*LC$*^K/ RHNB=Q\9
MDB"&,84]Z%TJCKLZ\"<;=.CAS[*"7B^#5D-N9SR#DI_'/ A?%?QZE!E[PI2\
M U4><SSH7_WB)=K\4'U[MXG=9[)-]*>@L]"HSG,3I<I%>,[3% 'L"8QCA;K.
M5.-(7YTV=E;D_0L4F:;2.8"/%(*^1AI![4*B?E[(+H(8\ZZEO([_$XF>1AY]
M!$'U?9056>Q/05[^W.5]L^).IU3$$_UW*-2)MNVQ!(1&6:!GFYTQ\#NJN(&G
M^9KK&:8_BYV>6#T)<.6^)!Q_K,EG7.! "[-T]B@X2UZ*0Q!A2!^KH>Q;K/FV
M2!$?N$K>F+*,K#W;>TXE??MV052Y$X-9HXI>!Y_H$#?^Y+P$6#44/IF-M!H!
M5;^,#\H/ *;,C9#F2D\ 6\=#'1(B7X(OPNVK4(/5NO?HQ_[U .D^\IW9^5U6
MV;^/6 530[\HGEOH3?\XPBR?*S[IR<ROKA]T5$KO:^=TZB<84:E ;E%.XN<+
MS>5=A</#^D&W3=<5'*KMQ'3B\B9#W=]D:#BQVM:)ZMWFWJ/-S7KT:-O'Q$91
M?:^]_UEB/][6;;>^NK*=5OV@U=U(;,.O;UAC]*+->?:JTJY,!Y0AT6OE]RQ:
M1@9%R4-'!A_^_;G#WVPYPWCT!9?]!GU3T">T5JOJ+^',@%\NQ],L]3=?MLK4
M-Y-E9O%99FV= Y=/;I^542]V.IC&_>^:"QE+)F\8D4VRO++1,CVAZX^SHAO
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
M8O#O64B,U5OI99;/?#AOKO5G?/N'PL$_4$L#!!0    ( %B!5E:TM2+91 4
M %09   :    :6)P+3(P,C(Q,C,Q>&5X,S(R>&-F;RYH=&WM&=MNVS;T?5]Q
MZF)M D1W.W9L-T!C)UNP- T29\6>!DJB+:(RJ5)4'._K=TC*KA/7J5MT;3+4
M#P:IPW._\4C]9\.W@]%?%\>0J6D.%]='9Z<#:#B>]RX:>-YP-(3?1V_.H.GZ
M 8PDX2533'"2>][Q>0,:F5)%U_-FLYD[BUPA)][HTM.DFEXN1$G=5*6-P[Y^
M@O^4I(>_])\Y#@Q%4DTI5Y!(2A1-H2H9G\"[E);OP7'J4P-1S"6;9 I"/XS@
MG9#OV0VQ<,543@\7=/J>W?<]PZ0?BW1^V$_9#;#T58/%<9+X[78G:79(DU*_
MTXS:+=_O!#0BI-UI_1V@D!X>MSBEFN?T56/*N)-1S;_;#-UVJU"]&4M5U@U\
M_]>&.7K8'PNND)]$?+NT9-:(*7JK')*S">\:E1H6=0%.1"YD][EO?CT-<<9D
MRO)Y]^6(36D)YW0&EV)*^,N]$MW@E%2RL3U8LG\HRH3BF>W,BMQ&.CGC=*%"
M$&JACV\S%C,%4>B&=R5>59S(">JN1(%82'9%]@2-3>5_+GSSD\*?GE^-7I^=
M'0_AZ/KT;'AZ_AM<7+X=7@]&5WMP>CYPGYQ& RH5&[.$Z*R"2_JA8A*S(9[#
M9973%\^#?;\71,0)FCOQKMT*63]NI?;Q1J4?BY)B#"JC<$632F+Y0,+'MTE&
M^(3"ZT0!@H.#J F$IX]>%=1!>VKAF):OI1]DI$"18#_2NY$N1!!TP*K]Z%6Z
MYDP7X"N%=;C$DIMN%OE>%OT@@4<82\F=O"FI@K&0*H.8YF(&K,2%[B=E%4^9
MTNHQ#HG@W+H/9@S/ZI@\Y:4B>8X'CBJ6IQKG0HJT2E2)%84G+KSFO"(YIF:!
M# !Q3X2<UO[WG3_L"ID;<G-*)%">(KTA3>@TIG6R1L&>[F$A[.AC+YYWPM#O
M69IF$_1V84&DJ&2!K5/'3R*F13[74AF)'Z@)J[!%8:AAVV7?JF"K!Y;B87K"
MEX<_K(?7UE7Z!\77&X;:TQQ&+KQA&!MRSRAR?(L65.R&PI\LH1@FM&2IOL)H
MPPPR1L=PPCCA"<-P>3O&X-28:(7/QMC>(IQ1!Y41A?R$81G3TC@HPX!^S\4,
M:4S0R:U.;^M&5Y!4<W1R.E;=:'_1^AC7HG>=H//#S!PLX^#[<[]KEL!W6]H,
MNK#4>3ZN\GQNTT][95DOI.W0^LI9:L_<2X@=L@N8BT%K)]V%[1(/W7G0>[#W
M/1V7AH_2I8QC99W:3H$]0!'$- U!K?B;,(D.+S"IM6OW-!AS%A -A<&$1D!!
M3<9J+"13BIRE9G09+[,>'Z=F/C(U 5&JW(:)**@T I1;%82U4/C&!MW?RILV
MJ+<)R]:&&[4B,?:"^GPL9$JE@\+GI"AI=['HI:PL<C+O,FYD,$B]FGHLE!)3
MP^!&U\B$Y#43P\^"ZZGLX,#MM"(]F"F<QE2Z8%S/;*Z9V3R5KL-PNO,/@HU@
MW]T,>XAL$+C[4?NKR#X,:T7A-Q<6;1 V-X-7R7K&OM;&Z,6R(/Q5(VHL$.I$
M[(;%+01W(T/GYGU'6A]^_XIE9OBASF#34>&$QK(B<@YA:.YJT3+R:WM\F:IF
MR']4NA[-[UX=ODJM1^?!>U7J_Z047L>;[5YI_F'M5GI'Y2U3TM>:-[8RTQ<<
M?3H6W2),ZC9E;EL%BJG;/"SD>TH:_PR8GW7EOE++&=9JIP=9NUI.LW:+UU>[
M,'.M72Z'6[NM)]SUH/+,!6[SA;&^TGV<4C[Q]ORA-^LK%.^]G"^$_3K1E30G
M6LNUU_4?D]S(X']$(3%F>J7643[SAK_^M]\;S)>/PW\!4$L! A0#%     @
M6(%65HV[9PP3? 0 JQ0P !               ( !     &EB<"TR,#(R,3(S
M,2YH=&U02P$"% ,4    " !8@5964KYO5*8<   34P$ $
M@ %!? 0 :6)P+3(P,C(Q,C,Q+GAS9%!+ 0(4 Q0    ( %B!5E;B/P>LIC(
M ! - @ 4              "  169! !I8G M,C R,C$R,S%?8V%L+GAM;%!+
M 0(4 Q0    ( %B!5E:;$GD+FZ4  *=0!P 4              "  >W+! !I
M8G M,C R,C$R,S%?9&5F+GAM;%!+ 0(4 Q0    ( %B!5E:E(K9YZAT! *U7
M 0 3              "  ;IQ!0!I8G M,C R,C$R,S%?9S$N:G!G4$L! A0#
M%     @ 6(%65JDQ\B(CE@$ $YL0 !0              ( !U8\& &EB<"TR
M,#(R,3(S,5]L86(N>&UL4$L! A0#%     @ 6(%65D;;N'GE_    (0+ !0
M             ( !*B8( &EB<"TR,#(R,3(S,5]P<F4N>&UL4$L! A0#%
M  @ 6(%65L&"QA.)#   0D8! !X              ( !02,) &EB<"TR,#(R
M,3(S,7AE>#(Q,7AS:6=N:69I+FAT;5!+ 0(4 Q0    ( %B!5E8JQ(#5$@,
M ,<)   >              "  08P"0!I8G M,C R,C$R,S%X97@R,S%X9&5L
M;VET="YH=&U02P$"% ,4    " !8@596^93BA&$(   '+   '@
M    @ %4,PD :6)P+3(P,C(Q,C,Q>&5X,S$Q>&-E;V-E<G0N:'1M4$L! A0#
M%     @ 6(%65E?0"()C"   !"P  !X              ( !\3L) &EB<"TR
M,#(R,3(S,7AE>#,Q,GAC9F]C97)T+FAT;5!+ 0(4 Q0    ( %B!5E;\V&._
M&P4  *L8   :              "  9!$"0!I8G M,C R,C$R,S%X97@S,C%X
M8V5O+FAT;5!+ 0(4 Q0    ( %B!5E:TM2+91 4  %09   :
M  "  >-)"0!I8G M,C R,C$R,S%X97@S,C)X8V9O+FAT;5!+!08     #0 -
+ (4#  !?3PD    !

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